Overview
Comment: | Now computes n_vector_bonds -- number apparent (maybe vector) bonds per component. Neeeded to vectorise junctions. |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | origin/master | trunk |
Files: | files | file ages | folders |
SHA3-256: |
a4fc0123b6a987852be8249709a9d7ea |
User & Date: | gawthrop@users.sourceforge.net on 1999-10-18 04:08:46 |
Other Links: | branch diff | manifest | tags |
Context
1999-10-18
| ||
05:16:51 | Now vectorises 0 and 1 junctions !! check-in: 869df7d510 user: gawthrop@users.sourceforge.net tags: origin/master, trunk | |
04:08:46 |
Now computes n_vector_bonds -- number apparent (maybe vector) bonds per component. Neeeded to vectorise junctions. check-in: a4fc0123b6 user: gawthrop@users.sourceforge.net tags: origin/master, trunk | |
1999-10-15
| ||
07:34:23 | Initial revision check-in: 09d62fb574 user: gawthrop@users.sourceforge.net tags: origin/master, trunk | |
Changes
Modified mttroot/mtt/bin/trans/m/rbg2abg.m from [55c42237ba] to [c4467a3093].
|
| | > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | function [bonds,components,n_vector_bonds] = rbg2abg(name,rbonds,rstrokes,rcomponents,\ port_coord,port_name,\ infofile,errorfile) ## ############################################################### ## ## Version control history ## ############################################################### ## ## $Id$ ## ## $Log$ ## ## Revision 1.42 1999/08/25 21:45:03 peterg ## ## Spurious start to vector 0 and 1 ## ## ## ## Revision 1.41 1999/08/19 21:12:33 peterg ## ## Tidied and started implementaation of vector junctions ## ## ## ## Revision 1.40 1999/08/19 05:39:55 peterg ## ## Put into octave format ## ## ## ## Revision 1.39 1999/08/19 05:22:16 peterg |
︙ | ︙ | |||
248 249 250 251 252 253 254 | # n_name = length(comp_type); # if n_name>1 # n_vector = str2num(comp_type(2:n_name)); # endif # endif # n_vector | | | | | | 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 | # n_name = length(comp_type); # if n_name>1 # n_vector = str2num(comp_type(2:n_name)); # endif # endif # n_vector # ## Create scalar versions of vector components # for new_comp=2:n_vector # i_vector++; # endfor ## There are n_comp_bonds bonds on this component with corresponding index [index,n_comp_bonds] = getindex(comp_near_bond,i); if index(1,1)==0 mtt_error(sprintf("Component %s (%s) has no bonds", comp_name, comp_type),errorfile); |
︙ | ︙ | |||
412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 | endfor endif bonds = causality; ## Now expand vector ports [n_bonds,junk] = size(bonds); n_ports = length(port_bond); n_exp_ports=n_ports; exp_port_name=""; exp_port_bond = []; ##exp_comps = []; for i=1:n_ports | > > > > > > > | 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 | endfor endif bonds = causality; ## Find number of bonds on each component BEFORE vectorisation for i=1:n_components n_vector_bonds(i) = length(nozeros(components(i,:))) endfor ## Now expand vector ports disp("Expanding vector ports"); [n_bonds,junk] = size(bonds); n_ports = length(port_bond); n_exp_ports=n_ports; exp_port_name=""; exp_port_bond = []; ##exp_comps = []; for i=1:n_ports |
︙ | ︙ | |||
437 438 439 440 441 442 443 | [other_bond_index,n_other] = getindex(port_bond,-signed_bond_index); if n_other == 1 other_port_name = port_name(other_bond_index,:); [other_subport,n_other_subports] = split_port(other_port_name, ','); if n_other_subports~=n_subports mtt_error(['Vector ports ', port_name_i, ' and ', other_port_name, 'are not compatible'],errorfile); end | | | | 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 | [other_bond_index,n_other] = getindex(port_bond,-signed_bond_index); if n_other == 1 other_port_name = port_name(other_bond_index,:); [other_subport,n_other_subports] = split_port(other_port_name, ','); if n_other_subports~=n_subports mtt_error(['Vector ports ', port_name_i, ' and ', other_port_name, 'are not compatible'],errorfile); end else # No explicit matching vector port mtt_error(['Vector port ', port_name_i, ' has no matching port'], errorfile); endif if other_bond_index>i ##then its not been done yet mtt_info(["Vector port: ", port_name_i],infofile); mtt_info(["matching: ", other_port_name],infofile); ## Remove sign info. |
︙ | ︙ | |||
505 506 507 508 509 510 511 | for i = 1:n_components disp('-----------------'); ##Get component type eval(['[comp_type, comp_name] = ', name, '_cmp(i)']); ##Convert junction names | | < | < | > > > | 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 | for i = 1:n_components disp('-----------------'); ##Get component type eval(['[comp_type, comp_name] = ', name, '_cmp(i)']); ##Convert junction names if comp_type(1)=='0' # Zero junction comp_type = 'zero'; isa_junction = 1; elseif comp_type(1)=='1' # One junction comp_type = 'one'; isa_junction = 1; else isa_junction = 0; endif ## Find the (unsorted) bond list on this component signed_bond_list = nozeros(components(i,:)); n_comp_bonds = length(signed_bond_list); direction = sign(signed_bond_list); |
︙ | ︙ | |||
625 626 627 628 629 630 631 632 633 634 635 636 637 638 | mtt_error(['Component ', comp_name, ' (', comp_type, ') has an unrecognised port: ', name_k], errorfile); else components(i,k) = signed_bond_list(j); endif endfor endif endfor endfunction | > | 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 | mtt_error(['Component ', comp_name, ' (', comp_type, ') has an unrecognised port: ', name_k], errorfile); else components(i,k) = signed_bond_list(j); endif endfor endif endfor endfunction |
︙ | ︙ |