-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathtedet.f90
165 lines (164 loc) · 8.91 KB
/
tedet.f90
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
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
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
!**************************************************************
!* AceGen 6.808 Linux (6 Sep 16) *
!* Co. J. Korelc 2013 7 Mar 20 20:19:42 *
!**************************************************************
! User : Full professional version
! Notebook : tedet
! Evaluation time : 5 s Mode : Optimal
! Number of formulae : 78 Method: Automatic
! Subroutine : tedet size: 4398
! Total size of Mathematica code : 4398 subexpressions
! Total size of Fortran code : 8527 bytes
!******************* S U B R O U T I N E **********************
SUBROUTINE tedet(v,qn,c,se,dsedgamma,dsedc,dtedgamma,dtedc)
USE SMSUtility
IMPLICIT NONE
DOUBLE PRECISION v(321),qn(3,3),c(6),se(6),dsedgamma(6),dsedc(6,6),dtedgamma(3,3),dtedc(3,3,6)
v(316)=c(5)*qn(1,1)+c(6)*qn(2,1)+c(3)*qn(3,1)
v(315)=c(4)*qn(1,1)+c(2)*qn(2,1)+c(6)*qn(3,1)
v(314)=c(5)*qn(1,2)+c(6)*qn(2,2)+c(3)*qn(3,2)
v(313)=c(4)*qn(1,2)+c(2)*qn(2,2)+c(6)*qn(3,2)
v(312)=c(1)*qn(1,1)+c(4)*qn(2,1)+c(5)*qn(3,1)
v(311)=c(1)*qn(1,2)+c(4)*qn(2,2)+c(5)*qn(3,2)
v(310)=qn(3,1)*qn(3,3)
v(309)=qn(1,3)*qn(3,1)+qn(1,1)*qn(3,3)
v(308)=qn(2,3)*qn(3,1)+qn(2,1)*qn(3,3)
v(307)=qn(3,2)*qn(3,3)
v(306)=qn(1,3)*qn(3,2)+qn(1,2)*qn(3,3)
v(305)=qn(2,3)*qn(3,2)+qn(2,2)*qn(3,3)
v(304)=qn(3,3)**2
v(303)=2d0*qn(1,3)*qn(3,3)
v(302)=2d0*qn(2,3)
v(301)=qn(3,1)*qn(3,2)
v(300)=qn(1,2)*qn(3,1)+qn(1,1)*qn(3,2)
v(299)=qn(2,2)*qn(3,1)+qn(2,1)*qn(3,2)
v(298)=qn(3,2)**2
v(297)=2d0*qn(1,2)*qn(3,2)
v(296)=2d0*qn(2,2)
v(295)=qn(3,1)**2
v(294)=2d0*qn(1,1)*qn(3,1)
v(293)=2d0*qn(2,1)
v(292)=qn(2,1)*qn(2,3)
v(291)=qn(1,3)*qn(2,1)+qn(1,1)*qn(2,3)
v(290)=qn(2,2)*qn(2,3)
v(289)=qn(1,3)*qn(2,2)+qn(1,2)*qn(2,3)
v(288)=qn(2,3)**2
v(287)=qn(1,3)*v(302)
v(286)=qn(2,1)*qn(2,2)
v(285)=qn(1,2)*qn(2,1)+qn(1,1)*qn(2,2)
v(284)=qn(2,2)**2
v(283)=qn(1,2)*v(296)
v(282)=qn(2,1)**2
v(281)=qn(1,1)*v(293)
v(280)=qn(1,1)*qn(1,3)
v(279)=qn(1,2)*qn(1,3)
v(278)=qn(1,3)**2
v(277)=qn(1,1)*qn(1,2)
v(276)=qn(1,2)**2
v(275)=qn(1,1)**2
v(169)=qn(3,1)*v(293)
v(199)=qn(3,2)*v(296)
v(217)=qn(3,3)*v(302)
v(128)=qn(1,1)*v(312)+qn(2,1)*v(315)+qn(3,1)*v(316)
v(132)=qn(1,2)*v(312)+qn(2,2)*v(315)+qn(3,2)*v(316)
v(181)=dsedc(4,6)*v(132)+se(4)*v(299)
v(180)=dsedc(4,5)*v(132)+se(4)*v(300)
v(179)=dsedc(4,4)*v(132)+se(4)*v(285)
v(178)=dsedc(4,3)*v(132)+se(4)*v(301)
v(177)=dsedc(4,2)*v(132)+se(4)*v(286)
v(176)=dsedc(4,1)*v(132)+se(4)*v(277)
v(152)=dsedgamma(4)*v(132)
v(144)=se(4)*v(132)
v(133)=qn(1,3)*v(312)+qn(2,3)*v(315)+qn(3,3)*v(316)
v(193)=dsedc(5,6)*v(133)+se(5)*v(308)
v(192)=dsedc(5,5)*v(133)+se(5)*v(309)
v(191)=dsedc(5,4)*v(133)+se(5)*v(291)
v(190)=dsedc(5,3)*v(133)+se(5)*v(310)
v(189)=dsedc(5,2)*v(133)+se(5)*v(292)
v(188)=dsedc(5,1)*v(133)+se(5)*v(280)
v(153)=dsedgamma(5)*v(133)
v(149)=se(5)*v(133)
v(134)=qn(1,2)*v(311)+qn(2,2)*v(313)+qn(3,2)*v(314)
v(138)=qn(1,3)*v(311)+qn(2,3)*v(313)+qn(3,3)*v(314)
v(211)=dsedc(6,6)*v(138)+se(6)*v(305)
v(210)=dsedc(6,5)*v(138)+se(6)*v(306)
v(209)=dsedc(6,4)*v(138)+se(6)*v(289)
v(208)=dsedc(6,3)*v(138)+se(6)*v(307)
v(207)=dsedc(6,2)*v(138)+se(6)*v(290)
v(206)=dsedc(6,1)*v(138)+se(6)*v(279)
v(154)=dsedgamma(6)*v(138)
v(150)=se(6)*v(138)
v(139)=c(6)*v(217)+c(1)*v(278)+c(4)*v(287)+c(2)*v(288)+c(5)*v(303)+c(3)*v(304)
te(1,1)=se(1)*v(128)+v(144)+v(149)
te(1,2)=se(4)*v(128)+se(2)*v(132)+se(6)*v(133)
te(1,3)=se(5)*v(128)+se(6)*v(132)+se(3)*v(133)
te(2,1)=se(1)*v(132)+se(4)*v(134)+se(5)*v(138)
te(2,2)=se(2)*v(134)+v(144)+v(150)
te(2,3)=se(5)*v(132)+se(6)*v(134)+se(3)*v(138)
te(3,1)=se(1)*v(133)+se(4)*v(138)+se(5)*v(139)
te(3,2)=se(4)*v(133)+se(2)*v(138)+se(6)*v(139)
te(3,3)=se(3)*v(139)+v(149)+v(150)
dtedgamma(1,1)=dsedgamma(1)*v(128)+v(152)+v(153)
dtedgamma(1,2)=dsedgamma(4)*v(128)+dsedgamma(2)*v(132)+dsedgamma(6)*v(133)
dtedgamma(1,3)=dsedgamma(5)*v(128)+dsedgamma(6)*v(132)+dsedgamma(3)*v(133)
dtedgamma(2,1)=dsedgamma(1)*v(132)+dsedgamma(4)*v(134)+dsedgamma(5)*v(138)
dtedgamma(2,2)=dsedgamma(2)*v(134)+v(152)+v(154)
dtedgamma(2,3)=dsedgamma(5)*v(132)+dsedgamma(6)*v(134)+dsedgamma(3)*v(138)
dtedgamma(3,1)=dsedgamma(1)*v(133)+dsedgamma(4)*v(138)+dsedgamma(5)*v(139)
dtedgamma(3,2)=dsedgamma(4)*v(133)+dsedgamma(2)*v(138)+dsedgamma(6)*v(139)
dtedgamma(3,3)=dsedgamma(3)*v(139)+v(153)+v(154)
dtedc(1,1,1)=dsedc(1,1)*v(128)+v(176)+v(188)+se(1)*v(275)
dtedc(1,1,2)=dsedc(1,2)*v(128)+v(177)+v(189)+se(1)*v(282)
dtedc(1,1,3)=dsedc(1,3)*v(128)+v(178)+v(190)+se(1)*v(295)
dtedc(1,1,4)=dsedc(1,4)*v(128)+v(179)+v(191)+se(1)*v(281)
dtedc(1,1,5)=dsedc(1,5)*v(128)+v(180)+v(192)+se(1)*v(294)
dtedc(1,1,6)=dsedc(1,6)*v(128)+se(1)*v(169)+v(181)+v(193)
dtedc(1,2,1)=dsedc(4,1)*v(128)+dsedc(2,1)*v(132)+dsedc(6,1)*v(133)+se(4)*v(275)+se(2)*v(277)+se(6)*v(280)
dtedc(1,2,2)=dsedc(4,2)*v(128)+dsedc(2,2)*v(132)+dsedc(6,2)*v(133)+se(4)*v(282)+se(2)*v(286)+se(6)*v(292)
dtedc(1,2,3)=dsedc(4,3)*v(128)+dsedc(2,3)*v(132)+dsedc(6,3)*v(133)+se(4)*v(295)+se(2)*v(301)+se(6)*v(310)
dtedc(1,2,4)=dsedc(4,4)*v(128)+dsedc(2,4)*v(132)+dsedc(6,4)*v(133)+se(4)*v(281)+se(2)*v(285)+se(6)*v(291)
dtedc(1,2,5)=dsedc(4,5)*v(128)+dsedc(2,5)*v(132)+dsedc(6,5)*v(133)+se(4)*v(294)+se(2)*v(300)+se(6)*v(309)
dtedc(1,2,6)=dsedc(4,6)*v(128)+dsedc(2,6)*v(132)+dsedc(6,6)*v(133)+se(4)*v(169)+se(2)*v(299)+se(6)*v(308)
dtedc(1,3,1)=dsedc(5,1)*v(128)+dsedc(6,1)*v(132)+dsedc(3,1)*v(133)+se(5)*v(275)+se(6)*v(277)+se(3)*v(280)
dtedc(1,3,2)=dsedc(5,2)*v(128)+dsedc(6,2)*v(132)+dsedc(3,2)*v(133)+se(5)*v(282)+se(6)*v(286)+se(3)*v(292)
dtedc(1,3,3)=dsedc(5,3)*v(128)+dsedc(6,3)*v(132)+dsedc(3,3)*v(133)+se(5)*v(295)+se(6)*v(301)+se(3)*v(310)
dtedc(1,3,4)=dsedc(5,4)*v(128)+dsedc(6,4)*v(132)+dsedc(3,4)*v(133)+se(5)*v(281)+se(6)*v(285)+se(3)*v(291)
dtedc(1,3,5)=dsedc(5,5)*v(128)+dsedc(6,5)*v(132)+dsedc(3,5)*v(133)+se(5)*v(294)+se(6)*v(300)+se(3)*v(309)
dtedc(1,3,6)=dsedc(5,6)*v(128)+dsedc(6,6)*v(132)+dsedc(3,6)*v(133)+se(5)*v(169)+se(6)*v(299)+se(3)*v(308)
dtedc(2,1,1)=dsedc(1,1)*v(132)+dsedc(4,1)*v(134)+dsedc(5,1)*v(138)+se(4)*v(276)+se(1)*v(277)+se(5)*v(279)
dtedc(2,1,2)=dsedc(1,2)*v(132)+dsedc(4,2)*v(134)+dsedc(5,2)*v(138)+se(4)*v(284)+se(1)*v(286)+se(5)*v(290)
dtedc(2,1,3)=dsedc(1,3)*v(132)+dsedc(4,3)*v(134)+dsedc(5,3)*v(138)+se(4)*v(298)+se(1)*v(301)+se(5)*v(307)
dtedc(2,1,4)=dsedc(1,4)*v(132)+dsedc(4,4)*v(134)+dsedc(5,4)*v(138)+se(4)*v(283)+se(1)*v(285)+se(5)*v(289)
dtedc(2,1,5)=dsedc(1,5)*v(132)+dsedc(4,5)*v(134)+dsedc(5,5)*v(138)+se(4)*v(297)+se(1)*v(300)+se(5)*v(306)
dtedc(2,1,6)=dsedc(1,6)*v(132)+dsedc(4,6)*v(134)+dsedc(5,6)*v(138)+se(4)*v(199)+se(1)*v(299)+se(5)*v(305)
dtedc(2,2,1)=dsedc(2,1)*v(134)+v(176)+v(206)+se(2)*v(276)
dtedc(2,2,2)=dsedc(2,2)*v(134)+v(177)+v(207)+se(2)*v(284)
dtedc(2,2,3)=dsedc(2,3)*v(134)+v(178)+v(208)+se(2)*v(298)
dtedc(2,2,4)=dsedc(2,4)*v(134)+v(179)+v(209)+se(2)*v(283)
dtedc(2,2,5)=dsedc(2,5)*v(134)+v(180)+v(210)+se(2)*v(297)
dtedc(2,2,6)=dsedc(2,6)*v(134)+v(181)+se(2)*v(199)+v(211)
dtedc(2,3,1)=dsedc(5,1)*v(132)+dsedc(6,1)*v(134)+dsedc(3,1)*v(138)+se(6)*v(276)+se(5)*v(277)+se(3)*v(279)
dtedc(2,3,2)=dsedc(5,2)*v(132)+dsedc(6,2)*v(134)+dsedc(3,2)*v(138)+se(6)*v(284)+se(5)*v(286)+se(3)*v(290)
dtedc(2,3,3)=dsedc(5,3)*v(132)+dsedc(6,3)*v(134)+dsedc(3,3)*v(138)+se(6)*v(298)+se(5)*v(301)+se(3)*v(307)
dtedc(2,3,4)=dsedc(5,4)*v(132)+dsedc(6,4)*v(134)+dsedc(3,4)*v(138)+se(6)*v(283)+se(5)*v(285)+se(3)*v(289)
dtedc(2,3,5)=dsedc(5,5)*v(132)+dsedc(6,5)*v(134)+dsedc(3,5)*v(138)+se(6)*v(297)+se(5)*v(300)+se(3)*v(306)
dtedc(2,3,6)=dsedc(5,6)*v(132)+dsedc(6,6)*v(134)+dsedc(3,6)*v(138)+se(6)*v(199)+se(5)*v(299)+se(3)*v(305)
dtedc(3,1,1)=dsedc(1,1)*v(133)+dsedc(4,1)*v(138)+dsedc(5,1)*v(139)+se(5)*v(278)+se(4)*v(279)+se(1)*v(280)
dtedc(3,1,2)=dsedc(1,2)*v(133)+dsedc(4,2)*v(138)+dsedc(5,2)*v(139)+se(5)*v(288)+se(4)*v(290)+se(1)*v(292)
dtedc(3,1,3)=dsedc(1,3)*v(133)+dsedc(4,3)*v(138)+dsedc(5,3)*v(139)+se(5)*v(304)+se(4)*v(307)+se(1)*v(310)
dtedc(3,1,4)=dsedc(1,4)*v(133)+dsedc(4,4)*v(138)+dsedc(5,4)*v(139)+se(5)*v(287)+se(4)*v(289)+se(1)*v(291)
dtedc(3,1,5)=dsedc(1,5)*v(133)+dsedc(4,5)*v(138)+dsedc(5,5)*v(139)+se(5)*v(303)+se(4)*v(306)+se(1)*v(309)
dtedc(3,1,6)=dsedc(1,6)*v(133)+dsedc(4,6)*v(138)+dsedc(5,6)*v(139)+se(5)*v(217)+se(4)*v(305)+se(1)*v(308)
dtedc(3,2,1)=dsedc(4,1)*v(133)+dsedc(2,1)*v(138)+dsedc(6,1)*v(139)+se(6)*v(278)+se(2)*v(279)+se(4)*v(280)
dtedc(3,2,2)=dsedc(4,2)*v(133)+dsedc(2,2)*v(138)+dsedc(6,2)*v(139)+se(6)*v(288)+se(2)*v(290)+se(4)*v(292)
dtedc(3,2,3)=dsedc(4,3)*v(133)+dsedc(2,3)*v(138)+dsedc(6,3)*v(139)+se(6)*v(304)+se(2)*v(307)+se(4)*v(310)
dtedc(3,2,4)=dsedc(4,4)*v(133)+dsedc(2,4)*v(138)+dsedc(6,4)*v(139)+se(6)*v(287)+se(2)*v(289)+se(4)*v(291)
dtedc(3,2,5)=dsedc(4,5)*v(133)+dsedc(2,5)*v(138)+dsedc(6,5)*v(139)+se(6)*v(303)+se(2)*v(306)+se(4)*v(309)
dtedc(3,2,6)=dsedc(4,6)*v(133)+dsedc(2,6)*v(138)+dsedc(6,6)*v(139)+se(6)*v(217)+se(2)*v(305)+se(4)*v(308)
dtedc(3,3,1)=dsedc(3,1)*v(139)+v(188)+v(206)+se(3)*v(278)
dtedc(3,3,2)=dsedc(3,2)*v(139)+v(189)+v(207)+se(3)*v(288)
dtedc(3,3,3)=dsedc(3,3)*v(139)+v(190)+v(208)+se(3)*v(304)
dtedc(3,3,4)=dsedc(3,4)*v(139)+v(191)+v(209)+se(3)*v(287)
dtedc(3,3,5)=dsedc(3,5)*v(139)+v(192)+v(210)+se(3)*v(303)
dtedc(3,3,6)=dsedc(3,6)*v(139)+v(193)+v(211)+se(3)*v(217)
END