aboutsummaryrefslogtreecommitdiff
path: root/src/gr.cg/expansion.c
blob: 65f3677f438bca028a48cae3b62c763e206f27df (plain)
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
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
/*
 * inputs = {r, partial_d_ln_sqrt_g, partial_d_g_uu, X_ud, X_udd, g_uu, K_uu, h}
 * outputs = {Theta_A, Theta_B, Theta_C, Theta_D}
 * cost = 134*assignments+401*multiplications+3*divisions+5*functions+173*additions
 */
fp t1, t2, t3, t5, t6, t8, t9, t11, t12, t14;
fp t15, t17, t19, t25, t26, t27, t29, t31, t34, t35;
fp t37, t39, t40, t42, t44, t46, t47, t49, t56, t61;
fp t63, t65, t66, t67, t82, t93, t98, t100, t102, t106;
fp t107, t110, t111, t112, t116, t119, t120, t121, t123, t124;
fp t127, t128, t129, t130, t131, t133, t134, t135, t137, t138;
fp t139, t141, t142, t143, t148, t149, t150, t153, t154, t155;
fp t158, t159, t160, t163, t164, t167, t168, t171, t172, t177;
fp t181, t182, t185, t186, t189, t191, t197, t198, t200, t205;
fp t220, t224, t232, t239, t266, t273, t276, t280, t283, t289;
fp t292, t302, t303, t306, t307, t310, t311, t314, t317, t326;
fp t330, t334, t337, t340, t343, t353, t355, t356, t360, t362;
fp t366, t382, t387, t394, t431, t440, t444, t447, t450, t465;
      t1 = g_uu_13;
      t2 = t1*t1;
      t3 = 1/r;
      t5 = X_ud_13;
      t6 = PARTIAL_RHO(h);
      t8 = X_ud_23;
      t9 = PARTIAL_SIGMA(h);
      t11 = zz*t3-t5*t6-t8*t9;
      t12 = t11*t11;
      t14 = yy*yy;
      t15 = zz*zz;
      t17 = r*r;
      t19 = 1/t17/r;
      t25 = X_ud_11;
      t26 = t25*t25;
      t27 = PARTIAL_RHO_RHO(h);
      t29 = X_ud_21;
      t31 = PARTIAL_RHO_SIGMA(h);
      t34 = t29*t29;
      t35 = PARTIAL_SIGMA_SIGMA(h);
      t37 = (t14+t15)*t19-X_udd_111*t6-X_udd_211*t9-t26*t27-2.0*t29*t25*t31-t34
*t35;
      t39 = g_uu_23;
      t40 = t39*t39;
      t42 = X_ud_12;
      t44 = X_ud_22;
      t46 = yy*t3-t42*t6-t44*t9;
      t47 = t46*t46;
      t49 = xx*xx;
      t56 = t5*t5;
      t61 = t8*t8;
      t63 = (t49+t14)*t19-X_udd_133*t6-X_udd_233*t9-t56*t27-2.0*t8*t5*t31-t61*
t35;
      t65 = t1*t11;
      t66 = g_uu_22;
      t67 = t66*t46;
      t82 = -xx*yy*t19-X_udd_112*t6-X_udd_212*t9-t25*t42*t27-t29*t42*t31-t25*
t44*t31-t29*t44*t35;
      t93 = t42*t42;
      t98 = t44*t44;
      t100 = (t49+t15)*t19-X_udd_122*t6-X_udd_222*t9-t93*t27-2.0*t44*t42*t31-
t98*t35;
      t102 = t39*t11;
      t106 = t1*t12;
      t107 = partial_d_g_uu_123;
      t110 = g_uu_12;
      t111 = t110*t47;
      t112 = partial_d_g_uu_112;
      t116 = xx*t3-t25*t6-t29*t9;
      t119 = t66*t47;
      t120 = partial_d_g_uu_212;
      t121 = t120*t116;
      t123 = t39*t47;
      t124 = partial_d_g_uu_312;
      t127 = g_uu_11;
      t128 = t116*t116;
      t129 = t127*t128;
      t130 = partial_d_g_uu_113;
      t131 = t130*t11;
      t133 = t1*t128;
      t134 = partial_d_g_uu_313;
      t135 = t134*t11;
      t137 = g_uu_33;
      t138 = t137*t12;
      t139 = t134*t116;
      t141 = -t2*t12*t37-t40*t47*t63-2.0*t65*t67*t82-t40*t12*t100-2.0*t102*t67*
t100-t106*t107*t46-t111*t112*t116-t119*t121-t123*t124*t116-t129*t131-t133*t135-
t138*t139;
      t142 = t39*t12;
      t143 = partial_d_g_uu_213;
      t148 = t1*t116;
      t149 = partial_d_g_uu_322;
      t150 = t149*t47;
      t153 = t110*t116;
      t154 = partial_d_g_uu_222;
      t155 = t154*t47;
      t158 = t127*t116;
      t159 = partial_d_g_uu_122;
      t160 = t159*t47;
      t163 = partial_d_g_uu_333;
      t164 = t163*t12;
      t167 = partial_d_g_uu_133;
      t168 = t167*t12;
      t171 = partial_d_g_uu_233;
      t172 = t171*t12;
      t177 = t110*t46;
      t181 = partial_d_g_uu_323;
      t182 = t181*t11;
      t185 = t137*t11;
      t186 = t124*t46;
      t189 = -t142*t143*t116-t106*t130*t116+RATIONAL(-1.0,2.0)*t148*t150+
