11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
# Copyright (c) P.J.Gawthrop 1991, 1992, 1994.
###############################################################
## Version control history
###############################################################
## $Id$
## $Log$
## Revision 1.15.2.1 2001/05/04 04:07:24 geraint
## Numerical solution of algebraic equations.
## sys_ae.cc written for unsolved inputs.
## Solution of equations using hybrd from MINPACK (as used by Octave fsolve).
##
## Revision 1.15 2001/03/19 02:28:52 geraint
## Branch merge: merging-ode2odes-exe back to MAIN.
|
>
>
>
|
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
# Copyright (c) P.J.Gawthrop 1991, 1992, 1994.
###############################################################
## Version control history
###############################################################
## $Id$
## $Log$
## Revision 1.15.2.2 2001/05/05 20:50:16 geraint
## Fixed errors when MTTNx=0.
##
## Revision 1.15.2.1 2001/05/04 04:07:24 geraint
## Numerical solution of algebraic equations.
## sys_ae.cc written for unsolved inputs.
## Solution of equations using hybrd from MINPACK (as used by Octave fsolve).
##
## Revision 1.15 2001/03/19 02:28:52 geraint
## Branch merge: merging-ode2odes-exe back to MAIN.
|
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
|
set(lhs(MTT_sol_i),rhs(MTT_sol_i));
END;
% No algebraic variables left!
MTTNYz := 0;
END; % IF MTTNyz>0 and $solve
IF (MTTNyz>0) THEN % not $solve (or perhaps solution failed?)
BEGIN
OUT "$1_ae.r";
WRITE "MATRIX MTTyz(",MTTNyz,",1)";
WRITE "%File: $1_ae.r";
FOR i := 1:MTTNyz DO
WRITE "MTTyz(",i,",1) := ",MTTyz(i,1);
WRITE ";END;";
SHUT "$1_ae.r";
END; % if MTTNyz>0 (and !$solve)
% Create the matrix declarations
OUT "$1_cse.r1";
write "%";
IF (MTTNx > 0) THEN
BEGIN
write "MATRIX MTTEdx(", MTTNx, ",", 1, ")$";
|
>
<
>
|
|
<
|
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
|
set(lhs(MTT_sol_i),rhs(MTT_sol_i));
END;
% No algebraic variables left!
MTTNYz := 0;
END; % IF MTTNyz>0 and $solve
OUT "$1_ae.r";
IF (MTTNyz>0) THEN % not $solve (or perhaps solution failed?)
BEGIN
WRITE "MATRIX MTTyz(",MTTNyz,",1)";
WRITE "%File: $1_ae.r";
FOR i := 1:MTTNyz DO
WRITE "MTTyz(",i,",1) := ",MTTyz(i,1);
END; % if MTTNyz>0 (and !$solve)
WRITE ";END;";
SHUT "$1_ae.r";
% Create the matrix declarations
OUT "$1_cse.r1";
write "%";
IF (MTTNx > 0) THEN
BEGIN
write "MATRIX MTTEdx(", MTTNx, ",", 1, ")$";
|