$SPAD/src/input carten.input

Timothy Daly December 3, 2016

Abstract

Contents

2

1 License

— license —

--Copyright The Numerical Algorithms Group Limited 1991.

———-

— * —

)set break resume
)spool carten.output
)set message test on
)set message auto off
)clear all
-- Input generated from CartesianTensorXmpPage
--S 1 of 48
CT := CARTEN(i0 := 1, 2, Integer)
--R
--R
--R   (1)  CartesianTensor(1,2,Integer)
--R                                                                 Type: Domain
--E 1
--S 2 of 48
t0: CT := 8
--R
--R
--R   (2)  8
--R                                           Type: CartesianTensor(1,2,Integer)
--E 2
--S 3 of 48
rank t0
--R
--R
--R   (3)  0
--R                                                     Type: NonNegativeInteger
--E 3
--S 4 of 48
v: DirectProduct(2, Integer) := directProduct [3,4]
--R
--R
--R   (4)  [3,4]
--R                                               Type: DirectProduct(2,Integer)
--E 4

--S 5 of 48
Tv: CT := v
--R
--R
--R   (5)  [3,4]
--R                                           Type: CartesianTensor(1,2,Integer)
--E 5
--S 6 of 48
m: SquareMatrix(2, Integer) := matrix [[1,2],[4,5]]
--R
--R
--R        +1  2+
--R   (6)  |    |
--R        +4  5+
--R                                                Type: SquareMatrix(2,Integer)
--E 6
--S 7 of 48
Tm: CT := m
--R
--R
--R        +1  2+
--R   (7)  |    |
--R        +4  5+
--R                                           Type: CartesianTensor(1,2,Integer)
--E 7
--S 8 of 48
n: SquareMatrix(2, Integer) := matrix [[2,3],[0,1]]
--R
--R
--R        +2  3+
--R   (8)  |    |
--R        +0  1+
--R                                                Type: SquareMatrix(2,Integer)
--E 8
--S 9 of 48
Tn: CT := n
--R
--R
--R        +2  3+
--R   (9)  |    |
--R        +0  1+
--R                                           Type: CartesianTensor(1,2,Integer)
--E 9
--S 10 of 48
t1: CT := [2, 3]

--R
--R
--R   (10)  [2,3]
--R                                           Type: CartesianTensor(1,2,Integer)
--E 10
--S 11 of 48
rank t1
--R
--R
--R   (11)  1
--R                                                        Type: PositiveInteger
--E 11
--S 12 of 48
t2: CT := [t1, t1]
--R
--R
--R         +2  3+
--R   (12)  |    |
--R         +2  3+
--R                                           Type: CartesianTensor(1,2,Integer)
--E 12
--S 13 of 48
t3: CT := [t2, t2]
--R
--R
--R          +2  3+ +2  3+
--R   (13)  [|    |,|    |]
--R          +2  3+ +2  3+
--R                                           Type: CartesianTensor(1,2,Integer)
--E 13
--S 14 of 48
tt: CT := [t3, t3]; tt := [tt, tt]
--R
--R
--R          ++2  3+  +2  3++ ++2  3+  +2  3++
--R          ||    |  |    || ||    |  |    ||
--R          |+2  3+  +2  3+| |+2  3+  +2  3+|
--R   (14)  [|              |,|              |]
--R          |+2  3+  +2  3+| |+2  3+  +2  3+|
--R          ||    |  |    || ||    |  |    ||
--R          ++2  3+  +2  3++ ++2  3+  +2  3++
--R                                           Type: CartesianTensor(1,2,Integer)
--E 14
--S 15 of 48
rank tt

