1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
#! /bin/sh
######################################
##### Model Transformation Tools #####
######################################
###############################################################
## Version control history
###############################################################
## $Id$
## $Log$
## Revision 1.29 2000/04/07 19:10:57 peterg
## *** empty log message ***
##
## Revision 1.28 1999/12/08 05:56:52 peterg
## Reordered the writing of the input and output.
## Note that last value now discarded.
##
|
>
>
>
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
#! /bin/sh
######################################
##### Model Transformation Tools #####
######################################
###############################################################
## Version control history
###############################################################
## $Id$
## $Log$
## Revision 1.30 2000/04/18 11:24:19 peterg
## Removed _numpar.
##
## Revision 1.29 2000/04/07 19:10:57 peterg
## *** empty log message ***
##
## Revision 1.28 1999/12/08 05:56:52 peterg
## Reordered the writing of the input and output.
## Note that last value now discarded.
##
|
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
|
## $1_numpar; # Read in parameters
MTTilast = round(mttlast/mttdt); # Total number of steps
#Initialise
MTTt = 0.0;
[MTTu] = zero_input($Nu); # Zero the input
[MTTx] = $1_state; # Read in initial state
#[mttAA] = zero_matrix($Nx); # Zero the A matrix
#[mttAAx] = zero_vector($Nx); # Zero the AAx vector
#if $Nx>0
# [MTTx] = $1_switch(MTTx); # Switches
#endif;
|
<
>
|
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
|
## $1_numpar; # Read in parameters
MTTilast = round(mttlast/mttdt); # Total number of steps
#Initialise
MTTt = 0.0;
[MTTu] = zero_input($Nu); # Zero the input
[MTTx] = $1_state; # Read in initial state
[MTTpar] = $1_numpar; # Read in initial state
#[mttAA] = zero_matrix($Nx); # Zero the A matrix
#[mttAAx] = zero_vector($Nx); # Zero the AAx vector
#if $Nx>0
# [MTTx] = $1_switch(MTTx); # Switches
#endif;
|
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
|
EOF
fi
if [ "$method" = "implicit" ]; then
cat << EOF >> $1_ode2odes.m
# if mttmethod==2 # Implicit
[MTTdx] = $1_cse(MTTx,MTTu,MTTt,MTTpar); # State derivative
[mttAA,mttAAx] = $1_smx(MTTx,MTTu,mttdt,MTTpar); # (I-Adt) and (I-Adt)x
[MTTopen] = $1_switchopen(MTTx); # Open switches
[MTTx] = mtt_implicit(MTTx,MTTdx,mttAA,mttAAx,mttdt,$Nx,MTTopen); # Implicit update
MTTt = MTTt + mttdt;
# endif;
EOF
fi
|
|
>
|
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
|
EOF
fi
if [ "$method" = "implicit" ]; then
cat << EOF >> $1_ode2odes.m
# if mttmethod==2 # Implicit
[MTTdx] = $1_cse(MTTx,MTTu,MTTt,MTTpar); # State derivative
[mttAA] = $1_smxa(MTTx,MTTu,mttdt,MTTpar); # (I-Adt) and (I-Adt)x
[mttAAx] = $1_smxax(MTTx,MTTu,mttdt,MTTpar); # (I-Adt) and (I-Adt)x
[MTTopen] = $1_switchopen(MTTx); # Open switches
[MTTx] = mtt_implicit(MTTx,MTTdx,mttAA,mttAAx,mttdt,$Nx,MTTopen); # Implicit update
MTTt = MTTt + mttdt;
# endif;
EOF
fi
|