Index: mttroot/mtt/bin/trans/struc2state_txt2txt ================================================================== --- mttroot/mtt/bin/trans/struc2state_txt2txt +++ mttroot/mtt/bin/trans/struc2state_txt2txt @@ -13,10 +13,13 @@ # %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% # %% Version control history # %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% # %% $Id$ # %% $Log$ +# %% Revision 1.6 1998/07/27 20:32:11 peterg +# %% Octave mode forced +# %% # %% Revision 1.5 1998/07/25 20:10:01 peterg # %% Lower case mttx # %% # %% Revision 1.4 1998/07/25 09:42:37 peterg # %% Now writes out an array @@ -32,33 +35,47 @@ # %% # %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -# Inform user -echo Creating $1_state.txt +# Switches +steadystate_computation="$2" #Create the state file complete with headers. echo '# -*-octave-*- Put Emacs into octave-mode' > $1_state.txt echo "# Initial state file ($1_state.txt)" >> $1_state.txt echo "# Generated by MTT at `date`" >> $1_state.txt cat $MTTPATH/trans/rcs_header.sh >> $1_state.txt #Write out the defaults -- states to steady-state values echo "# Set the states" >> $1_state.txt -#cat $1_ss.r $1_struc.txt | sed 's/\$//' |\ -#awk '{ -# if(match($1,"MTTx")) { -# j++ -# x[j]=$3 $4 $5 $6 $7 $8 $9; -# } -# -# if($1=="state") { -# i++; -# print "x(" i ") =\t", x[i], "; \# " $4 " (" $3 ")" -# } -#}' >> $1_state.txt + +if [ -n "$steadystate_computation" ]; then +# Compute state from ss.r file +# Inform user +echo Creating $1_state.txt - compute from steady-state information + +cat $1_ss.r $1_struc.txt | sed 's/\$//' |\ +awk '{ + if(match($1,"MTTx")>0) { + j++ + split($0,a,"="); print j,$0,a[2] + x[j]=a[2]; + } + + if($1=="state") { + i++; + print "x(" i ") =\t", x[i], " \# " $4 " (" $3 ")" + } +}' >> $1_state.txt +else +# Set states to zero +# Inform user +echo Creating $1_state.txt - default states to zero awk '{ if ($1=="state") printf("mttx(%s) \t= 0.0; \t\# %s (%s)\n", $2,$3,$4) }' <$1_struc.txt >> $1_state.txt + +fi +