--R
--R
--R   (15)  5
--R                                                        Type: PositiveInteger
--E 15
--S 16 of 48
Tmn := product(Tm, Tn)
--R
--R
--R         ++2  3+    +4  6+ +
--R         ||    |    |    | |
--R         |+0  1+    +0  2+ |
--R   (16)  |                 |
--R         |+8  12+  +10  15+|
--R         ||     |  |      ||
--R         ++0  4 +  +0   5 ++
--R                                           Type: CartesianTensor(1,2,Integer)
--E 16
--S 17 of 48
Tmv := contract(Tm,2,Tv,1)
--R
--R
--R   (17)  [11,32]
--R                                           Type: CartesianTensor(1,2,Integer)
--E 17
--S 18 of 48
Tm*Tv
--R
--R
--R   (18)  [11,32]
--R                                           Type: CartesianTensor(1,2,Integer)
--E 18
--S 19 of 48
Tmv = m * v
--R
--R
--R   (19)  [11,32]= [11,32]
--R                                 Type: Equation(CartesianTensor(1,2,Integer))
--E 19
--S 20 of 48
t0()
--R
--R
--R   (20)  8
--R                                                        Type: PositiveInteger

--E 20
--S 21 of 48
t1(1+1)
--R
--R
--R   (21)  3
--R                                                        Type: PositiveInteger
--E 21
--S 22 of 48
t2(2,1)
--R
--R
--R   (22)  2
--R                                                        Type: PositiveInteger
--E 22
--S 23 of 48
t3(2,1,2)
--R
--R
--R   (23)  3
--R                                                        Type: PositiveInteger
--E 23
--S 24 of 48
Tmn(2,1,2,1)
--R
--R
--R   (24)  0
--R                                                     Type: NonNegativeInteger
--E 24
--S 25 of 48
t0[]
--R
--R
--R   (25)  8
--R                                                        Type: PositiveInteger
--E 25
--S 26 of 48
t1[2]
--R
--R
--R   (26)  3
--R                                                        Type: PositiveInteger
--E 26

--S 27 of 48
t2[2,1]
--R
--R
--R   (27)  2
--R                                                        Type: PositiveInteger
--E 27
--S 28 of 48
t3[2,1,2]
--R
--R
--R   (28)  3
--R                                                        Type: PositiveInteger
--E 28
--S 29 of 48
Tmn[2,1,2,1]
--R
--R
--R   (29)  0
--R                                                     Type: NonNegativeInteger
--E 29
--S 30 of 48
cTmn := contract(Tmn,1,2)
--R
--R
--R         +12  18+
--R   (30)  |      |
--R         +0   6 +
--R                                           Type: CartesianTensor(1,2,Integer)
--E 30
--S 31 of 48
trace(m) * n
--R
--R
--R         +12  18+
--R   (31)  |      |
--R         +0   6 +
--R                                                Type: SquareMatrix(2,Integer)
--E 31
--S 32 of 48
contract(Tmn,1,2) = trace(m) * n
--R
--R
--R         +12  18+  +12  18+
--R   (32)  |      |= |      |

--R         +0   6 +  +0   6 +
--R                                 Type: Equation(CartesianTensor(1,2,Integer))
--E 32
--S 33 of 48
contract(Tmn,1,3) = transpose(m) * n
--R
--R
--R         +2  7 +  +2  7 +
--R   (33)  |     |= |     |
--R         +4  11+  +4  11+
--R                                 Type: Equation(CartesianTensor(1,2,Integer))
--E 33
--S 34 of 48
contract(Tmn,1,4) = transpose(m) * transpose(n)
--R
--R
--R         +14  4+  +14  4+
--R   (34)  |     |= |     |
--R         +19  5+  +19  5+
--R                                 Type: Equation(CartesianTensor(1,2,Integer))
--E 34
--S 35 of 48
contract(Tmn,2,3) = m * n
--R
--R
--R         +2  5 +  +2  5 +
--R   (35)  |     |= |     |
--R         +8  17+  +8  17+
--R                                 Type: Equation(CartesianTensor(1,2,Integer))
--E 35
--S 36 of 48
contract(Tmn,2,4) = m * transpose(n)
--R
--R
--R         +8   2+  +8   2+
--R   (36)  |     |= |     |
--R         +23  5+  +23  5+
--R                                 Type: Equation(CartesianTensor(1,2,Integer))
--E 36
--S 37 of 48
contract(Tmn,3,4) = trace(n) * m
--R
--R
--R         +3   6 +  +3   6 +
--R   (37)  |      |= |      |

