Home My Page Projects Code Snippets Project Openings diderot
Summary Activity Tracker Tasks SCM

SCM Repository

[diderot] Diff of /branches/charisee/src/compiler/einTest/examplesN.sml
ViewVC logotype

Diff of /branches/charisee/src/compiler/einTest/examplesN.sml

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 2495, Wed Oct 23 21:28:25 2013 UTC revision 2496, Tue Oct 29 05:29:46 2013 UTC
# Line 8  Line 8 
8    
9  in  in
10    
11    (*Sub*)
12    (*Div*)
13    (*Neg*)
14    (*Add*)
15    
16    
17    val s0= E.Tensor(0,[])
18    val s1= E.Tensor(1,[])
19    val s2= E.Tensor(2,[])
20    val s3= E.Tensor(3,[])
21    val p0=E.Partial[E.V 0]
22    val p1=E.Partial[E.V 1]
23    val p2=E.Partial[E.V 2]
24    
25    val t4= E.Tensor(4,[E.V 1])
26    val t0= E.Tensor(0,[E.V 0])
27    val t1=E.Tensor(1,[E.V 0])
28    val t2=E.Tensor(2,[E.V 0])
29    val t3=E.Tensor(3,[E.V 0])
30    val t04=E.Tensor(0,[E.V 4])
31    val t15=E.Tensor(1,[E.V 5])
32    val t02=E.Tensor(0,[E.V 2])
33    val t14=E.Tensor(1,[E.V 4])
34    
35    val f0=E.Field(0,[E.V 0])
36    val f1=E.Field(1,[E.V 0])
37    val f2=E.Field(2,[E.V 0])
38    
39    val c0=E.Conv(0,[],1,[])
40    val c1=E.Conv(1,[],1,[])
41    val c2=E.Conv(2,[],1,[])
42    
43    val d1=E.Delta(E.V 1, E.V 2)
44    val d2=E.Delta(E.V 3, E.V 4)
45    val d3=E.Delta(E.V 1, E.V 4)
46    val d4=E.Delta(E.V 2, E.V 3)
47    
48    val eps1=E.Epsilon(0,1,2)
49    val eps2=E.Epsilon(0,3,4)
50    val eps3=E.Epsilon(5,6,7)
51    
52    (*probe *)
53    val pos=s1
54    val add=E.Add[c0,c1,E.Prod[s0,c2]]
55    val probe1=E.Probe(c1,pos)
56    val probe2=E.Probe(E.Sum([E.V 2],c0),pos)
57    val probe3= E.Probe(E.Neg(E.Prod[s0,c0]),pos)
58    val probe4= E.Probe(add,pos)
59    val probe5= E.Probe(E.Sub( E.Add[c0,c1,E.Prod[s0,c2]], c1),pos)
60    val probe6=E.Probe(E.Prod[s0,c1], pos)
61    val probe7= E.Probe(E.Prod[s1,  E.Apply(p0, E.Prod[s0,c0])],pos )
62    val probe8= E.Probe( E.Prod[s1, add],pos)
63    val probe9=E.Probe(E.Div(c0,s0), pos)
64    val probe10=E.Probe(E.Prod[s0,t0,c0],pos)
65    val probe11= E.Probe(E.Apply(p1,E.Conv(0, [E.V 0],1,[])),t0)
66    val probe12= E.Probe(E.Apply(E.Partial [E.V 1,E.V 0],E.Conv(0, [E.V 0],1,[])),t0)
67    val probe13= E.Probe(E.Apply(E.Prod[E.Partial[E.V 3],E.Partial [E.V 1,E.V 0]],E.Conv(0, [E.V 0],1,[])),t0)
68    
69    
70    (*Sum*)
71    val sum1=E.Sum([],add)
72    val sum2=E.Sum([E.V 0],E.Prod[t0,E.Add[t1,t1]])
73    val sum3=E.Sum([E.V 0],E.Prod[t0,E.Add[t1,t1],t3])
74    val sum4=E.Sum([E.V 0],E.Prod[s0, E.Sub(f1,f2)])
75    val sum5=E.Sum([E.V 0],E.Prod[t0, E.Sub(t1,t1)])
76    val sum6= E.Sum([E.V 0],E.Div(f1,s1))
77    
78                (*Eps Eps=> Deltas-Deltas*)
79    val sum7=E.Sum([E.V 0, E.V 1, E.V 3],E.Prod[eps1,eps2,E.Tensor(0,[E.V 1]),E.Tensor(1,[E.V 3])])
80    val sum8=(E.Sum([E.V 0, E.V 1, E.V 2, E.V 3, E.V 4],E.Prod[eps1,eps2,E.Tensor(0,[E.V 3]), t14,E.Tensor(2,[E.V 1]), E.Tensor(3,[E.V 2]) ]))
81    val sum9=(E.Sum([E.V 0, E.V 1, E.V 3],E.Prod[eps1,eps2,eps3,E.Tensor(0,[E.V 3]), t14 ]))
82    val sum10=(E.Sum([E.V 0, E.V 5, E.V 6],E.Prod[eps1,eps2,eps3,E.Tensor(0,[E.V 3]), t15 ]))
83    val sum11=(E.Sum([E.V 0, E.V 5, E.V 6],E.Prod[eps1,eps2,eps3,E.Tensor(0,[E.V 5]), E.Tensor(1,[E.V 6]) ]))
84    
85    val sumIndex=[E.V 0,E.V 1, E.V 2,E.V 3, E.V 4, E.V 5]
86    
87    
88    (*Dels(i,j) Tensor(i)=> Tensor(j)*)
89    val sum12=E.Sum(sumIndex,E.Prod[d1,d2,t0,t1])
90    val sum13=E.Sum(sumIndex,E.Prod[d1,d2,t02,t14])
91    val sum14=E.Sum(sumIndex,E.Prod[d1,d2,t3,t02])
92    
93    
94    
95    (*sum apply*)
96    val sum15=E.Sum([E.V 0],E.Apply(p1,s1))
97    val sum16=E.Sum([E.V 0],E.Apply(E.Prod[p2,p0],f0))
98    val sum17=E.Sum([E.V 0], E.Apply(p1,E.Prod[s0, E.Sub(f1,f2)]))
99    val sum18= E.Sum([E.V 0, E.V 1],E.Apply(p0,E.Prod[f1,E.Field(0,[E.V 1]),E.Field(2,[E.V 1])]))
100    val sum19= E.Sum([E.V 0, E.V 1],E.Apply(p0,E.Prod[f1,E.Delta(E.V 5, E.V 6),E.Field(0,[E.V 1]),E.Field(2,[E.V 1])]))
101    val sum20=E.Sum([E.V 0],E.Apply(p0,E.Sub(E.Field(0,[E.V 1]),E.Field(1,[E.V 2]))))
102    val sum21=E.Sum([E.V 0],E.Apply(p0,E.Prod[s0,f0]))
103    val sum22=E.Sum([E.V 0],E.Apply(p0,E.Add[E.Field(0,[E.V 1]),E.Field(1,[E.V 2])]))
104    val sum23=E.Sum([E.V 0],E.Apply(p0,s0))
105    
106    (* Partial_i Dels(i, j)=> E.Partial(j)*)
107    val sum24=E.Sum([E.V 0, E.V 1],E.Apply(p0,E.Prod[E.Delta(E.V 1,E.V 0),E.Tensor(0,[E.V 1])]))
108    val sum25=E.Sum([E.V 0, E.V 1],E.Apply(p0,E.Prod[E.Delta(E.V 1,E.V 0),E.Field(0,[E.V 1])]))
109    
110    (*Eps_ijk Partial_ij*)
111    val sum26=E.Sum([E.V 0, E.V 1, E.V 2],E.Apply(E.Partial([E.V 1, E.V 0]),E.Prod[eps1,E.Tensor(0,[E.V 1])]))
112    val sum27=E.Sum([E.V 0, E.V 1, E.V 2],E.Apply(E.Partial([E.V 2, E.V 1]),E.Prod[eps1,E.Tensor(0,[E.V 1])]))
113    val sum28=E.Sum([E.V 0, E.V 1, E.V 2],E.Apply(E.Partial([E.V 0, E.V 2]),E.Prod[eps1,E.Tensor(0,[E.V 1])]))
114    
115    
116    val prod1= E.Prod[p2,p1,t0]
117    val prod2= E.Prod[E.Partial [E.V 2,E.V 3],p1,t0]
118    val prod3=E.Prod[t0,E.Add[t1,t1],E.Add[E.Prod[t0,t1],E.Prod[t0,t1]]]
119    val prod4=E.Prod[p0,t0,E.Add[t1,t1]]
120    val prod5=E.Prod[t0, E.Sub(t1,t1)]
121    val prod6=E.Prod[t0, E.Sub(t1,t1),t3]
122    val prod7=E.Prod[s0, E.Sub(f1,f2)]
123    val prod8=E.Prod[p0,E.Add[E.Tensor(0,[E.V 1]),E.Tensor(1,[E.V 2])]]
124    val prod9=E.Prod[p0,E.Sub(E.Tensor(0,[E.V 1]),E.Tensor(1,[E.V 2]))]
125    val prod10=E.Prod[p0,s0]
126    
127    
128    (***** Apply ******)
129    val apply1=E.Apply(E.Partial([E.V 2]),E.Prod[E.Tensor(0,[E.V 1,E.V 2]),E.Tensor(2,[E.V 2,E.V 3]) ,E.Tensor(5,[E.V 2,E.V 4])])
130    val apply2= E.Apply(E.Prod[p2,p1],f0)
131    val apply3= E.Apply(E.Prod[p2,p1], E.Sum([E.V 0],f0))
132    val apply4= E.Apply(p1,E.Conv(0, [E.V 0],1,[]))
133    val apply5= E.Apply(E.Partial [E.V 1,E.V 0],E.Conv(0, [E.V 0],1,[]))
134    val apply6= E.Apply(E.Prod[E.Partial[E.V 3],E.Partial [E.V 1,E.V 0]],E.Conv(0, [E.V 0],1,[]))
135    val apply7=E.Apply(p1,E.Prod[s0, E.Sub(f1,f2)])
136    val apply8=E.Apply(p0,E.Add[E.Field(0,[E.V 1]),E.Field(1,[E.V 2])])
137    val apply9=E.Apply(p0,E.Add[E.Field(0,[E.V 1]),E.Apply(p0,E.Field(1,[E.V 2]))])
138    val apply10=E.Apply(p0,E.Sub(E.Field(0,[E.V 1]),E.Field(1,[E.V 2])))
139    val apply11=E.Apply(p0,E.Sub(E.Field(0,[E.V 1]),E.Apply(p0,E.Field(1,[E.V 2]))))
140    val apply12=E.Apply(p0,s0)
141    val apply13=E.Apply(p0,E.Prod[s0,f1])
142    val apply14= E.Prod[p0,t1,E.Tensor(0,[E.V 1])]
143    val apply15= E.Prod[p0,t0,E.Add[E.Tensor(1,[E.V 1]),E.Tensor(2,[E.V 1])]]
144    val apply16= E.Apply(p0,E.Prod[t1,E.Tensor(0,[E.V 1])])
145    val apply17= E.Apply(p0,E.Prod[f1,E.Field(0,[E.V 1])])
146    val apply18= E.Apply(p0,E.Prod[f1,E.Field(0,[E.V 1]),E.Field(2,[E.V 1])])
147    
148    
149    
150    (*apply sum*)
151    val applysum1=E.Apply(p1,E.Sum([E.V 0],E.Prod[s0, E.Sub(f1,f2)]))
152    val applysum2=E.Apply(p0,E.Sum([E.V 1],E.Add[E.Field(0,[E.V 1]),E.Field(1,[E.V 1])]))
153    val applysum3=E.Apply(p0,E.Sum([E.V 0],E.Sub(E.Field(0,[E.V 1]),E.Field(1,[E.V 1]))))
154    val applysum4=E.Apply(p0,E.Sum([E.V 0],s0))
155    val applysum5=E.Apply(p0,E.Sum([E.V 0],E.Prod[s0,f0]))
156    val applysum6= E.Apply(p0,E.Sum([E.V 1],E.Prod[f1,E.Field(0,[E.V 1]),E.Field(2,[E.V 1])]))
157    val applysum7= E.Apply(p0,E.Sum([E.V 1],E.Prod[f1,d2,E.Field(0,[E.V 1]),E.Field(2,[E.V 1])]))
158    
 (* 1 nabla nabla=> nabla^2 *)  
 val R1= E.Prod[E.Partial [E.V 2],E.Partial[E.V 1],E.Tensor(0,[E.V 0])]  
 val R1b= E.Prod[E.Partial [E.V 2,E.V 3],E.Partial[E.V 1],E.Tensor(0,[E.V 0])]  
 val R1c= E.Apply(E.Prod[E.Partial [E.V 2],E.Partial[E.V 1]],E.Field(0,[E.V 0]))  
 val R1d= E.Apply(E.Prod[E.Partial [E.V 2],E.Partial[E.V 1]], E.Sum([E.V 0],E.Field(0,[E.V 0])))  
 val R1e= E.Sum([E.V 0],E.Apply(E.Prod[E.Partial [E.V 2],E.Partial[E.V 0]],E.Field(0,[E.V 0])))  
   
   
 (* 2 nabla (V * h)=>  V * nabla h  *)  
 val R2= E.Prod[E.Partial [E.V 1],E.Conv(E.Field(0,[E.V 0]),[])]  
 val R2b= E.Prod[E.Partial [E.V 1,E.V 0],E.Conv(E.Field(0,[E.V 0]),[])]  
 val R2c= E.Prod[E.Partial[E.V 3],E.Partial [E.V 1,E.V 0],E.Conv(E.Field(0,[E.V 0]),[])]  
 val R2d= E.Probe(E.Prod[E.Partial [E.V 1],E.Conv(E.Field(0,[E.V 0]),[])],E.Tensor(0,[E.V 0]))  
 val R2e= E.Probe(E.Prod[E.Partial [E.V 1,E.V 0],E.Conv(E.Field(0,[E.V 0]),[])],E.Tensor(0,[E.V 0]))  
 val R2f= E.Probe(E.Prod[E.Partial[E.V 3],E.Partial [E.V 1,E.V 0],E.Conv(E.Field(0,[E.V 0]),[])],E.Tensor(0,[E.V 0]))  
   
   
 (* 3 e1*(e2+e3)*)  
 val R3=(E.Prod[E.Tensor(0,[E.V 0]),E.Add[E.Tensor(1,[E.V 0]),E.Tensor(2,[E.V 0])]],  
         E.Add[E.Prod[E.Tensor(0,[E.V 0]),E.Tensor(1,[E.V 0])],E.Prod[E.Tensor(0,[E.V 0]),E.Tensor(2,[E.V 0])]])  
   
 val R3b=E.Prod[E.Partial [E.V 0],E.Tensor(0,[E.V 0]),E.Add[E.Tensor(1,[E.V 0]),E.Tensor(2,[E.V 0])]]  
 val R3c=E.Sum([E.V 0],E.Prod[E.Tensor(0,[E.V 0]),E.Add[E.Tensor(1,[E.V 0]),E.Tensor(2,[E.V 0])]])  
 val R3d=E.Sum([E.V 0],E.Prod[E.Tensor(0,[E.V 0]),E.Add[E.Tensor(1,[E.V 0]),E.Tensor(2,[E.V 0])],E.Tensor(3,[E.V 0])])  
   
 (* 4 e1*(e2-e3) *)  
   
 val R4=E.Prod[E.Tensor(0,[E.V 0]), E.Sub(E.Tensor(1,[E.V 0]),E.Tensor(2,[E.V 0]))]  
 val R4b=E.Prod[E.Tensor(0,[E.V 0]), E.Sub(E.Tensor(1,[E.V 0]),E.Tensor(2,[E.V 0])),E.Tensor(3,[E.V 0])]  
 val R4c=E.Sum([E.V 0],E.Prod[E.Tensor(0,[E.V 0]), E.Sub(E.Tensor(1,[E.V 0]),E.Tensor(2,[E.V 0]))])  
 val R4d=E.Prod[E.Tensor(0,[]), E.Sub(E.Field(1,[E.V 0]),E.Field(2,[E.V 0]))]  
 val R4e=E.Apply(E.Partial [E.V 1],E.Prod[E.Tensor(0,[]), E.Sub(E.Field(1,[E.V 0]),E.Field(2,[E.V 0]))])  
 val R4f=E.Sum([E.V 0],E.Prod[E.Tensor(0,[]), E.Sub(E.Field(1,[E.V 0]),E.Field(2,[E.V 0]))])  
 val R4g=E.Sum([E.V 0], E.Apply(E.Partial[E.V 1],E.Prod[E.Tensor(0,[]), E.Sub(E.Field(1,[E.V 0]),E.Field(2,[E.V 0]))]))  
 val R4h=E.Apply(E.Partial[E.V 1],E.Sum([E.V 0],E.Prod[E.Tensor(0,[]), E.Sub(E.Field(1,[E.V 0]),E.Field(2,[E.V 0]))]))  
   
 (*5 nabla (V * nabla h) => V nabla^2 h *)  
 val R5=E.Prod[E.Partial[E.V 1], E.Conv(E.Field(0,[E.V 0]),[E.V 0])]  
 val R5b=E.Probe(E.Prod[E.Partial[E.V 1], E.Conv(E.Field(0,[E.V 0]),[E.V 0])], E.Tensor(1, [E.V 0]))  
   
 (*6  nabla (e1+e2)=> nabla e1+ nabla e2 *)  
 val R6=E.Prod[E.Partial[E.V 0],E.Add[E.Tensor(0,[E.V 1]),E.Tensor(1,[E.V 2])]]  
 val R6b=E.Apply(E.Partial[E.V 0],E.Add[E.Field(0,[E.V 1]),E.Field(1,[E.V 2])])  
 val R6c=E.Apply(E.Partial[E.V 0],E.Add[E.Field(0,[E.V 1]),E.Apply(E.Partial[E.V 0],E.Field(1,[E.V 2]))])  
 val R6d=E.Sum([E.V 0],E.Apply(E.Partial[E.V 0],E.Add[E.Field(0,[E.V 1]),E.Field(1,[E.V 2])]))  
 val R6e=E.Apply(E.Partial[E.V 0],E.Sum([E.V 1],E.Add[E.Field(0,[E.V 1]),E.Field(1,[E.V 1])]))  
   
   
 (*7 nabla(e1-e2)=> nabla e1- nabla e2*)  
 val R7=E.Prod[E.Partial[E.V 0],E.Sub(E.Tensor(0,[E.V 1]),E.Tensor(1,[E.V 2]))]  
 val R7b=E.Apply(E.Partial[E.V 0],E.Sub(E.Field(0,[E.V 1]),E.Field(1,[E.V 2])))  
 val R7c=E.Apply(E.Partial[E.V 0],E.Sub(E.Field(0,[E.V 1]),E.Apply(E.Partial[E.V 0],E.Field(1,[E.V 2]))))  
 val R7d=E.Sum([E.V 0],E.Apply(E.Partial[E.V 0],E.Sub(E.Field(0,[E.V 1]),E.Field(1,[E.V 2]))))  
 val R7e=E.Apply(E.Partial[E.V 0],E.Sum([E.V 0],E.Sub(E.Field(0,[E.V 1]),E.Field(1,[E.V 1]))))  
   
 (*8 nabla s =>0*)  
 val R8=E.Prod[E.Partial[E.V 0],E.Tensor(0,[])]  
 val R8b=E.Apply(E.Partial[E.V 0],E.Tensor(0,[]))  
 val R8c=E.Sum([E.V 0],E.Apply(E.Partial[E.V 0],E.Tensor(0,[])))  
 val R8d=E.Apply(E.Partial[E.V 0],E.Sum([E.V 0],E.Tensor(0,[])))  
 val R8e=E.Apply(E.Partial[E.V 0],E.Tensor(0,[]))  
   
 (*9  nabla(s e)=> s* nabla e*)  
 val R9=E.Prod[E.Partial[E.V 0],E.Tensor(0,[])]  
 val R9b=E.Apply(E.Partial[E.V 0],E.Prod[E.Tensor(0,[]),E.Field(1,[E.V 0])])  
 val R9c=E.Sum([E.V 0],E.Apply(E.Partial[E.V 0],E.Prod[E.Tensor(0,[]),E.Field(0,[E.V 0])]))  
 val R9d=E.Apply(E.Partial[E.V 0],E.Sum([E.V 0],E.Prod[E.Tensor(0,[]),E.Field(0,[E.V 0])]))  
   
   
 (*10 nabla(e1 e2)=> e1(nabla e2)+ e2(nabla e1)*)  
 (*Apply Sum*)  
 val R10f= E.Apply(E.Partial[E.V 0],E.Sum([E.V 1],E.Prod[E.Field(1,[E.V 0]),E.Field(0,[E.V 1]),E.Field(2,[E.V 1])]))  
 val R10h= E.Apply(E.Partial[E.V 0],E.Sum([E.V 1],E.Prod[E.Field(1,[E.V 0]),E.Delta(E.V 3, E.V 4),E.Field(0,[E.V 1]),E.Field(2,[E.V 1])]))  
   
   
   
 val R10= E.Prod[E.Partial[E.V 0],E.Tensor(1,[E.V 0]),E.Tensor(0,[E.V 1])]  
 val R10a= E.Prod[E.Partial[E.V 0],E.Tensor(0,[E.V 0]),E.Add[E.Tensor(1,[E.V 1]),E.Tensor(2,[E.V 1])]]  
   
 val R10b= E.Apply(E.Partial[E.V 0],E.Prod[E.Tensor(1,[E.V 0]),E.Tensor(0,[E.V 1])])  
 val R10c= E.Apply(E.Partial[E.V 0],E.Prod[E.Field(1,[E.V 0]),E.Field(0,[E.V 1])])  
 val R10d= E.Apply(E.Partial[E.V 0],E.Prod[E.Field(1,[E.V 0]),E.Field(0,[E.V 1]),E.Field(2,[E.V 1])])  
 val R10e= E.Sum([E.V 0, E.V 1],E.Apply(E.Partial[E.V 0],E.Prod[E.Field(1,[E.V 0]),E.Field(0,[E.V 1]),E.Field(2,[E.V 1])]))  
 val R10g=(E.Apply(E.Partial([E.V 2]),E.Prod[E.Tensor(0,[E.V 1,E.V 2]),E.Tensor(2,[E.V 2,E.V 3]) ,E.Tensor(5,[E.V 2,E.V 4])]))  
 val R10i= E.Sum([E.V 0, E.V 1],E.Apply(E.Partial[E.V 0],E.Prod[E.Field(1,[E.V 0]),E.Delta(E.V 5, E.V 6),E.Field(0,[E.V 1]),E.Field(2,[E.V 1])]))  
   
   
 (*11 Eps Eps=> Deltas-Deltas*)  
 val R11=E.Sum([E.V 0, E.V 1, E.V 3],E.Prod[E.Epsilon(0,1,2),E.Epsilon(0,3,4),E.Tensor(0,[E.V 1]),E.Tensor(1,[E.V 3])])  
 val R11b=(E.Sum([E.V 0, E.V 1, E.V 2, E.V 3, E.V 4],E.Prod[E.Epsilon(0,1,2),E.Epsilon(0,3,4),E.Tensor(0,[E.V 3]), E.Tensor(1,[E.V 4]),E.Tensor(2,[E.V 1]), E.Tensor(3,[E.V 2]) ]))  
 val R11c=(E.Sum([E.V 0, E.V 1, E.V 3],E.Prod[E.Epsilon(0,1,2),E.Epsilon(0,3,4),E.Epsilon(5,6,7),E.Tensor(0,[E.V 3]), E.Tensor(1,[E.V 4]) ]))  
 val R11d=(E.Sum([E.V 0, E.V 5, E.V 6],E.Prod[E.Epsilon(0,1,2),E.Epsilon(0,3,4),E.Epsilon(5,6,7),E.Tensor(0,[E.V 3]), E.Tensor(1,[E.V 5]) ]))  
 val R11e=(E.Sum([E.V 0, E.V 5, E.V 6],E.Prod[E.Epsilon(0,1,2),E.Epsilon(0,3,4),E.Epsilon(5,6,7),E.Tensor(0,[E.V 5]), E.Tensor(1,[E.V 6]) ]))  
   
   
 (*12 Dels(i,j) Tensor(i)=> Tensor(j)*)  
 val R12=E.Sum([E.V 1],E.Prod[E.Delta(E.V 0, E.V 1), E.Tensor(0,[E.V 1])  ])  
 val R12b=E.Sum([E.V 1, E.V 2],E.Prod[E.Delta(E.V 0, E.V 1), E.Tensor(1,[E.V 2]),E.Tensor(0,[E.V 1])])  
 val R12c=E.Sum([E.V 1, E.V 2],E.Prod[E.Delta(E.V 4,E.V 5),E.Delta(E.V 0, E.V 1), E.Tensor(1,[E.V 2]),E.Tensor(0,[E.V 1])])  
 val R12d=E.Sum([E.V 1, E.V 2],E.Prod[E.Delta(E.V 4,E.V 2),E.Delta(E.V 4,E.V 5),E.Delta(E.V 0, E.V 1), E.Tensor(1,[E.V 2]),E.Tensor(0,[E.V 1])])  
 val R12v=E.Sum([E.V 1, E.V 2,E.V 3, E.V 4, E.V 5],E.Prod[E.Delta(E.V 1, E.V 2),E.Delta(E.V 3, E.V 4), E.Tensor(0,[E.V 4])])  
 val R12u=E.Sum([E.V 1, E.V 2,E.V 3, E.V 4, E.V 5],E.Prod[E.Delta(E.V 1, E.V 2),E.Delta(E.V 3, E.V 4), E.Tensor(0,[E.V 2])])  
 val R12t=E.Sum([E.V 1, E.V 2,E.V 3, E.V 4, E.V 5],E.Prod[E.Delta(E.V 1, E.V 2),E.Delta(E.V 3, E.V 4), E.Tensor(0,[E.V 5])])  
 val R12s=E.Sum( [E.V 1, E.V 2,E.V 3, E.V 4, E.V 5],E.Prod[E.Delta(E.V 1, E.V 2),E.Delta(E.V 3, E.V 4), E.Tensor(0,[E.V 4]),E.Tensor(1,[E.V 5])])  
 val R12e=E.Sum([E.V 1, E.V 2,E.V 3, E.V 4, E.V 5],E.Prod[E.Delta(E.V 1, E.V 2),E.Delta(E.V 3, E.V 4), E.Tensor(0,[E.V 2]),E.Tensor(1,[E.V 5])])  
 val R12f=E.Sum([E.V 1, E.V 2,E.V 3, E.V 4, E.V 5],E.Prod[E.Delta(E.V 1, E.V 2),E.Delta(E.V 3, E.V 4), E.Tensor(0,[E.V 5]),E.Tensor(1,[E.V 4])])  
 val R12g=E.Sum([E.V 1, E.V 2,E.V 3, E.V 4, E.V 5],E.Prod[E.Delta(E.V 1, E.V 2),E.Delta(E.V 3, E.V 4), E.Tensor(0,[E.V 5]),E.Tensor(1,[E.V 2])])  
 val R12h=E.Sum([E.V 1, E.V 2,E.V 3, E.V 4, E.V 5],E.Prod[E.Delta(E.V 1, E.V 2),E.Delta(E.V 3, E.V 4), E.Tensor(0,[E.V 2]),E.Tensor(1,[E.V 4])])  
 val R12i=E.Sum([E.V 1, E.V 2,E.V 3, E.V 4, E.V 5],E.Prod[E.Delta(E.V 1, E.V 2),E.Delta(E.V 3, E.V 4), E.Tensor(0,[E.V 4]),E.Tensor(1,[E.V 2])])  
 val R12j=E.Sum([E.V 1, E.V 2,E.V 3, E.V 4, E.V 5],E.Prod[E.Delta(E.V 1, E.V 2), E.Tensor(0,[E.V 4])])  
 val R12k=E.Sum([E.V 1, E.V 2,E.V 3, E.V 4, E.V 5],E.Prod[E.Delta(E.V 1, E.V 2), E.Tensor(0,[E.V 2])])  
 val R12l=E.Sum([E.V 1, E.V 2,E.V 3, E.V 4, E.V 5],E.Prod[E.Delta(E.V 1, E.V 2), E.Tensor(0,[E.V 2]), E.Tensor(0,[E.V 5])])  
 val R12m=E.Sum([E.V 1, E.V 2,E.V 3, E.V 4, E.V 5],E.Prod[E.Delta(E.V 1, E.V 2), E.Tensor(0,[E.V 5]), E.Tensor(0,[E.V 6])])  
 val R12n=E.Sum([E.V 1, E.V 2,E.V 3, E.V 4, E.V 5],E.Prod[E.Delta(E.V 1, E.V 2), E.Tensor(0,[E.V 5]), E.Tensor(0,[E.V 2])])  
 val R12o= E.Sum([E.V 1, E.V 2,E.V 3, E.V 4, E.V 5],E.Prod[E.Delta(E.V 1, E.V 2), E.Tensor(0,[E.V 4]),E.Tensor(1,[E.V 5]),E.Tensor(2,[E.V 2])])  
 val R12p= E.Sum([E.V 1, E.V 2,E.V 3, E.V 4, E.V 5],E.Prod[E.Delta(E.V 1, E.V 2), E.Tensor(0,[E.V 4]),E.Tensor(1,[E.V 5]),E.Tensor(2,[E.V 7])])  
 val R12q= E.Sum([E.V 1, E.V 2,E.V 3, E.V 4, E.V 5],E.Prod[E.Delta(E.V 1, E.V 2), E.Tensor(0,[E.V 4]),E.Tensor(1,[E.V 5]),E.Tensor(2,[E.V 7]),E.Tensor(3,[E.V 8])])  
 val R12r= E.Sum([E.V 1, E.V 2,E.V 3, E.V 4, E.V 5],E.Prod[E.Delta(E.V 1, E.V 2), E.Tensor(0,[E.V 4]),E.Tensor(1,[E.V 5]),E.Tensor(2,[E.V 2]),E.Tensor(3,[E.V 8])])  
   
   
   
 (*13 Partial_i Dels(i, j)=> E.Partial(j)*)  
 val R13=E.Apply(E.Partial([E.V 0]),E.Prod[E.Tensor(1,[E.V 1]),E.Delta(E.V 1,E.V 0),E.Tensor(0,[E.V 1])])  
 val R13b=E.Sum([E.V 0, E.V 1],E.Apply(E.Partial([E.V 0]),E.Prod[E.Delta(E.V 1,E.V 0),E.Tensor(0,[E.V 1])]))  
 val R13c=E.Sum([E.V 0, E.V 1],E.Apply(E.Partial([E.V 0]),E.Prod[E.Delta(E.V 1,E.V 0),E.Field(0,[E.V 1])]))  
   
 (*R14 Eps_ijk Partial_ij*)  
 val R14=E.Sum([E.V 0, E.V 1, E.V 2],E.Apply(E.Partial([E.V 1, E.V 0]),E.Prod[E.Epsilon(0,1,2),E.Tensor(0,[E.V 1])]))  
 val R14b=E.Sum([E.V 0, E.V 1, E.V 2],E.Apply(E.Partial([E.V 2, E.V 1]),E.Prod[E.Epsilon(0,1,2),E.Tensor(0,[E.V 1])]))  
 val R14c=E.Sum([E.V 0, E.V 1, E.V 2],E.Apply(E.Partial([E.V 0, E.V 2]),E.Prod[E.Epsilon(0,1,2),E.Tensor(0,[E.V 1])]))  
159    
160    
 (*-----Test more complicated terms in Normalize Function:normalize.sml---------------*)  
161    
162    
163  end;  end;

Legend:
Removed from v.2495  
changed lines
  Added in v.2496

root@smlnj-gforge.cs.uchicago.edu
ViewVC Help
Powered by ViewVC 1.0.0