#! /bin/sh
######################################
##### Model Transformation Tools #####
######################################
# Bourne shell script: cse_r2tex
# Reduce constrained-state to LaTex constrained-state equations.
# P.J.Gawthrop 10th May 199, 8th August 1991, April 1994, Jan 1995
# Copyright (c) P.J.Gawthrop, 1991, 1994.
###############################################################
## Version control history
###############################################################
## $Id$
## $Log$
###############################################################
#Inform user
echo Creating $1_cse.tex
# Remove the old log file
rm -f cse_r2tex.log
# Use reduce to accomplish the transformation
reduce >cse_r2tex.log << EOF
%Read the definitions file
in "$1_def.r";
%Read the symbolic parameter file
in "$1_sympar.r";
%Read the constrained-state equations file
in "$1_cse.r";
OFF Echo;
OFF Nat;
%%%%OFF Exp; ON GCD;
%Change some names - rather yuccy
MTTx1 := MTTx!_1;
MTTx2 := MTTx!_2;
MTTx3 := MTTx!_3;
MTTx4 := MTTx!_4;
MTTx5 := MTTx!_5;
MTTx6 := MTTx!_6;
MTTx7 := MTTx!_7;
MTTx8 := MTTx!_8;
MTTx9 := MTTx!_9;
MTTdx1 := MTTdx!_1;
MTTdx2 := MTTdx!_2;
MTTdx3 := MTTdx!_3;
MTTdx4 := MTTdx!_4;
MTTdx5 := MTTdx!_5;
MTTdx6 := MTTdx!_6;
MTTdx7 := MTTdx!_7;
MTTdx8 := MTTdx!_8;
MTTdx9 := MTTdx!_9;
MTTu1 := MTTu!_1;
MTTu2 := MTTu!_2;
MTTu3 := MTTu!_3;
MTTu4 := MTTu!_4;
MTTu5 := MTTu!_5;
MTTu6 := MTTu!_6;
MTTu7 := MTTu!_7;
MTTu8 := MTTu!_8;
MTTu9 := MTTu!_9;
MTTdu1 := MTTdu!_1;
MTTdu2 := MTTdu!_2;
MTTdu3 := MTTdu!_3;
MTTdu4 := MTTdu!_4;
MTTdu5 := MTTdu!_5;
MTTdu6 := MTTdu!_6;
MTTdu7 := MTTdu!_7;
MTTdu8 := MTTdu!_8;
MTTdu9 := MTTdu!_9;
MTTy1 := MTTy!_1;
MTTy2 := MTTy!_2;
MTTy3 := MTTy!_3;
MTTy4 := MTTy!_4;
MTTy5 := MTTy!_5;
MTTy6 := MTTy!_6;
MTTy7 := MTTy!_7;
MTTy8 := MTTy!_8;
MTTy9 := MTTy!_9;
%ON Rounded;
%Precision 5;
OUT "$1_cse.tex";
%Write out the constrained-state equations.
write "%File: $1_cse.tex";
write "%constrained-state equations";
IF MTTNx>0 THEN
FOR Row := 1:MTTNx DO
BEGIN
write"\begin{equation} \label{eq_$1_cse_X", Row, "}";
write "\dot MTTEX_{", Row, "} = ";
write "{";
write MTTEdX(Row,1);
write "}";
write"\end{equation}";
END;
IF MTTNy>0 THEN
FOR Row := 1:MTTNy DO
BEGIN
write"\begin{equation} \label{eq_$1_cse_y", Row, "}";
write "MTTy_{", Row, "} = ";
write "{";
write MTTy(Row,1);
write "}";
write"\end{equation}";
END;
IF MTTNx NEQ 0 THEN
BEGIN
write "% - E matrix";
write "\begin{equation} \label{eq_$1_cse_E}";
write "MTTE = \left \matrix {";
FOR Row := 1:MTTNx DO
BEGIN
FOR Col := 1:MTTNx DO
BEGIN
Write "{", MTTE(Row,Col), "}";
IF Col<MTTNx THEN Write "&"
END;
IF Row<MTTNx THEN Write "\cr";
END;
Write "} \right";
write "\end{equation}";
END;
%write "% - E matrix";
%write "\begin{eqnarray} \label{eq_$1_cse_Ea}";
% FOR Row := 1:MTTNx DO
% BEGIN
% FOR Col := 1:MTTNx DO %IF MTTE(Row,Col) NEQ 0 THEN
% BEGIN
% Write "MTTE_{", Row, Col, "} &=& {", MTTE(Row,Col), "}";
% IF Row<MTTNx OR Col<MTTNx THEN Write "\cr";
% END;
% END;
%write "\end{eqnarray}";
SHUT "$1_cse.tex";
quit;
EOF