︙ | | |
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
+
+
+
|
# Copyright (C) 2000 by Peter J. Gawthrop
###############################################################
## Version control history
###############################################################
## $Header$
## $Log$
## Revision 1.293.2.6 2001/03/03 06:50:38 geraint
## Added #SUMMARY lines for ode2odes.
##
## Revision 1.293.2.5 2001/03/03 00:27:14 geraint
## Fixed ar options to work with GNU ar. Allow mtt to create dependencies for mtt_%.cc when making mtt_%.oct.
##
## Revision 1.293.2.4 2001/03/02 00:45:21 geraint
## Separated Euler and Implicit methods in .cc code and dependencies.
##
## Revision 1.293.2.3 2001/03/01 05:05:53 geraint
|
︙ | | |
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
|
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
|
+
+
+
+
-
+
|
integration_method=euler;
mtt_switches="$mtt_switches euler";
;;
implicit)
integration_method=implicit;
mtt_switches="$mtt_switches implicit";
;;
rk4)
integration_method=rk4;
mtt_switches="$mtt_switches rk4";
;;
*)
echo $1 is an unknown integration method - use euler or implicit;
echo $1 is an unknown integration method - use euler, rk4 or implicit;
exit;;
esac;;
-s )
mtt_switches="$mtt_switches $1";
sensitivity=sensitivity ;;
-ss )
mtt_switches="$mtt_switches $1";
|
︙ | | |
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
|
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
|
-
+
|
echo ' -D debug -- leave log files etc'
echo ' -I prints more information'
echo ' -abg start at abg.m representation'
echo ' -c c-code generation'
echo ' -d <dir> use directory <dir>'
echo ' -dc Maximise derivative (not integral) causality'
echo ' -dc Maximise derivative (not integral) causality'
echo ' -i <implicit|euler> Use implicit or euler integration'
echo ' -i <implicit|euler|rk4> Use implicit, euler or rk4 integration'
echo ' -o ode is same as dae'
echo ' -oct use oct files in place of m files where appropriate'
echo ' -opt optimise code generation'
echo ' -p print environment variables'
echo ' -partition partition hierachical system'
echo ' -r reset time stamp on representation'
echo ' -s try to generate sensitivity BG (experimental)'
|
︙ | | |
2092
2093
2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
|
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117
2118
|
-
+
-
+
-
-
+
+
|
@echo > /dev/null
$1_ode2odes_common.o : $1_input.o $1_logic.o $1_numpar.o $1_simpar.o $1_state.o
@echo "Creating $1_ode2odes_common.o"
ar -cr \$@ \$^
$1_ode2odes_common.oct : $1_input.oct $1_logic.oct $1_numpar.oct $1_simpar.oct $1_state.oct
@echo > /dev/null
$1_ode2odes_euler.m : $1_ode.m $1_odeo.m
$1_ode2odes_euler.m $1_ode2odes_rk4.m : $1_ode.m $1_odeo.m
@echo > /dev/null
$1_ode2odes_euler.cc : $1_ode.cc $1_odeo.cc
$1_ode2odes_euler.cc $1_ode2odes_rk4.cc : $1_ode.cc $1_odeo.cc
@echo > /dev/null
$1_ode2odes_euler.o : $1_ode.o $1_odeo.o mtt_euler.o
@echo "Creating $1_ode2odes_euler.o"
$1_ode2odes_euler.o $1_ode2odes_rk4.o : $1_ode.o $1_odeo.o mtt_euler.o
@echo "Creating \$@"
ar -cr \$@ \$^
$1_ode2odes_euler.oct : $1_ode.oct $1_odeo.oct mtt_euler.oct
@echo > /dev/null
$1_ode2odes_implicit.m : $1_cseo.m $1_csex.m $1_smxa.m $1_smxax.m
@echo > /dev/null
$1_ode2odes_implicit.cc : $1_cseo.cc $1_csex.cc $1_smxa.cc $1_smxax.cc
|
︙ | | |
2411
2412
2413
2414
2415
2416
2417
2418
2419
2420
2421
2422
2423
2424
2425
|
2418
2419
2420
2421
2422
2423
2424
2425
2426
2427
2428
2429
2430
2431
2432
|
-
+
|
ifeq ($using_oct,yes)
touch $1_ode2odes.m # Create a dummy which wont' be used
mtt $mtt_switches -q -u $1 ode2odes oct
else
make_ode2odes $1 m $integration_method
endif
endif
ifeq ($integration_method,euler)
ifneq ($integration_method,implicit)
$1_ode2odes.m : $1_def.r $1_sympars.txt\
$1_simpar.m $1_numpar.m $1_state.m $1_input.m \
$1_ode.m $1_odeo.m $1_logic.m
ifeq ($using_oct,yes)
echo "*** Warning: Shouldn't be here! Creating dummy $1_ode2odes.m"
touch $1_ode2odes.m # Create a dummy which wont' be used
mtt $mtt_switches -q -u $1 ode2odes oct
|
︙ | | |
2494
2495
2496
2497
2498
2499
2500
2501
2502
2503
2504
2505
2506
2507
2508
|
2501
2502
2503
2504
2505
2506
2507
2508
2509
2510
2511
2512
2513
2514
2515
|
-
+
|
ifeq ($integration_method,implicit)
$1_ode2odes.p : $1_ode2odes.m $1_def.r $1_smxa.p $1_smxax.p\
$1_simpar.p $1_numpar.p $1_state.p $1_input.p \
$1_csex.p $1_cseo.p $1_logic.p
mtt_m2p $1_ode2odes.m $integration_method $stdin
endif
ifeq ($integration_method,euler)
ifneq ($integration_method,implicit)
$1_ode2odes.p : $1_ode2odes.m $1_def.r\
$1_simpar.p $1_numpar.p $1_state.p $1_input.p \
$1_ode.p $1_odeo.p $1_logic.p
mtt_m2p $1_ode2odes.m $integration_method $stdin
endif
$1_ode2odes.c: $1_ode2odes.p
|
︙ | | |