--S 38 of 48
tTmn := transpose(Tmn,1,3)
--R
--R
--R         ++2  3 +  +4   6 ++
--R         ||     |  |      ||
--R         |+8  12+  +10  15+|
--R   (38)  |                 |
--R         |+0  1+    +0  2+ |
--R         ||    |    |    | |
--R         ++0  4+    +0  5+ +
--R                                           Type: CartesianTensor(1,2,Integer)
--E 38
--S 39 of 48
transpose Tmn
--R
--R
--R         ++2  8+   +4  10++
--R         ||    |   |     ||
--R         |+0  0+   +0  0 +|
--R   (39)  |                |
--R         |+3  12+  +6  15+|
--R         ||     |  |     ||
--R         ++1  4 +  +2  5 ++
--R                                           Type: CartesianTensor(1,2,Integer)
--E 39
--S 40 of 48
transpose Tm = transpose m
--R
--R
--R         +1  4+  +1  4+
--R   (40)  |    |= |    |
--R         +2  5+  +2  5+
--R                                 Type: Equation(CartesianTensor(1,2,Integer))
--E 40
--S 41 of 48
rTmn := reindex(Tmn, [1,4,2,3])
--R
--R
--R         ++2  0+   +3  1+ +
--R         ||    |   |    | |
--R         |+4  0+   +6  2+ |
--R   (41)  |                |

--R         |+8   0+  +12  4+|
--R         ||     |  |     ||
--R         ++10  0+  +15  5++
--R                                           Type: CartesianTensor(1,2,Integer)
--E 41
--S 42 of 48
tt := transpose(Tm)*Tn - Tn*transpose(Tm)
--R
--R
--R         +- 6  - 16+
--R   (42)  |         |
--R         + 2    6  +
--R                                           Type: CartesianTensor(1,2,Integer)
--E 42
--S 43 of 48
Tv*(tt+Tn)
--R
--R
--R   (43)  [- 4,- 11]
--R                                           Type: CartesianTensor(1,2,Integer)
--E 43
--S 44 of 48
reindex(product(Tn,Tn),[4,3,2,1])+3*Tn*product(Tm,Tm)
--R
--R
--R         ++46   84 +  +57   114++
--R         ||        |  |        ||
--R         |+174  212+  +228  285+|
--R   (44)  |                      |
--R         | +18  24+    +17  30+ |
--R         | |      |    |      | |
--R         + +57  63+    +63  76+ +
--R                                           Type: CartesianTensor(1,2,Integer)
--E 44
--S 45 of 48
delta:  CT := kroneckerDelta()
--R
--R
--R         +1  0+
--R   (45)  |    |
--R         +0  1+
--R                                           Type: CartesianTensor(1,2,Integer)
--E 45
--S 46 of 48
contract(Tmn, 2, delta, 1) = reindex(Tmn, [1,3,4,2])

--R
--R
--R         + +2  4+   +0  0++  + +2  4+   +0  0++
--R         | |    |   |    ||  | |    |   |    ||
--R         | +3  6+   +1  2+|  | +3  6+   +1  2+|
--R   (46)  |                |= |                |
--R         |+8   10+  +0  0+|  |+8   10+  +0  0+|
--R         ||      |  |    ||  ||      |  |    ||
--R         ++12  15+  +4  5++  ++12  15+  +4  5++
--R                                 Type: Equation(CartesianTensor(1,2,Integer))
--E 46
--S 47 of 48
epsilon:CT := leviCivitaSymbol()
--R
--R
--R         + 0   1+
--R   (47)  |      |
--R         +- 1  0+
--R                                           Type: CartesianTensor(1,2,Integer)
--E 47
--S 48 of 48
contract(epsilon*Tm*epsilon, 1,2) = 2 * determinant m
--R
--R
--R   (48)  - 6= - 6
--R                                 Type: Equation(CartesianTensor(1,2,Integer))
--E 48
)spool
)lisp (bye)

———-

References^{[1] nothing}

13