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.34 2000/05/16 18:56:14 peterg
## *** empty log message ***
##
## Revision 1.33 2000/05/11 19:33:18 peterg
## Uniform version for _sim.m
##
## Revision 1.32 2000/05/11 08:30:00 peterg
|
>
>
>
|
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.35 2000/05/18 18:59:40 peterg
## Removed the First time stuff
##
## Revision 1.34 2000/05/16 18:56:14 peterg
## *** empty log message ***
##
## Revision 1.33 2000/05/11 19:33:18 peterg
## Uniform version for _sim.m
##
## Revision 1.32 2000/05/11 08:30:00 peterg
|
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
|
# Do the globals
#sympar2global_txt2m $1 >> $1_ode2odes.m
lang_header $1 ode2odes m 'x,par,simpar' '[Y,X,t]' > $1_ode2odes.m
cat >> $1_ode2odes.m <<EOF
global MTT_data;
if nargin<1
x = $1_state;
[x] = mtt_state_update(x);
endif
if nargin<2
par = $1_numpar;
[par] = mtt_numpar_update(par);
endif
if nargin<3
simpar = $1_simpar;
[simpar.dt] = mtt_simpar_update;
endif
## Initialise
t = 0.0;
ilast = round(simpar.last/simpar.dt)+1; # Total number of steps
[u] = zero_input(1); # Zero the input
|
|
|
|
|
|
|
|
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
|
# Do the globals
#sympar2global_txt2m $1 >> $1_ode2odes.m
lang_header $1 ode2odes m 'x,par,simpar' '[Y,X,t]' > $1_ode2odes.m
cat >> $1_ode2odes.m <<EOF
global MTT_data;
if nargin<3
simpar = $1_simpar;
[simpar.dt] = mtt_simpar_update;
endif
if nargin<2
par = $1_numpar;
[par] = mtt_numpar_update(par);
endif
if nargin<1
[x] = $1_state(par);
[x] = mtt_state_update(x);
endif
## Initialise
t = 0.0;
ilast = round(simpar.last/simpar.dt)+1; # Total number of steps
[u] = zero_input(1); # Zero the input
|