RATIONAL(-1.0,2.0)*t153*t155+RATIONAL(-1.0,2.0)*t158*t160+RATIONAL(-1.0,2.0)*
t148*t164+RATIONAL(-1.0,2.0)*t158*t168+RATIONAL(-1.0,2.0)*t153*t172+RATIONAL(
-1.0,2.0)*t65*t160-2.0*t65*t177*t37-t148*t182*t46-t185*t186*t116;
      t191 = t127*t127;
      t197 = t110*t128;
      t198 = t143*t11;
      t200 = t137*t137;
      t205 = t39*t46;
      t220 = -xx*zz*t19-X_udd_113*t6-X_udd_213*t9-t25*t5*t27-t29*t5*t31-t25*t8*
t31-t29*t8*t35;
      t224 = t12*t11;
      t232 = t1*t220;
      t239 = -t191*t128*t37-2.0*t142*t1*t82-t197*t198-t200*t12*t63-t177*t131*
t116-2.0*t65*t205*t220+RATIONAL(-1.0,2.0)*t39*t224*t171-t67*t198*t116-t205*t135
*t116-2.0*t138*t232+RATIONAL(-1.0,2.0)*t205*t164+RATIONAL(-1.0,2.0)*t177*t168;
      t266 = -yy*zz*t19-X_udd_123*t6-X_udd_223*t9-t42*t5*t27-t44*t5*t31-t42*t8*
t31-t44*t8*t35;
      t273 = t110*t110;
      t276 = t47*t46;
      t280 = t39*t266;
      t283 = t158*t37;
      t289 = t148*t266;
      t292 = RATIONAL(-1.0,2.0)*t67*t172+RATIONAL(-1.0,2.0)*t185*t150+RATIONAL(
-1.0,2.0)*t102*t155-2.0*t197*t127*t82-2.0*t133*t127*t220-2.0*t133*t110*t266+
RATIONAL(-1.0,2.0)*t1*t224*t167-t273*t128*t100+RATIONAL(-1.0,2.0)*t39*t276*t149
-2.0*t138*t280-2.0*t65*t283+RATIONAL(-1.0,2.0)*t110*t276*t159-2.0*t67*t289;
      t302 = partial_d_g_uu_311;
      t303 = t302*t128;
      t306 = partial_d_g_uu_211;
      t307 = t306*t128;
      t310 = partial_d_g_uu_111;
      t311 = t310*t128;
      t314 = t148*t63;
      t317 = t153*t266;
      t326 = t107*t11;
      t330 = RATIONAL(-1.0,2.0)*t66*t276*t154-2.0*t273*t46*t116*t82+RATIONAL(
-1.0,2.0)*t205*t303+RATIONAL(-1.0,2.0)*t67*t307+RATIONAL(-1.0,2.0)*t177*t311
-2.0*t205*t314-2.0*t205*t317+RATIONAL(-1.0,2.0)*t185*t303+RATIONAL(-1.0,2.0)*
t102*t307+RATIONAL(-1.0,2.0)*t65*t311-t111*t326-t158*t326*t46;
      t334 = t158*t82;
      t337 = t110*t82;
      t340 = t158*t220;
      t343 = t153*t100;
      t353 = t112*t46;
      t355 = partial_d_g_uu_223;
      t356 = t355*t11;
      t360 = t120*t46;
      t362 = -2.0*t177*t148*t220-2.0*t67*t334-2.0*t119*t337-2.0*t205*t340-2.0*
t67*t343+RATIONAL(-1.0,2.0)*t137*t224*t163-t2*t128*t63-t273*t47*t37-t129*t353-
t119*t356-t123*t182-t133*t186-t197*t360;
      t366 = t181*t46;
      t382 = t66*t66;
      t387 = t128*t116;
      t394 = -t142*t355*t46-t138*t366-2.0*t177*t283-2.0*t123*t110*t220-2.0*t123
*t66*t266-t153*t356*t46-t65*t353*t116-t102*t360*t116-t382*t47*t100-2.0*t185*
t317+RATIONAL(-1.0,2.0)*t127*t387*t310+RATIONAL(-1.0,2.0)*t110*t387*t306;
      t431 = RATIONAL(-1.0,2.0)*t1*t387*t302-2.0*t2*t11*t116*t220-2.0*t185*t314
-2.0*t102*t289-2.0*t65*t153*t82-2.0*t185*t205*t63-2.0*t40*t11*t46*t266-2.0*t102
*t343-2.0*t102*t334-2.0*t185*t340-2.0*t102*t177*t82-2.0*t185*t67*t266-2.0*t185*
t177*t220;
      Theta_A = t141+t189+t239+t292+t330+t362+t394+t431;
      t440 = t310*t116+t121+t139+t353+t154*t46+t366+t131+t356+t163*t11+t127*t37
+2.0*t337+2.0*t232;
      t444 = partial_d_ln_sqrt_g_1;
      t447 = partial_d_ln_sqrt_g_2;
      t450 = partial_d_ln_sqrt_g_3;
      t465 = t66*t100+2.0*t280+t137*t63+t127*t444*t116+t110*t447*t116+t1*t450*
t116+t110*t444*t46+t66*t447*t46+t39*t450*t46+t1*t444*t11+t39*t447*t11+t137*t450
*t11;
      Theta_B = t440+t465;
      Theta_C = K_uu_11*t128+2.0*K_uu_12*t46*t116+2.0*K_uu_13*t11*t116+K_uu_22*
t47+2.0*K_uu_23*t11*t46+K_uu_33*t12;
      Theta_D = t129+2.0*t177*t116+2.0*t65*t116+t119+2.0*t102*t46+t138;