︙ | | | ︙ | |
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
# Copyright (C) 2000 by Peter J. Gawthrop
###############################################################
## Version control history
###############################################################
## $Id$
## $Log$
## Revision 1.29 2001/03/27 13:10:23 geraint
## Improved determination of Octave version.
##
## Revision 1.28 2001/02/17 03:48:17 geraint
## Use assignment LHS to gather tmp variable names.
## Prevents collection of long expressions, eg: tmp34*(tmp75
##
|
>
>
>
|
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
# Copyright (C) 2000 by Peter J. Gawthrop
###############################################################
## Version control history
###############################################################
## $Id$
## $Log$
## Revision 1.30 2001/03/30 15:13:58 gawthrop
## Rationalised simulation modes to each return mtt_data
##
## Revision 1.29 2001/03/27 13:10:23 geraint
## Improved determination of Octave version.
##
## Revision 1.28 2001/02/17 03:48:17 geraint
## Use assignment LHS to gather tmp variable names.
## Prevents collection of long expressions, eg: tmp34*(tmp75
##
|
︙ | | | ︙ | |
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
|
###############################################################
# Arguments
system=$1
rep=$2
language=$3
fun_name=${1}_${2}
#args=$4
#output=$5
#extras=$6
# Find system constants
Nx=`mtt_getsize $system x` # States
Nxx=`mtt_getsize $system xx` # States x States
Nu=`mtt_getsize $system u` # Inputs
Ny=`mtt_getsize $system y` # Outputs
Nyz=`mtt_getsize $system yz` # Zero outputs
|
|
>
|
>
>
|
>
|
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
|
###############################################################
# Arguments
system=$1
rep=$2
language=$3
fun_name=${1}_${2}
other=$4 # Anything else eg stdin
if [ -z "$system" ]; then
echo 'Usage: mtt_header sys rep lang [stdin]'
exit
fi
# Find system constants
Nx=`mtt_getsize $system x` # States
Nxx=`mtt_getsize $system xx` # States x States
Nu=`mtt_getsize $system u` # Inputs
Ny=`mtt_getsize $system y` # Outputs
Nyz=`mtt_getsize $system yz` # Zero outputs
|
︙ | | | ︙ | |
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
|
inputs=no;
parameters=yes;
output='mtta,mttb,mttc,mttd,mtte'
args=mttpar
zeromatrices='a b c d e';
;;
input)
states=yes;
inputs=no;
parameters=yes;
output=mttu
args=$inputeqnargs
declareinputs=yes
;;
logic)
states=no;
inputs=no;
parameters=yes;
output=mttopen
args=$eqnargs
|
<
<
>
>
>
>
>
>
>
|
>
|
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
|
inputs=no;
parameters=yes;
output='mtta,mttb,mttc,mttd,mtte'
args=mttpar
zeromatrices='a b c d e';
;;
input)
inputs=no;
output=mttu
args=$inputeqnargs
if [ "$other" = "stdin" ]; then
states=no;
parameters=no;
declareinputs=no;
else
states=yes;
parameters=yes;
declareinputs=yes
fi
;;
logic)
states=no;
inputs=no;
parameters=yes;
output=mttopen
args=$eqnargs
|
︙ | | | ︙ | |
263
264
265
266
267
268
269
270
271
272
273
274
275
276
|
states=no;
inputs=no;
parameters=yes;
output=mttx
args=mttpar
declarestates=yes
;;
*)
echo Representation $rep not supported - sorry; exit 1
esac
## Sort out parentheses
if [ -n "$args" ]; then
Args='('$args')'
|
>
>
>
>
>
>
>
|
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
|
states=no;
inputs=no;
parameters=yes;
output=mttx
args=mttpar
declarestates=yes
;;
ssim)
states=no;
inputs=no;
parameters=no;
output='y,y_par'
args='x0,par,simpar,u,index'
;;
*)
echo Representation $rep not supported - sorry; exit 1
esac
## Sort out parentheses
if [ -n "$args" ]; then
Args='('$args')'
|
︙ | | | ︙ | |
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
|
m)
Lc='##';
Rc='';
Lb='(';
Rb=')';
function="function"
declaration="$Output$1_$rep$Args;"
noglobals=true; # Fudge to make mtt_m2p work
start='## BEGIN Code'
finish='## END Code'
var_declaration=
declarestates=no
declareinputs=no
declareswitches=no
;;
|
>
|
>
|
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
|
m)
Lc='##';
Rc='';
Lb='(';
Rb=')';
function="function"
declaration="$Output$1_$rep$Args;"
if [ "$other" != "stdin" ]; then
noglobals=true; # Fudge to make mtt_m2p work
fi
start='## BEGIN Code'
finish='## END Code'
var_declaration=
declarestates=no
declareinputs=no
declareswitches=no
;;
|
︙ | | | ︙ | |