Overview
Comment:Added cse reps
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | origin/master | trunk
Files: files | file ages | folders
SHA3-256: f987c1a49f18662b065421286f6f887728c82491b3e2fddebe7000fe851c30a2
User & Date: gawthrop@users.sourceforge.net on 2000-10-10 21:02:17
Other Links: branch diff | manifest | tags
Context
2000-10-10
21:02:27
Initial revision check-in: 99e267ac74 user: gawthrop@users.sourceforge.net tags: origin/master, trunk
21:02:17
Added cse reps check-in: f987c1a49f user: gawthrop@users.sourceforge.net tags: origin/master, trunk
21:00:58
New code genration check-in: 93ccf23da2 user: gawthrop@users.sourceforge.net tags: origin/master, trunk
Changes

Modified mttroot/mtt/bin/trans/def2write_r from [6f4ac0a51f] to [321572f689].

9
10
11
12
13
14
15



16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34










35
36
37





38





39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57

58
59
60
61
62
# Copyright (C) 2000 by Peter J. Gawthrop

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



###############################################################


sys=$1 # System name
rep=$2 # System representation

# Inform User
echo Creating $1_$2_write.r

# Find system constants
Nx=`mtt_getsize $sys x` # States
Nxx=`mtt_getsize $sys xx` # States x States
Nu=`mtt_getsize $sys u` # Inputs 
Ny=`mtt_getsize $sys y` # Outputs 
Nyz=`mtt_getsize $sys yz` # Zero outputs
Npar=`wc -l $sys\_sympar.txt | awk '{print $1}'`

# Set up representation-specific stuff
case $rep in










    ode)
        matrices='dX Y Yz'
        ns="$Nx $Ny $Nyz"





        ms="1 1 1"





	;;
    *)
        echo def2write_r: representation $rep not recognised
        exit
esac

# Write out the code
echo 'off echo$ load scope$'                    >$1_$2_write.r
echo 'optimize'                      >>$1_$2_write.r
for matrix in $matrices; do
    n=`first "$ns"`; ns=`rest "$ns"` 
    m=`first "$ms"`; ms=`rest "$ms"`

    is=`n2m 1 $n`; 
    js=`n2m 1 $m`; 
    for i in $is; do
      for j in $js; do
        name=`echo MTT$matrix'('$i','$j')'`
        echo '  '$name ':=:' $name',' >>$1_$2_write.r

      done
    done
done
echo 'INAME mtt_tmp$'                 >>$1_$2_write.r
echo 'END$'                           >>$1_$2_write.r







>
>
>



















>
>
>
>
>
>
>
>
>
>

|
|
>
>
>
>
>
|
>
>
>
>
>












<





|
>





9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73

74
75
76
77
78
79
80
81
82
83
84
85
# Copyright (C) 2000 by Peter J. Gawthrop

###############################################################
## Version control history
###############################################################
## $Id$
## $Log$
## Revision 1.1  2000/10/10 09:07:32  peterg
## Initial revision
##
###############################################################


sys=$1 # System name
rep=$2 # System representation

# Inform User
echo Creating $1_$2_write.r

# Find system constants
Nx=`mtt_getsize $sys x` # States
Nxx=`mtt_getsize $sys xx` # States x States
Nu=`mtt_getsize $sys u` # Inputs 
Ny=`mtt_getsize $sys y` # Outputs 
Nyz=`mtt_getsize $sys yz` # Zero outputs
Npar=`wc -l $sys\_sympar.txt | awk '{print $1}'`

# Set up representation-specific stuff
case $rep in
    cse)
        matrices='EdX E'
        ns="$Nx $Nx"
        ms="1 $Nx"
	;;
    cseo)
        matrices='Y'
        ns="$Ny"
        ms="1"
	;;
    ode)
        matrices='dX'
        ns="$Nx"
        ms="1"
	;;
    odeo)
        matrices='Y Yz'
        ns="$Ny $Nyz"
        ms="1 1"
	;;
    sm)
        matrices='A B C D'
        ns="$Nx $Nx $Ny $Ny"
        ms="$Nx $Nu $Nx $Nu"
	;;
    *)
        echo def2write_r: representation $rep not recognised
        exit
esac

# Write out the code
echo 'off echo$ load scope$'                    >$1_$2_write.r
echo 'optimize'                      >>$1_$2_write.r
for matrix in $matrices; do
    n=`first "$ns"`; ns=`rest "$ns"` 
    m=`first "$ms"`; ms=`rest "$ms"`

    is=`n2m 1 $n`; 
    js=`n2m 1 $m`; 
    for i in $is; do
      for j in $js; do
        name=`echo MTT$matrix'('$i','$j')'`
        echo '  '$comma$name ':=:' $name >>$1_$2_write.r
        comma=', '
      done
    done
done
echo 'INAME mtt_tmp$'                 >>$1_$2_write.r
echo 'END$'                           >>$1_$2_write.r


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