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
|
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
|
+
-
-
+
+
+
+
-
+
|
rm -f $1_abg.m
#Inform user
echo Creating $1_abg.m
# Use matrix manipulation to accomplish the transformation
$MATRIX > rbg2abg_m.log 2>mtt_error.txt << EOF
name = '$1'
infofile = 'mtt_info.txt';
%Convert from the fig version of the bonds to a structured version
[rbonds,rstrokes,rcomponents,rports,n_ports] = $1_rbg;
[bonds,components] = rbg2abg(rbonds,rstrokes,rcomponents,rports,infofile);
[rbonds,rstrokes,rcomponents,port_coord,port_name,port_list] = $1_rbg;
[n_ports, junk] = size(port_list);
[bonds,components] = rbg2abg(name,rbonds,rstrokes,rcomponents,port_coord,port_name,infofile);
%Write the function m-file for the causal bond graph
filename = '$1_abg.m';
filenum = fopen(filename,'w');
c = '%';
fprintf(filenum, 'function [bonds,components,n_ports] = $1_abg\n');
fprintf(filenum, '%s [bonds,components] = $1_abg\n', c);
fprintf(filenum, '%s [bonds,components,n_ports] = $1_abg\n', c);
fprintf(filenum, '%s Acausal bond graph created by MTT on %s\n\n', ...
c, date);
mat2mfile(bonds, 'bonds', filenum);
mat2mfile(components, 'components', filenum);
fprintf(filenum, 'n_ports = %1.0f;\n', n_ports);
EOF
|