Differences From Artifact [2a37f33be2]:

To Artifact [272e66ff00]:


16
17
18
19
20
21
22



23
24
25
26
27
28
29
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32







+
+
+







# Copyright (c) P.J.Gawthrop 1997.

###############################################################
## Version control history
###############################################################
## $Id$
## $Log$
# Revision 1.3  1997/03/20  14:51:11  peterg
# Includes the sympar.c file.
#
# Revision 1.2  1997/01/21  22:57:17  peterg
# Various bug fixes.
#
## Revision 1.1  1997/01/21 10:52:23  peterg
## Initial revision
##
###############################################################
78
79
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
108

109
110
111
112
113
114
115
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
108
109
110

111
112
113
114
115
116
117
118







-
-
-
-
+
+
+
+



-
+


-
+






-
+





-
+








write "void $1_ode()"$

write "  "$
write "{"$

write "/* Declare standard arrays */"$
write "  extern double y[", MTTNy+1, "]; /* $1_ode output */"$
write "  extern double dx[", MTTNx+1, "]; /* $1_ode state derivative */"$ 
write "  extern double x[", MTTNx+1, "]; /* $1_ode state */"$ 
write "  extern double u[", MTTNu+1, "]; /* $1_ode input */"$
write "  extern float y[", MTTNy+1, "]; /* $1_ode output */"$
write "  extern float dx[", MTTNx+1, "]; /* $1_ode state derivative */"$ 
write "  extern float x[", MTTNx+1, "]; /* $1_ode state */"$ 
write "  extern float u[", MTTNu+1, "]; /* $1_ode input */"$

%Declare the dummy variables t0--t9
write "/* Dummy variable list */ "$
write "  double t0;"$
write "  float t0;"$
FOR i := 1:9 DO
BEGIN
  write "  double t", i, ";"$
  write "  float t", i, ";"$
END$

%Declarations$
write "/* State variable list */ "$
FOR i := 1:MTTNx DO
BEGIN
  write "  double mttx", i, ";"$
  write "  float mttx", i, ";"$
END$

write "/* Input variable list */ "$
FOR i := 1:MTTNu DO
BEGIN
  write "  double mttu", i, ";"$
  write "  float mttu", i, ";"$
END$

write "/* Counter */ "$
write "  int i;"$

write "/* Parameter  list */ "$
write "#include ", """$1_sympar.c"""$
131
132
133
134
135
136
137
138

139
140
141
142
143
144
145
134
135
136
137
138
139
140

141
142
143
144
145
146
147
148







-
+







  END$
END$


write "  "$
write "    /*====== Compute the state derivative and output ======*/"$

SHUT $1_ode.c1
SHUT "$1_ode.c1";

% Load the general translator package
LOAD GENTRAN;
GENTRANLANG!* := 'C;
ON GENTRANSEG;
MAXEXPPRINTLEN!* := 80;


MTT: Model Transformation Tools
GitHub | SourceHut | Sourceforge | Fossil RSS ]