Overview
Comment:Eliminated use of variable to pass rhs expression to optimise
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | origin/optimise-algebraic-equations | trunk
Files: files | file ages | folders
SHA3-256: e76e07bbf8cc6d3cd198b9ece7cba2af9a4c0ef90e706c4c134d9cff394cf805
User & Date: geraint@users.sourceforge.net on 2002-06-06 16:28:45
Other Links: branch diff | manifest | tags
Context
2002-06-06
17:10:25
Added a couple more simplification rules for pow. check-in: f3c3283818 user: geraint@users.sourceforge.net tags: origin/optimise-algebraic-equations, trunk
16:28:45
Eliminated use of variable to pass rhs expression to optimise check-in: e76e07bbf8 user: geraint@users.sourceforge.net tags: origin/optimise-algebraic-equations, trunk
2002-06-05
23:34:33
Eliminated argument list too long warnings.
Now get a Segmentation Fault with very long equations!
check-in: 933d9dfb7c user: geraint@users.sourceforge.net tags: origin/optimise-algebraic-equations, trunk
Changes

Modified mttroot/mtt/bin/trans/def2write_r from [793816fd35] to [ec2007c6a1].

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15




16
17
18
19
20
21
22
#!/bin/sh
set -x
     ###################################### 
     ##### Model Transformation Tools #####
     ######################################

# Bourne shell script: def2write.r
# Generates r code to write matrices
# Copyright (C) 2000 by Peter J. Gawthrop

###############################################################
## Version control history
###############################################################
## $Id$
## $Log$




## Revision 1.11.2.3  2002/06/05 18:23:38  geraint
## Cosmetic change.
##
## Revision 1.11.2.2  2002/06/05 17:57:47  geraint
## Main part of optimisation routine moved to separate file.
##
## Revision 1.11.2.1  2002/06/05 11:14:51  geraint

|













>
>
>
>







1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#!/bin/sh

     ###################################### 
     ##### Model Transformation Tools #####
     ######################################

# Bourne shell script: def2write.r
# Generates r code to write matrices
# Copyright (C) 2000 by Peter J. Gawthrop

###############################################################
## Version control history
###############################################################
## $Id$
## $Log$
## Revision 1.11.2.4  2002/06/05 23:34:33  geraint
## Eliminated argument list too long warnings.
## Now get a Segmentation Fault with very long equations!
##
## Revision 1.11.2.3  2002/06/05 18:23:38  geraint
## Cosmetic change.
##
## Revision 1.11.2.2  2002/06/05 17:57:47  geraint
## Main part of optimisation routine moved to separate file.
##
## Revision 1.11.2.1  2002/06/05 11:14:51  geraint
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
    }'
}

mtt_optimise ()
{
    sys="$1"
    lhs="$2"

    lhs=`echo $lhs | sed 's/MTTEdX/MTTdX/'`
    
    dae="${sys}_dae.r"
    tmp=mtt_optimise.tmp

    rhs=`eval "grep -i -e \"^$lhs\"" $dae`
    rhs=`eval echo "\"$rhs"\" | gawk -v FS=":=" '{ print $2 }'`
    rhs=`eval echo "\"$rhs"\" | eval "sed 's/\([.]*\)[;$]*$/\1/'"`
    rhs=`eval echo "\"$rhs"\" | eval "sed 's/\ //g'"`

    if [ ! -z "${rhs}" ]; then
	eval echo \"$lhs\" \"$rhs\" > $tmp
	eval mtt_optimise.sh $tmp
	cat $tmp #| mtt_fix_integers
    fi

    return
}


# Remove log files
rm -f def2write_r1.log def2write_r2.log

# Write out the code







|




|
|
<
|
<
<
<
<
|
|
<
|
|







169
170
171
172
173
174
175
176
177
178
179
180
181
182

183




184
185

186
187
188
189
190
191
192
193
194
    }'
}

mtt_optimise ()
{
    sys="$1"
    lhs="$2"
    
    lhs=`echo $lhs | sed 's/MTTEdX/MTTdX/'`
    
    dae="${sys}_dae.r"
    tmp=mtt_optimise.tmp
    
    # get rhs and write to tmp file to be processed by mtt_optimise.sh

    eval "grep -i -e \"^$lhs\"" $dae | eval "sed 's/\([.]*\)[;$]*$/\1/'" | eval "sed 's/\ //g'" | eval "sed 's/:=/ /'" > $tmp




    eval mtt_optimise.sh $tmp
    cat $tmp | mtt_fix_integers

    
    return 0
}


# Remove log files
rm -f def2write_r1.log def2write_r2.log

# Write out the code


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