Overview
Comment: | Now vectorises 0 and 1 junctions !! |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | origin/master | trunk |
Files: | files | file ages | folders |
SHA3-256: |
869df7d510ac6ceb93764964d8eb265b |
User & Date: | gawthrop@users.sourceforge.net on 1999-10-18 05:16:51 |
Other Links: | branch diff | manifest | tags |
Context
1999-10-18
| ||
07:36:09 | Initial revision check-in: 3b8343ded9 user: gawthrop@users.sourceforge.net tags: origin/master, trunk | |
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 | |
Changes
Modified mttroot/mtt/bin/trans/m/write_abg.m from [9c559cdd74] to [ed7dfd3c25].
|
| | > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | function write_abg(system_name,bonds,connections,n_vector_bonds); ############################################################### ## Version control history ############################################################### ## $Id$ ## $Log$ ## Revision 1.6 1998/09/02 11:35:20 peterg ## Removed port.index field ## ## Revision 1.5 1998/09/02 10:30:30 peterg ## Now writes out list of ports ans list of subsystems. ## These ordereded lists determine the order of processing of ports ans ## subsystems. ## ## Revision 1.4 1998/08/26 12:45:38 peterg ## Just prefix ports (comps can't start with numeral) |
︙ | ︙ | |||
41 42 43 44 45 46 47 48 49 | fprintf(fid,"# Generated by MTT on %s",ctime(time)); fprintf(fid,"# The file is in Octave format\n"); fprintf(fid,"\n# Subsystems and Ports\n"); i_port=0; SubsystemList = ""; PortList =""; for i=1:N eval(["[comp_type, name, cr, arg, repetitions] = ", system_name, "_cmp(i);"]); if index(name,"[")==0 # Not a port | > > > > > > > > > > > > > > > > > > > > | | | | | > | | < | < | | > | | | > | | | > > > > > > > | > | < | | | | | < < | | | | < | 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 | fprintf(fid,"# Generated by MTT on %s",ctime(time)); fprintf(fid,"# The file is in Octave format\n"); fprintf(fid,"\n# Subsystems and Ports\n"); i_port=0; SubsystemList = ""; PortList =""; for i=1:N eval(["[comp_type, name, cr, arg, repetitions] = ", system_name, "_cmp(i);"]); c = nozeros(connections(i,:));# Connections to this component m = length(c); # Number of connections ## Vectorise junctions? n_bonds = n_vector_bonds(i); if strcmp(comp_type,"0")||strcmp(comp_type,"1") n_extra = m/n_bonds; m_extra = n_bonds; else n_extra = 1; m_extra = m; endif if index(name,"[")==0 # Not a port for i_extra = 1:n_extra; if i_extra>1 # Extras new_name = sprintf("%sv%i", name,i_extra); else new_name = name; endif SubsystemList = [SubsystemList; new_name]; fprintf(fid,"\n# Component %s\n", new_name); fprintf(fid,Sformat,system_name,new_name,"type",comp_type); fprintf(fid,Sformat,system_name,new_name,"cr",cr); fprintf(fid,Sformat,system_name,new_name,"arg",arg); fprintf(fid,Iformat,system_name,new_name,"repetitions",repetitions); fprintf(fid,Iformat,system_name,new_name,"status",-1); ##Connections fprintf(fid,Cformat,system_name,new_name); for j=1:m_extra k = j+(i_extra-1)*m_extra; fprintf(fid,"%i ", c(k) ); endfor; fprintf(fid,"];\n"); endfor else # Its a port name=name(2:length(name)-1); # Strip [] ch=name(1); # First char of name if (ch>="0")&&(ch<="9") # Its a numeral name=["mttp",name]; # prefix by mttp endif; for i_port=1:m if m>1 # Index the port name name_i = sprintf("%s_%i",name,i_port); else name_i = name; # Leave it alone endif; PortList = [PortList; name_i]; # Update port list fprintf(fid,"\n# Port %s\n", name_i); fprintf(fid,PSformat,system_name,name_i,"type",comp_type); fprintf(fid,PSformat,system_name,name_i,"cr",cr); fprintf(fid,PSformat,system_name,name_i,"arg",arg); fprintf(fid,PIformat,system_name,name_i,"repetitions",repetitions); fprintf(fid,PIformat,system_name,name_i,"status",-1); fprintf(fid,PCformat,system_name,name_i); fprintf(fid,"%i ", c(i_port)); fprintf(fid,"];\n"); endfor; endif; endfor; [N,M]=size(PortList); if N>0 # Put name in list fprintf(fid,"\n# Ordered list of Port names\n"); for i=1:N |
︙ | ︙ |