Overview
Comment:Read fix_c.r before ese.r and explicitly overload ** operator with pow().
These changes are required for the Codemist version of Reduce.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | origin/master | trunk
Files: files | file ages | folders
SHA3-256: cbecb36981149e0f25126f04798f94d432ca4d3737179244eb1207f3de35ee8f
User & Date: geraint@users.sourceforge.net on 2002-08-30 15:39:04
Other Links: branch diff | manifest | tags
Context
2002-09-03
19:34:15
Write EdX regardless - csex is needed to create ode when not optimised. check-in: 35095f6bf3 user: geraint@users.sourceforge.net tags: origin/master, trunk
2002-08-30
15:39:04
Read fix_c.r before ese.r and explicitly overload ** operator with pow().
These changes are required for the Codemist version of Reduce.
check-in: cbecb36981 user: geraint@users.sourceforge.net tags: origin/master, trunk
2002-08-29
15:45:20
Tests for existence of matrix before entering shell loop.
Tests for existence of expression before attempting to write or optimise.
check-in: e8b2ec8b70 user: geraint@users.sourceforge.net tags: origin/master, trunk
Changes

Modified mttroot/mtt/bin/trans/ese2rdae_r from [3c6373acf2] to [863b78c116].

10
11
12
13
14
15
16



17
18
19
20
21
22
23
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26







+
+
+







# Copyright (c) P.J.Gawthrop, 1991, 1994, 1996

###############################################################
## Version control history
###############################################################
## $Id$
## $Log$
## Revision 1.13  2002/06/28 10:13:40  geraint
## Includes fix_c.r in ese2rdae and def2write_r to eliminate occurrances of x**y.
##
## Revision 1.12.2.2  2002/06/05 17:28:00  geraint
## Cosmetic change.
##
## Revision 1.12.2.1  2002/06/05 11:14:51  geraint
## ae.r now generated using def2write_r like cse?.r
## fix_c.r called at ese2rdae stage so that pow gets fixed in ae.r.
##
169
170
171
172
173
174
175



176
177
178
179
180
181
182
183
184
185
186
187
188
189
172
173
174
175
176
177
178
179
180
181
182
183
184
185



186
187
188
189
190
191
192







+
+
+




-
-
-







$load_subs_comm

%Read the formatting function
in "$MTTPATH/trans/reduce_matrix.r";

% Definitions
in "$defname";

% Fix c code if required
$include

% Elementary system equations
in "$esename";

% Fix c code if required
$include

OFF Echo;
OFF Nat;

%Create the output file
OUT "$daename";

write "in ""$defname""";

Modified mttroot/mtt/lib/reduce/fix_c.r from [551406cfe8] to [4c2ca104c3].

1
2
3
4
5
6
7
8
9
10
11

12
13
14
15
16
17
18
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19











+







%% Fixes for c-code generation

%% Set PI explicitly here to avoid later conflict with cc headers
%% if PI is not already a number (i.e. on rounded has not been set)
IF NOT NUMBERP (pi) THEN LET PI = 3.14159$

ON ROUNDED$ % No integer output

%% Changes x^y to pow(x,y)
 OPERATOR pow$
 FOR ALL x,y LET x^y = pow(x,y)$ % Use the pow function
 FOR ALL x,y LET x**y = pow(x,y)$ % Use the pow function
 
 %% Derivatives
 FOR ALL f,g,x LET df(pow(f,g),x)=
 	   pow(f,g-1) * (df(f,x)*g + df(g,x)*f*log(f))$

 %% Special cases
 FOR ALL x LET pow(x,0) = 1$


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