aboutsummaryrefslogtreecommitdiff
path: root/src/gr.cg
diff options
context:
space:
mode:
authorjthorn <jthorn@f88db872-0e4f-0410-b76b-b9085cfa78c5>2002-10-12 18:46:40 +0000
committerjthorn <jthorn@f88db872-0e4f-0410-b76b-b9085cfa78c5>2002-10-12 18:46:40 +0000
commit9b989e242ffb427900c6c1e49ccb3f4d9844f4b2 (patch)
treeaa50326efaefc74b6b0e294ddf256e2c4bad7d43 /src/gr.cg
parent6b0b9d5e079eae24e330cc304742d4d1131e481c (diff)
* expand NaN checks in gridfns to "is finite" checks
(also catchs +/-infinity) * move final stage of calculation of LHS function H(h) out of Maple-generated code (in src/gr.cg/) into hand-written code in src/gr/horizon_function.c (comput_H()) so we can check that HD > 0 before taking its sqrt. [HD <= 0 probably means the inerpolated g_ij isn't positive definite] * also systematize CCTK_VWarn() printing for various error conditions in horizon_function.c git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@829 f88db872-0e4f-0410-b76b-b9085cfa78c5
Diffstat (limited to 'src/gr.cg')
-rw-r--r--src/gr.cg/horizon_Jacobian.c1217
-rw-r--r--src/gr.cg/horizon_function.c338
2 files changed, 776 insertions, 779 deletions
diff --git a/src/gr.cg/horizon_Jacobian.c b/src/gr.cg/horizon_Jacobian.c
index 3d540e1..eff036b 100644
--- a/src/gr.cg/horizon_Jacobian.c
+++ b/src/gr.cg/horizon_Jacobian.c
@@ -1,55 +1,55 @@
/*
* inputs = {r, partial_d_ln_sqrt_g, partial_d_g_uu, X_ud, X_udd, g_uu, K_uu, h, HA, HB, HC, HD}
* outputs = {partial_H_wrt_partial_d_h, partial_H_wrt_partial_dd_h}
- * cost = 457*assignments+10*divisions+7*functions+1708*multiplications+729*additions
+ * cost = 457*assignments+10*divisions+7*functions+1685*multiplications+729*additions
*/
fp t1, t2, t4, t5, t7, t8, t10, t11, t12, t14;
-fp t16, t18, t19, t20, t21, t24, t26, t28, t30, t31;
-fp t32, t33, t34, t36, t38, t41, t43, t44, t46, t47;
-fp t50, t51, t53, t54, t57, t58, t61, t63, t67, t69;
-fp t73, t74, t77, t78, t79, t81, t82, t83, t84, t87;
-fp t89, t91, t93, t96, t98, t102, t103, t104, t105, t107;
-fp t108, t109, t112, t113, t116, t117, t118, t122, t123, t124;
-fp t130, t134, t136, t138, t141, t143, t147, t148, t149, t151;
-fp t154, t155, t156, t159, t160, t161, t164, t168, t172, t174;
-fp t178, t179, t182, t183, t184, t187, t188, t189, t192, t193;
-fp t194, t197, t198, t201, t203, t207, t208, t209, t212, t217;
-fp t218, t221, t223, t224, t226, t227, t228, t232, t236, t240;
-fp t241, t245, t246, t247, t250, t251, t253, t255, t256, t259;
-fp t260, t264, t268, t269, t272, t274, t275, t277, t280, t281;
-fp t287, t288, t292, t293, t297, t300, t304, t305, t306, t310;
-fp t311, t314, t317, t324, t327, t329, t330, t338, t340, t343;
-fp t344, t345, t349, t350, t359, t363, t365, t369, t373, t376;
-fp t383, t386, t393, t397, t398, t401, t404, t405, t407, t411;
-fp t415, t419, t423, t429, t430, t433, t435, t438, t441, t442;
-fp t445, t448, t449, t454, t457, t460, t465, t470, t472, t473;
-fp t476, t479, t488, t489, t491, t501, t502, t504, t506, t507;
-fp t508, t510, t514, t519, t520, t522, t523, t530, t531, t535;
-fp t539, t540, t543, t551, t552, t553, t559, t562, t570, t572;
-fp t573, t575, t578, t582, t584, t589, t602, t612, t615, t616;
-fp t617, t621, t624, t639, t640, t642, t647, t654, t665, t687;
-fp t688, t692, t695, t697, t699, t707, t710, t714, t717, t722;
-fp t724, t726, t745, t752, t754, t764, t773, t784, t789, t791;
-fp t796, t800, t801, t803, t804, t806, t807, t809, t811, t813;
-fp t815, t817, t819, t821, t823, t826, t828, t831, t833, t836;
-fp t839, t841, t844, t847, t851, t864, t873, t876, t879, t882;
-fp t884, t889, t893, t901, t908, t914, t918, t921, t922, t925;
-fp t935, t943, t947, t953, t955, t958, t968, t972, t981, t985;
-fp t988, t989, t992, t1002, t1008, t1017, t1020, t1028, t1047, t1050;
-fp t1062, t1065, t1067, t1070, t1078, t1081, t1082, t1084, t1086, t1088;
-fp t1095, t1098, t1100, t1106, t1136, t1137, t1138, t1148, t1165, t1170;
-fp t1197, t1205, t1221, t1225, t1227, t1234, t1240, t1253, t1255, t1257;
-fp t1260, t1266, t1269, t1271, t1295, t1302, t1308, t1311, t1322, t1326;
-fp t1331, t1337, t1345, t1352, t1354, t1360, t1362, t1373, t1375, t1386;
-fp t1394, t1410, t1419, t1432, t1466, t1469, t1472, t1473, t1474, t1477;
-fp t1478, t1485, t1486, t1487, t1490, t1491, t1495, t1498, t1501, t1502;
-fp t1511, t1517, t1520, t1523, t1526, t1529, t1532, t1534, t1539, t1557;
-fp t1560, t1573, t1576, t1582, t1585, t1597, t1598, t1603, t1606, t1607;
-fp t1609, t1616, t1619, t1621, t1633, t1634, t1639, t1651, t1654, t1659;
-fp t1660, t1663, t1669, t1680, t1692, t1726, t1737, t1741, t1744, t1747;
-fp t1756, t1762, t1763, t1766, t1769, t1772, t1778, t1793, t1795, t1800;
-fp t1818, t1842;
- t1 = g_uu_12;
+fp t16, t18, t19, t20, t21, t23, t24, t25, t26, t29;
+fp t30, t33, t35, t36, t37, t38, t40, t42, t44, t46;
+fp t48, t49, t51, t52, t55, t56, t58, t59, t62, t63;
+fp t66, t68, t72, t74, t78, t82, t83, t86, t87, t88;
+fp t91, t92, t93, t94, t95, t97, t98, t101, t104, t107;
+fp t108, t109, t112, t113, t115, t119, t121, t125, t127, t131;
+fp t132, t135, t136, t137, t138, t142, t143, t146, t147, t150;
+fp t151, t152, t154, t157, t160, t162, t164, t166, t169, t171;
+fp t175, t182, t186, t188, t194, t196, t199, t206, t207, t210;
+fp t213, t215, t216, t219, t220, t221, t224, t226, t229, t235;
+fp t236, t239, t240, t242, t243, t244, t247, t248, t255, t259;
+fp t261, t265, t266, t270, t271, t273, t274, t275, t277, t280;
+fp t281, t282, t283, t286, t289, t290, t292, t295, t296, t299;
+fp t303, t309, t313, t319, t320, t323, t327, t333, t335, t337;
+fp t339, t342, t344, t345, t348, t351, t354, t359, t360, t361;
+fp t363, t366, t370, t371, t374, t375, t378, t381, t384, t385;
+fp t387, t390, t396, t398, t399, t403, t404, t406, t416, t417;
+fp t419, t423, t426, t429, t432, t440, t443, t445, t453, t454;
+fp t458, t460, t462, t464, t465, t467, t468, t470, t473, t479;
+fp t484, t485, t487, t488, t491, t494, t495, t497, t499, t503;
+fp t510, t514, t518, t521, t522, t537, t538, t540, t557, t560;
+fp t561, t566, t570, t573, t579, t581, t582, t589, t596, t606;
+fp t611, t619, t620, t622, t626, t630, t631, t636, t645, t647;
+fp t649, t650, t654, t659, t660, t662, t663, t672, t675, t676;
+fp t685, t686, t688, t697, t715, t719, t722, t725, t730, t747;
+fp t750, t751, t752, t758, t764, t777, t779, t786, t791, t793;
+fp t798, t802, t803, t805, t806, t808, t809, t811, t813, t815;
+fp t817, t819, t821, t823, t825, t828, t830, t833, t835, t838;
+fp t841, t843, t846, t849, t853, t866, t875, t877, t880, t883;
+fp t884, t886, t889, t895, t897, t900, t902, t905, t907, t909;
+fp t911, t912, t914, t924, t930, t936, t946, t948, t950, t954;
+fp t956, t957, t960, t963, t966, t971, t974, t978, t980, t985;
+fp t987, t988, t993, t994, t999, t1005, t1017, t1022, t1028, t1038;
+fp t1043, t1044, t1048, t1051, t1057, t1066, t1068, t1073, t1081, t1088;
+fp t1092, t1094, t1104, t1107, t1116, t1120, t1122, t1129, t1153, t1163;
+fp t1165, t1187, t1209, t1226, t1252, t1258, t1288, t1292, t1302, t1307;
+fp t1310, t1315, t1327, t1344, t1359, t1361, t1368, t1373, t1377, t1383;
+fp t1394, t1409, t1418, t1431, t1461, t1464, t1465, t1466, t1472, t1474;
+fp t1477, t1478, t1479, t1483, t1492, t1493, t1494, t1497, t1500, t1505;
+fp t1507, t1513, t1518, t1526, t1528, t1536, t1540, t1542, t1546, t1548;
+fp t1550, t1552, t1556, t1559, t1562, t1582, t1583, t1586, t1590, t1594;
+fp t1595, t1598, t1607, t1612, t1615, t1618, t1623, t1626, t1644, t1656;
+fp t1657, t1677, t1679, t1686, t1695, t1714, t1730, t1742, t1745, t1746;
+fp t1749, t1768, t1774, t1776, t1784, t1791, t1794, t1797, t1800, t1803;
+fp t1806, t1818;
+ t1 = g_uu_23;
t2 = 1/r;
t4 = X_ud_12;
t5 = PARTIAL_RHO(h);
@@ -57,570 +57,569 @@ fp t1818, t1842;
t8 = PARTIAL_SIGMA(h);
t10 = yy*t2-t4*t5-t7*t8;
t11 = t1*t10;
- t12 = g_uu_11;
- t14 = X_ud_11;
- t16 = X_ud_21;
- t18 = xx*t2-t14*t5-t16*t8;
+ t12 = partial_d_g_uu_313;
+ t14 = X_ud_13;
+ t16 = X_ud_23;
+ t18 = zz*t2-t14*t5-t16*t8;
t19 = t12*t18;
- t20 = X_udd_111;
+ t20 = X_ud_11;
t21 = t19*t20;
- t24 = g_uu_13;
- t26 = X_ud_13;
- t28 = X_ud_23;
- t30 = zz*t2-t26*t5-t28*t8;
- t31 = t24*t30;
- t32 = t12*t14;
- t33 = yy*yy;
- t34 = zz*zz;
- t36 = r*r;
- t38 = 1/t36/r;
- t41 = X_udd_211;
- t43 = t14*t14;
- t44 = PARTIAL_RHO_RHO(h);
- t46 = t16*t14;
- t47 = PARTIAL_RHO_SIGMA(h);
- t50 = t16*t16;
- t51 = PARTIAL_SIGMA_SIGMA(h);
- t53 = (t33+t34)*t38-t20*t5-t41*t8-t43*t44-2.0*t46*t47-t50*t51;
- t54 = t32*t53;
- t57 = g_uu_23;
- t58 = t57*t10;
- t61 = X_udd_113;
- t63 = X_udd_213;
- t67 = t16*t26;
- t69 = t14*t28;
- t73 = -xx*zz*t38-t61*t5-t63*t8-t14*t26*t44-t67*t47-t69*t47-t16*t28*t51;
- t74 = t32*t73;
- t77 = t1*t1;
- t78 = t10*t10;
- t79 = t77*t78;
- t81 = t57*t30;
- t82 = g_uu_22;
- t83 = t82*t4;
- t84 = xx*xx;
- t87 = X_udd_122;
- t89 = X_udd_222;
- t91 = t4*t4;
- t93 = t7*t4;
- t96 = t7*t7;
- t98 = (t84+t34)*t38-t87*t5-t89*t8-t91*t44-2.0*t93*t47-t96*t51;
- t102 = t1*t18;
- t103 = partial_d_g_uu_223;
- t104 = t103*t26;
- t105 = t104*t10;
- t107 = t82*t10;
- t108 = X_udd_112;
- t109 = t19*t108;
- t112 = t57*t26;
- t113 = t107*t98;
- t116 = g_uu_33;
- t117 = t116*t30;
- t118 = X_udd_133;
- t122 = t1*t4;
- t123 = t24*t18;
- t124 = t123*t73;
- t130 = t57*t4;
- t134 = X_udd_233;
- t136 = t26*t26;
- t138 = t28*t26;
- t141 = t28*t28;
- t143 = (t84+t33)*t38-t118*t5-t134*t8-t136*t44-2.0*t138*t47-t141*t51;
- t147 = partial_d_g_uu_112;
- t148 = t147*t4;
- t149 = t148*t18;
- t151 = t19*t53;
- t154 = 2.0*t11*t21+2.0*t31*t54+2.0*t58*t74+t79*t20+2.0*t81*t83*t98+t102*
-t105+2.0*t107*t109+2.0*t112*t113+2.0*t117*t58*t118+2.0*t122*t124+2.0*t81*t107*
-t87+2.0*t117*t130*t143+t31*t149+2.0*t122*t151;
- t155 = X_udd_123;
- t156 = t102*t155;
- t159 = partial_d_g_uu_213;
- t160 = t159*t30;
- t161 = t160*t14;
- t164 = t1*t14;
- t168 = X_udd_223;
- t172 = t7*t26;
- t174 = t4*t28;
- t178 = -yy*zz*t38-t155*t5-t168*t8-t4*t26*t44-t172*t47-t174*t47-t7*t28*t51
+ t23 = g_uu_13;
+ t24 = t18*t18;
+ t25 = t23*t24;
+ t26 = partial_d_g_uu_113;
+ t29 = t1*t14;
+ t30 = g_uu_12;
+ t33 = X_ud_21;
+ t35 = xx*t2-t20*t5-t33*t8;
+ t36 = t30*t35;
+ t37 = xx*xx;
+ t38 = zz*zz;
+ t40 = r*r;
+ t42 = 1/t40/r;
+ t44 = X_udd_122;
+ t46 = X_udd_222;
+ t48 = t4*t4;
+ t49 = PARTIAL_RHO_RHO(h);
+ t51 = t7*t4;
+ t52 = PARTIAL_RHO_SIGMA(h);
+ t55 = t7*t7;
+ t56 = PARTIAL_SIGMA_SIGMA(h);
+ t58 = (t37+t38)*t42-t44*t5-t46*t8-t48*t49-2.0*t51*t52-t55*t56;
+ t59 = t36*t58;
+ t62 = t23*t18;
+ t63 = t1*t4;
+ t66 = X_udd_113;
+ t68 = X_udd_213;
+ t72 = t33*t14;
+ t74 = t20*t16;
+ t78 = -xx*zz*t42-t66*t5-t68*t8-t20*t14*t49-t72*t52-t74*t52-t33*t16*t56;
+ t82 = partial_d_g_uu_333;
+ t83 = t82*t24;
+ t86 = t1*t18;
+ t87 = t30*t20;
+ t88 = t87*t58;
+ t91 = g_uu_11;
+ t92 = t91*t35;
+ t93 = partial_d_g_uu_122;
+ t94 = t93*t10;
+ t95 = t94*t4;
+ t97 = t35*t35;
+ t98 = t23*t97;
+ t101 = t23*t35;
+ t104 = t23*t20;
+ t107 = t91*t20;
+ t108 = partial_d_g_uu_133;
+ t109 = t108*t24;
+ t112 = t1*t1;
+ t113 = t112*t24;
+ t115 = t30*t30;
+ t119 = X_udd_112;
+ t121 = X_udd_212;
+ t125 = t33*t4;
+ t127 = t20*t7;
+ t131 = -xx*yy*t42-t119*t5-t121*t8-t20*t4*t49-t125*t52-t127*t52-t33*t7*t56
;
- t179 = t164*t178;
- t182 = partial_d_g_uu_113;
- t183 = t182*t30;
- t184 = t183*t14;
- t187 = partial_d_g_uu_133;
- t188 = t187*t30;
- t189 = t188*t26;
- t192 = partial_d_g_uu_313;
- t193 = t192*t30;
- t194 = t193*t14;
- t197 = partial_d_g_uu_222;
- t198 = t197*t78;
- t201 = partial_d_g_uu_312;
- t203 = t201*t18*t4;
- t207 = partial_d_g_uu_233;
- t208 = t30*t30;
- t209 = t207*t208;
- t212 = t187*t208;
- t217 = t116*t26;
- t218 = t107*t178;
- t221 = 2.0*t58*t156+2.0*t102*t161+2.0*t58*t179+2.0*t19*t184+t19*t189+t11*
-t184+2.0*t123*t194+RATIONAL(1.0,2.0)*t112*t198+2.0*t58*t203+t11*t189+RATIONAL(
-1.0,2.0)*t83*t209+RATIONAL(1.0,2.0)*t32*t212+RATIONAL(1.0,2.0)*t122*t212+2.0*
-t217*t218;
- t223 = t201*t10;
- t224 = t223*t18;
- t226 = partial_d_g_uu_212;
- t227 = t226*t10;
- t228 = t227*t14;
- t232 = t77*t10;
- t236 = t77*t18;
- t240 = t24*t24;
- t241 = t240*t18;
- t245 = t24*t26;
- t246 = partial_d_g_uu_122;
- t247 = t246*t78;
- t250 = t192*t26;
- t251 = t250*t18;
- t253 = t82*t78;
- t255 = t1*t78;
- t256 = partial_d_g_uu_123;
- t259 = t57*t57;
- t260 = t259*t10;
- t264 = t57*t208;
- t268 = t147*t10;
- t269 = t268*t14;
- t272 = t223*t14;
- t274 = t217*t224+2.0*t102*t228+t117*t203+2.0*t232*t53*t4+2.0*t236*t98*t14
-+2.0*t241*t143*t14+RATIONAL(1.0,2.0)*t245*t247+t58*t251+t253*t104+t255*t256*t26
-+2.0*t260*t143*t4+2.0*t264*t24*t108+2.0*t19*t269+t117*t272;
- t275 = partial_d_g_uu_323;
- t277 = t275*t10*t26;
- t280 = t182*t26;
- t281 = t280*t18;
- t287 = t12*t12;
- t288 = t287*t18;
- t292 = t82*t178;
- t293 = t292*t4;
- t297 = t10*t178;
- t300 = t259*t30;
- t304 = partial_d_g_uu_111;
- t305 = t304*t18;
- t306 = t305*t14;
- t310 = t226*t4;
- t311 = t310*t18;
- t314 = t159*t18*t26;
- t317 = t240*t30;
- t324 = 2.0*t117*t277+t11*t281+RATIONAL(3.0,2.0)*t255*t246*t4+t81*t228+2.0
-*t288*t53*t14+4.0*t58*t293+2.0*t259*t26*t297+2.0*t300*t10*t155+t11*t306+2.0*
-t117*t293+t81*t311+2.0*t81*t314+2.0*t317*t18*t61+2.0*t11*t123*t61;
- t327 = t259*t78;
- t329 = partial_d_g_uu_322;
- t330 = t329*t78;
- t338 = t183*t18;
- t340 = t123*t155;
- t343 = t18*t18;
- t344 = t24*t343;
- t345 = partial_d_g_uu_311;
- t349 = partial_d_g_uu_333;
- t350 = t349*t208;
- t359 = X_udd_212;
- t363 = t16*t4;
- t365 = t14*t7;
- t369 = -xx*yy*t38-t108*t5-t359*t8-t14*t4*t44-t363*t47-t365*t47-t16*t7*t51
+ t132 = t35*t131;
+ t135 = t10*t10;
+ t136 = t1*t135;
+ t137 = g_uu_22;
+ t138 = X_udd_123;
+ t142 = t11*t21+t25*t26*t20+2.0*t29*t59+2.0*t62*t63*t78+RATIONAL(1.0,2.0)*
+t63*t83+2.0*t86*t88+t92*t95+t98*t12*t14+2.0*t101*t21+RATIONAL(1.0,2.0)*t104*t83
++RATIONAL(1.0,2.0)*t107*t109+t113*t44+2.0*t115*t4*t132+2.0*t136*t137*t138;
+ t143 = t30*t4;
+ t146 = t137*t135;
+ t147 = t30*t119;
+ t150 = g_uu_33;
+ t151 = t150*t18;
+ t152 = partial_d_g_uu_323;
+ t154 = t152*t10*t14;
+ t157 = yy*yy;
+ t160 = X_udd_133;
+ t162 = X_udd_233;
+ t164 = t14*t14;
+ t166 = t16*t14;
+ t169 = t16*t16;
+ t171 = (t37+t157)*t42-t160*t5-t162*t8-t164*t49-2.0*t166*t52-t169*t56;
+ t175 = t115*t10;
+ t182 = t23*t131;
+ t186 = partial_d_g_uu_223;
+ t188 = t186*t10*t14;
+ t194 = t23*t23;
+ t196 = t35*t78;
+ t199 = t194*t18;
+ t206 = t150*t14;
+ t207 = t101*t171;
+ t210 = t101*t160;
+ t213 = RATIONAL(1.0,2.0)*t143*t109+2.0*t146*t147+2.0*t151*t154+2.0*t151*
+t63*t171+2.0*t175*t20*t131+RATIONAL(3.0,2.0)*t25*t108*t14+4.0*t86*t182*t14+2.0*
+t86*t188+2.0*t175*t35*t119+2.0*t194*t14*t196+2.0*t199*t20*t78+2.0*t199*t35*t66+
+2.0*t206*t207+2.0*t151*t210;
+ t215 = t26*t35;
+ t216 = t215*t14;
+ t219 = t91*t97;
+ t220 = partial_d_g_uu_111;
+ t221 = t220*t20;
+ t224 = partial_d_g_uu_123;
+ t226 = t224*t10*t14;
+ t229 = t104*t171;
+ t235 = t137*t10;
+ t236 = t107*t131;
+ t239 = partial_d_g_uu_312;
+ t240 = t239*t4;
+ t242 = partial_d_g_uu_213;
+ t243 = t242*t35;
+ t244 = t243*t14;
+ t247 = t150*t150;
+ t248 = t247*t24;
+ t255 = X_udd_223;
+ t259 = t7*t14;
+ t261 = t4*t16;
+ t265 = -yy*zz*t42-t138*t5-t255*t8-t4*t14*t49-t259*t52-t261*t52-t7*t16*t56
;
- t373 = t123*t178;
- t376 = t1*t343;
- t383 = t18*t73;
- t386 = t327*t118+RATIONAL(1.0,2.0)*t217*t330+2.0*t317*t14*t73+2.0*t117*
-t251+t122*t338+2.0*t107*t340+RATIONAL(3.0,2.0)*t344*t345*t14+RATIONAL(1.0,2.0)*
-t130*t350+2.0*t117*t107*t155+2.0*t232*t14*t369+2.0*t83*t373+2.0*t376*t12*t108+
-2.0*t31*t281+2.0*t240*t26*t383;
- t393 = t24*t14;
- t397 = t116*t208;
- t398 = t24*t61;
- t401 = t19*t61;
- t404 = t349*t30;
- t405 = t404*t26;
- t407 = t24*t369;
- t411 = t123*t143;
- t415 = t24*t73;
- t419 = t107*t369;
- t423 = t18*t369;
- t429 = t256*t10;
- t430 = t429*t26;
- t433 = 2.0*t232*t18*t108+RATIONAL(3.0,2.0)*t264*t207*t26+2.0*t11*t393*t73
-+2.0*t397*t398+2.0*t117*t401+t123*t405+4.0*t81*t407*t26+2.0*t130*t411+t58*t194+
-4.0*t117*t415*t26+2.0*t245*t419+2.0*t77*t4*t423+2.0*t300*t4*t178+2.0*t31*t430;
- t435 = t393*t143;
- t438 = t11*t369;
- t441 = t1*t369;
- t442 = t441*t4;
- t445 = t393*t178;
- t448 = t207*t30;
- t449 = t448*t26;
- t454 = t123*t118;
- t457 = t19*t73;
- t460 = t11*t73;
- t465 = t32*t369;
- t470 = t227*t18;
- t472 = 2.0*t58*t435+2.0*t112*t438+4.0*t107*t442+2.0*t107*t445+t107*t449+
-t376*t310+4.0*t123*t74+2.0*t58*t454+2.0*t217*t457+2.0*t217*t460+2.0*t130*t457+
-2.0*t81*t465+2.0*t58*t401+t112*t470;
- t473 = t11*t53;
- t476 = t164*t98;
- t479 = t77*t343;
- t488 = t345*t18;
- t489 = t488*t14;
- t491 = t19*t369;
- t501 = t103*t30;
- t502 = t501*t4;
- t504 = t501*t10;
- t506 = partial_d_g_uu_211;
- t507 = t506*t18;
- t508 = t507*t14;
- t510 = 2.0*t245*t473+2.0*t107*t476+t479*t87+2.0*t117*t74+2.0*t117*t435+
-2.0*t117*t11*t61+t117*t489+2.0*t112*t491+2.0*t217*t411+2.0*t31*t83*t369+2.0*t11
-*t54+t102*t502+t164*t504+t107*t508;
- t514 = t24*t208;
- t519 = t275*t30;
- t520 = t519*t10;
- t522 = t256*t30;
- t523 = t522*t4;
- t530 = t82*t82;
- t531 = t530*t10;
- t535 = t519*t4;
- t539 = t1*t73;
- t540 = t539*t4;
- t543 = t57*t78;
- t551 = t514*t182*t14+2.0*t107*t465+t393*t520+t19*t523+2.0*t83*t491+t58*
-t489+2.0*t117*t454+2.0*t531*t98*t4+t123*t535+2.0*t123*t272+4.0*t58*t540+2.0*
-t543*t1*t61+2.0*t81*t11*t108+t123*t277;
- t552 = t329*t10;
- t553 = t552*t4;
- t559 = t1*t108;
- t562 = t275*t4;
- t570 = t287*t343;
- t572 = t197*t10;
- t573 = t572*t4;
- t575 = t522*t10;
- t578 = t12*t343;
- t582 = t123*t553+2.0*t107*t311+2.0*t81*t445+2.0*t253*t559+t397*t562+
-RATIONAL(1.0,2.0)*t393*t350+t264*t103*t4+t514*t256*t4+t570*t20+t102*t573+t32*
-t575+t344*t250+t578*t280+t543*t201*t14;
- t584 = t226*t14;
- t589 = t193*t18;
- t602 = t192*t14;
- t612 = t57*t155;
- t615 = t253*t584+2.0*t317*t53*t26+t130*t589+t19*t430+t376*t159*t26+
-RATIONAL(1.0,2.0)*t393*t330+t255*t147*t14+RATIONAL(1.0,2.0)*t32*t247+t264*t159*
-t14+t397*t602+RATIONAL(1.0,2.0)*t164*t209+RATIONAL(3.0,2.0)*t376*t506*t14+2.0*
-t344*t1*t155+2.0*t397*t612;
- t616 = t116*t116;
- t617 = t616*t30;
- t621 = t506*t343;
- t624 = t345*t343;
- t639 = t246*t10;
- t640 = t639*t4;
- t642 = t197*t4;
- t647 = t304*t343;
- t654 = 2.0*t617*t143*t26+RATIONAL(1.0,2.0)*t112*t621+RATIONAL(1.0,2.0)*
-t217*t624+2.0*t31*t122*t53+RATIONAL(3.0,2.0)*t514*t187*t26+t543*t275*t26+2.0*
-t344*t12*t61+t117*t553+t31*t640+RATIONAL(3.0,2.0)*t253*t642+RATIONAL(1.0,2.0)*
-t130*t624+RATIONAL(1.0,2.0)*t245*t647+t344*t201*t4+RATIONAL(1.0,2.0)*t122*t647;
- t665 = t349*t26;
- t687 = RATIONAL(1.0,2.0)*t83*t621+RATIONAL(3.0,2.0)*t543*t329*t4+2.0*t31*
-t11*t20+RATIONAL(3.0,2.0)*t397*t665+t81*t573+2.0*t107*t502+2.0*t543*t82*t155+
-2.0*t11*t523+2.0*t31*t21+2.0*t31*t164*t369+t31*t269+2.0*t11*t149+t578*t148+
-RATIONAL(1.0,2.0)*t164*t198;
- t688 = t58*t73;
- t692 = t102*t98;
- t695 = t530*t78;
- t697 = t240*t343;
- t699 = t102*t369;
- t707 = t102*t87;
- t710 = t57*t178;
- t714 = t102*t178;
- t717 = t268*t18;
- t722 = 2.0*t245*t688+t81*t508+2.0*t83*t692+t695*t87+t697*t118+2.0*t245*
-t699+2.0*t81*t109+2.0*t31*t102*t108+2.0*t107*t707+4.0*t117*t710*t26+2.0*t130*
-t714+t245*t717+t31*t306+2.0*t117*t540;
- t724 = t616*t208;
- t726 = t58*t143;
- t745 = t259*t208;
- t752 = t240*t208;
- t754 = t724*t118+2.0*t217*t726+2.0*t300*t98*t26+2.0*t31*t130*t73+t58*t405
-+4.0*t102*t465+2.0*t81*t442+t19*t640+2.0*t81*t707+2.0*t58*t535+t745*t87+2.0*t31
-*t58*t61+2.0*t81*t105+t752*t20;
- t764 = t304*t14;
- t773 = t160*t18;
- t784 = 2.0*t112*t692+2.0*t245*t151+2.0*t117*t156+2.0*t117*t179+t107*t161+
-RATIONAL(3.0,2.0)*t578*t764+4.0*t123*t179+2.0*t217*t714+2.0*t81*t340+t83*t773+
-t102*t449+2.0*t31*t107*t108+2.0*t112*t373+t107*t314+2.0*t81*t476;
- t789 = pow(HD,1.0*RATIONAL(1.0,2.0));
- t791 = 1/t789/HD;
- t796 = -t764-t584-t602-t148-t642-t562-t280-t104-t665-t12*t20-2.0*t559-2.0
-*t398;
- t800 = partial_d_ln_sqrt_g_1;
- t801 = t12*t800;
- t803 = partial_d_ln_sqrt_g_2;
- t804 = t1*t803;
- t806 = partial_d_ln_sqrt_g_3;
- t807 = t24*t806;
- t809 = t1*t800;
- t811 = t82*t803;
- t813 = t57*t806;
- t815 = t24*t800;
- t817 = t57*t803;
- t819 = t116*t806;
- t821 = -t82*t87-2.0*t612-t116*t118-t801*t14-t804*t14-t807*t14-t809*t4-
-t811*t4-t813*t4-t815*t26-t817*t26-t819*t26;
- t823 = 1/t789;
- t826 = K_uu_11*t18;
- t828 = K_uu_12;
- t831 = t828*t10;
- t833 = K_uu_13;
- t836 = t833*t30;
- t839 = K_uu_22*t10;
- t841 = K_uu_23;
- t844 = t841*t30;
- t847 = K_uu_33*t30;
- t851 = 1/HD;
- t864 = HD*HD;
- t873 = RATIONAL(3.0,2.0)*HA/t789/t864+RATIONAL(1.0,2.0)*HB*t791+HC/t864;
- partial_H_wrt_partial_d_h_1 = (t154+t221+t274+t324+t386+t433+t472+t510+
-t551+t582+t615+t654+t687+t722+t754+t784)*t791+(t796+t821)*t823+(-2.0*t826*t14
--2.0*t828*t4*t18-2.0*t831*t14-2.0*t833*t26*t18-2.0*t836*t14-2.0*t839*t4-2.0*
-t841*t26*t10-2.0*t844*t4-2.0*t847*t26)*t851-(-2.0*t19*t14-2.0*t122*t18-2.0*t11*
-t14-2.0*t245*t18-2.0*t31*t14-2.0*t107*t4-2.0*t112*t10-2.0*t81*t4-2.0*t117*t26)*
-t873;
- t876 = t103*t10*t28;
- t879 = t519*t7;
- t882 = t188*t28;
- t884 = t429*t28;
- t889 = t12*t369*t16;
- t893 = t24*t28;
- t901 = t57*t7;
- t908 = t116*t28;
- t914 = 2.0*t81*t876+2.0*t58*t879+t19*t882+2.0*t31*t884+t11*t882+4.0*t102*
-t889+t724*t134+2.0*t893*t688+2.0*t317*t53*t28+RATIONAL(1.0,2.0)*t893*t247+2.0*
-t31*t901*t73+RATIONAL(3.0,2.0)*t264*t207*t28+2.0*t908*t714+RATIONAL(3.0,2.0)*
-t255*t246*t7;
- t918 = t304*t16;
- t921 = t24*t16;
- t922 = t921*t178;
- t925 = t57*t28;
- t935 = t349*t28;
- t943 = t275*t7;
- t947 = t1*t16;
- t953 = 2.0*t288*t53*t16+RATIONAL(3.0,2.0)*t578*t918+2.0*t81*t922+2.0*t925
-*t113+RATIONAL(1.0,2.0)*t908*t330+2.0*t925*t373+4.0*t81*t407*t28+RATIONAL(3.0,
-2.0)*t397*t935+RATIONAL(3.0,2.0)*t543*t329*t7+t514*t256*t7+t397*t943+RATIONAL(
-1.0,2.0)*t921*t350+RATIONAL(1.0,2.0)*t947*t209+2.0*t31*t58*t63;
- t955 = t102*t168;
- t958 = t947*t178;
- t968 = t82*t7;
- t972 = t123*t168;
- t981 = t103*t28;
- t985 = t19*t41;
- t988 = t12*t16;
- t989 = t988*t53;
- t992 = 2.0*t117*t955+2.0*t117*t958+2.0*t893*t151+2.0*t81*t107*t89+2.0*
-t908*t411+2.0*t81*t968*t98+2.0*t81*t972+t255*t256*t28+RATIONAL(1.0,2.0)*t925*
-t198+2.0*t925*t692+t253*t981+2.0*t893*t419+2.0*t31*t985+2.0*t31*t989;
- t1002 = t102*t89;
- t1008 = t947*t98;
- t1017 = t197*t7;
- t1020 = t292*t7;
- t1028 = 2.0*t11*t123*t63+2.0*t543*t82*t168+2.0*t31*t107*t359+2.0*t81*
-t1002+2.0*t31*t968*t369+2.0*t81*t1008+2.0*t260*t143*t7+4.0*t117*t415*t28+
-RATIONAL(3.0,2.0)*t253*t1017+4.0*t58*t1020+2.0*t908*t218+t570*t41+t327*t134+
-t695*t89;
- t1047 = t123*t134;
- t1050 = t921*t143;
- t1062 = t697*t134+t79*t41+RATIONAL(3.0,2.0)*t344*t345*t16+2.0*t107*t972+
-2.0*t107*t922+2.0*t117*t1020+2.0*t968*t373+RATIONAL(3.0,2.0)*t376*t506*t16+2.0*
-t58*t1047+2.0*t58*t1050+2.0*t117*t107*t168+t893*t717+2.0*t968*t692+2.0*t531*t98
-*t7;
- t1065 = t268*t16;
- t1067 = t19*t63;
- t1070 = t988*t73;
- t1078 = t1*t359;
- t1081 = t147*t7;
- t1082 = t1081*t18;
- t1084 = t552*t7;
- t1086 = t639*t7;
- t1088 = t19*t359;
- t1095 = t501*t7;
- t1098 = 2.0*t901*t411+t31*t1065+2.0*t117*t1067+2.0*t117*t1070+2.0*t543*t1
-*t63+2.0*t908*t457+2.0*t253*t1078+t31*t1082+t117*t1084+t31*t1086+2.0*t81*t1088+
-2.0*t81*t889+2.0*t925*t491+2.0*t107*t1095;
- t1100 = t522*t7;
- t1106 = t572*t7;
- t1136 = 2.0*t11*t1100+2.0*t77*t7*t423+t81*t1106+2.0*t31*t102*t359+2.0*
-t232*t16*t369+2.0*t31*t947*t369+2.0*t107*t1008+2.0*t893*t699+2.0*t107*t1002+2.0
-*t901*t714+2.0*t240*t28*t383+2.0*t117*t58*t134+2.0*t117*t901*t143+2.0*t908*t726
+ t266 = t1*t265;
+ t270 = partial_d_g_uu_212;
+ t271 = t270*t20;
+ t273 = partial_d_g_uu_322;
+ t274 = t273*t10;
+ t275 = t274*t4;
+ t277 = t1*t24;
+ t280 = 2.0*t62*t216+RATIONAL(3.0,2.0)*t219*t221+2.0*t62*t226+2.0*t151*
+t229+2.0*t62*t11*t66+2.0*t235*t236+t98*t240+2.0*t86*t244+t248*t160+t136*t239*
+t20+4.0*t151*t266*t14+t146*t271+t101*t275+t277*t186*t4;
+ t281 = t137*t4;
+ t282 = partial_d_g_uu_211;
+ t283 = t282*t97;
+ t286 = t36*t138;
+ t289 = t30*t10;
+ t290 = partial_d_g_uu_112;
+ t292 = t290*t35*t4;
+ t295 = partial_d_g_uu_311;
+ t296 = t295*t97;
+ t299 = t23*t78;
+ t303 = t92*t119;
+ t309 = t247*t18;
+ t313 = t87*t265;
+ t319 = t150*t24;
+ t320 = t82*t14;
+ t323 = t30*t135;
+ t327 = t112*t18;
+ t333 = X_udd_111;
+ t335 = X_udd_211;
+ t337 = t20*t20;
+ t339 = t33*t20;
+ t342 = t33*t33;
+ t344 = (t157+t38)*t42-t333*t5-t335*t8-t337*t49-2.0*t339*t52-t342*t56;
+ t345 = t107*t344;
+ t348 = RATIONAL(1.0,2.0)*t281*t283+2.0*t11*t286+2.0*t289*t292+RATIONAL(
+1.0,2.0)*t63*t296+4.0*t151*t299*t14+2.0*t235*t303+RATIONAL(3.0,2.0)*t136*t273*
+t4+2.0*t309*t171*t14+2.0*t11*t313+2.0*t98*t30*t138+RATIONAL(3.0,2.0)*t319*t320+
+RATIONAL(3.0,2.0)*t323*t93*t4+2.0*t327*t58*t14+2.0*t289*t345;
+ t351 = t273*t135;
+ t354 = t92*t333;
+ t359 = partial_d_g_uu_222;
+ t360 = t359*t10;
+ t361 = t360*t4;
+ t363 = t359*t4;
+ t366 = partial_d_g_uu_233;
+ t370 = t23*t14;
+ t371 = t11*t78;
+ t374 = t152*t18;
+ t375 = t374*t4;
+ t378 = t92*t344;
+ t381 = t92*t78;
+ t384 = t242*t18;
+ t385 = t384*t35;
+ t387 = t36*t265;
+ t390 = t30*t97;
+ t396 = RATIONAL(1.0,2.0)*t206*t351+2.0*t289*t354+RATIONAL(1.0,2.0)*t104*
+t351+t36*t361+RATIONAL(3.0,2.0)*t146*t363+RATIONAL(3.0,2.0)*t277*t366*t14+2.0*
+t370*t371+2.0*t11*t375+2.0*t143*t378+2.0*t63*t381+t281*t385+2.0*t63*t387+
+RATIONAL(3.0,2.0)*t390*t282*t20+t323*t290*t20;
+ t398 = t186*t18;
+ t399 = t398*t4;
+ t403 = t270*t10;
+ t404 = t403*t35;
+ t406 = t107*t78;
+ t416 = t290*t10;
+ t417 = t416*t20;
+ t419 = t186*t14;
+ t423 = t1*t138;
+ t426 = t23*t66;
+ t429 = t220*t97;
+ t432 = t62*t292+2.0*t235*t399+t235*t244+t29*t404+2.0*t11*t406+2.0*t390*
+t91*t119+t289*t216+2.0*t289*t104*t78+t62*t417+t146*t419+t136*t152*t14+2.0*t319*
+t423+2.0*t319*t426+RATIONAL(1.0,2.0)*t143*t429;
+ t440 = t36*t131;
+ t443 = t416*t35;
+ t445 = t36*t44;
+ t453 = t270*t4;
+ t454 = t453*t35;
+ t458 = t194*t97;
+ t460 = t115*t135;
+ t462 = t115*t97;
+ t464 = t91*t91;
+ t465 = t464*t97;
+ t467 = 2.0*t277*t23*t119+RATIONAL(3.0,2.0)*t98*t295*t20+2.0*t370*t440+
+t370*t443+2.0*t86*t445+2.0*t281*t59+RATIONAL(1.0,2.0)*t206*t296+t92*t226+t86*
+t454+2.0*t235*t445+t458*t160+t460*t333+t462*t44+t465*t333;
+ t468 = t384*t20;
+ t470 = t92*t66;
+ t473 = t101*t78;
+ t479 = t403*t20;
+ t484 = t282*t35;
+ t485 = t484*t20;
+ t487 = t220*t35;
+ t488 = t487*t20;
+ t491 = t12*t35*t14;
+ t494 = t239*t10;
+ t495 = t494*t35;
+ t497 = t494*t20;
+ t499 = t101*t265;
+ t503 = t235*t468+2.0*t11*t470+2.0*t143*t473+2.0*t289*t101*t66+t86*t479+
+2.0*t235*t88+t86*t361+t235*t485+t289*t488+2.0*t151*t491+t206*t495+t151*t497+2.0
+*t281*t499+t62*t488;
+ t510 = t101*t138;
+ t514 = t112*t10;
+ t518 = t104*t265;
+ t521 = t295*t35;
+ t522 = t521*t20;
+ t537 = t62*t95+4.0*t36*t236+2.0*t235*t510+t86*t485+2.0*t514*t171*t4+2.0*
+t235*t518+t11*t522+2.0*t86*t303+2.0*t63*t207+2.0*t36*t479+2.0*t11*t210+2.0*t11*
+t229+2.0*t92*t417+t151*t522;
+ t538 = t240*t35;
+ t540 = t289*t131;
+ t557 = t289*t78;
+ t560 = t137*t265;
+ t561 = t560*t4;
+ t566 = t464*t35;
+ t570 = t93*t135;
+ t573 = t359*t135;
+ t579 = t151*t538+2.0*t29*t540+4.0*t101*t406+2.0*t136*t30*t66+2.0*t98*t91*
+t66+2.0*t62*t36*t119+2.0*t62*t87*t131+2.0*t206*t557+4.0*t11*t561+t323*t224*t14+
+2.0*t566*t344*t20+RATIONAL(1.0,2.0)*t370*t570+RATIONAL(1.0,2.0)*t29*t573+2.0*
+t175*t344*t4;
+ t581 = t30*t78;
+ t582 = t581*t4;
+ t589 = t143*t131;
+ t596 = t374*t10;
+ t606 = t115*t35;
+ t611 = t10*t265;
+ t619 = 4.0*t11*t582+2.0*t86*t289*t119+t151*t275+2.0*t86*t589+4.0*t101*
+t313+4.0*t235*t589+t104*t596+2.0*t62*t289*t333+2.0*t151*t289*t66+2.0*t151*t582+
+2.0*t606*t58*t20+2.0*t112*t14*t611+2.0*t327*t4*t265+2.0*t101*t497;
+ t620 = t26*t14;
+ t622 = t92*t131;
+ t626 = t289*t344;
+ t630 = t224*t18;
+ t631 = t630*t4;
+ t636 = t194*t35;
+ t645 = t630*t10;
+ t647 = t194*t24;
+ t649 = t26*t18;
+ t650 = t649*t20;
+ t654 = t219*t620+2.0*t29*t622+t101*t375+2.0*t370*t626+t101*t154+t92*t631+
+2.0*t327*t10*t138+2.0*t636*t171*t20+2.0*t62*t143*t344+2.0*t235*t454+t107*t645+
+t647*t333+t289*t650+2.0*t86*t236;
+ t659 = t108*t18;
+ t660 = t659*t14;
+ t662 = t366*t18;
+ t663 = t662*t14;
+ t672 = t398*t10;
+ t675 = t82*t18;
+ t676 = t675*t14;
+ t685 = 2.0*t289*t631+t92*t660+t235*t663+2.0*t281*t622+2.0*t11*t538+t36*
+t188+RATIONAL(1.0,2.0)*t370*t429+t87*t672+t36*t399+t101*t676+t289*t660+t11*t676
++2.0*t62*t354+2.0*t62*t281*t131;
+ t686 = t290*t4;
+ t688 = t19*t35;
+ t697 = t235*t58;
+ t715 = t219*t686+t63*t688+t36*t663+2.0*t370*t378+RATIONAL(1.0,2.0)*t29*
+t283+2.0*t206*t381+2.0*t29*t697+2.0*t62*t345+2.0*t86*t281*t58+2.0*t36*t468+2.0*
+t86*t235*t44+t390*t453+2.0*t151*t313+2.0*t151*t561;
+ t719 = t366*t24;
+ t722 = t235*t131;
+ t725 = t12*t20;
+ t730 = t235*t265;
+ t747 = t152*t4;
+ t750 = 2.0*t151*t470+RATIONAL(1.0,2.0)*t281*t719+2.0*t370*t722+t319*t725+
+2.0*t62*t235*t119+2.0*t206*t730+2.0*t206*t387+2.0*t151*t11*t160+2.0*t92*t650+
+t390*t242*t14+2.0*t199*t344*t14+2.0*t151*t286+t319*t747+t11*t491;
+ t751 = t137*t137;
+ t752 = t751*t10;
+ t758 = t649*t35;
+ t764 = t11*t171;
+ t777 = t112*t135;
+ t779 = t751*t135;
+ t786 = 2.0*t752*t58*t4+RATIONAL(1.0,2.0)*t87*t719+t143*t758+2.0*t86*t518+
+t277*t242*t20+2.0*t206*t764+2.0*t151*t406+t25*t224*t4+2.0*t29*t499+2.0*t86*t510
++RATIONAL(1.0,2.0)*t107*t570+t777*t160+t779*t44+2.0*t151*t235*t138+RATIONAL(1.0
+,2.0)*t87*t573;
+ t791 = pow(HD,1.0*RATIONAL(1.0,2.0));
+ t793 = 1/t791/HD;
+ t798 = -t221-t271-t725-t686-t363-t747-t620-t419-t320-t91*t333-2.0*t147
+-2.0*t426;
+ t802 = partial_d_ln_sqrt_g_1;
+ t803 = t91*t802;
+ t805 = partial_d_ln_sqrt_g_2;
+ t806 = t30*t805;
+ t808 = partial_d_ln_sqrt_g_3;
+ t809 = t23*t808;
+ t811 = t30*t802;
+ t813 = t137*t805;
+ t815 = t1*t808;
+ t817 = t23*t802;
+ t819 = t1*t805;
+ t821 = t150*t808;
+ t823 = -t137*t44-2.0*t423-t150*t160-t803*t20-t806*t20-t809*t20-t811*t4-
+t813*t4-t815*t4-t817*t14-t819*t14-t821*t14;
+ t825 = 1/t791;
+ t828 = K_uu_11*t35;
+ t830 = K_uu_12;
+ t833 = t830*t10;
+ t835 = K_uu_13;
+ t838 = t835*t18;
+ t841 = K_uu_22*t10;
+ t843 = K_uu_23;
+ t846 = t843*t18;
+ t849 = K_uu_33*t18;
+ t853 = 1/HD;
+ t866 = HD*HD;
+ t875 = RATIONAL(3.0,2.0)*HA/t791/t866+RATIONAL(1.0,2.0)*HB*t793+HC/t866;
+ partial_H_wrt_partial_d_h_1 = (t142+t213+t280+t348+t396+t432+t467+t503+
+t537+t579+t619+t654+t685+t715+t750+t786)*t793+(t798+t823)*t825+(-2.0*t828*t20
+-2.0*t830*t4*t35-2.0*t833*t20-2.0*t835*t14*t35-2.0*t838*t20-2.0*t841*t4-2.0*
+t843*t14*t10-2.0*t846*t4-2.0*t849*t14)*t853-(-2.0*t92*t20-2.0*t143*t35-2.0*t289
+*t20-2.0*t370*t35-2.0*t62*t20-2.0*t235*t4-2.0*t29*t10-2.0*t86*t4-2.0*t151*t14)*
+t875;
+ t877 = t215*t16;
+ t880 = t23*t16;
+ t883 = t290*t7;
+ t884 = t883*t35;
+ t886 = t220*t33;
+ t889 = t30*t33;
+ t895 = t662*t16;
+ t897 = t243*t16;
+ t900 = t675*t16;
+ t902 = t150*t16;
+ t905 = t270*t33;
+ t907 = t239*t7;
+ t909 = t659*t16;
+ t911 = t224*t16;
+ t912 = t911*t10;
+ t914 = 2.0*t62*t877+2.0*t880*t440+t62*t884+RATIONAL(3.0,2.0)*t219*t886+
+RATIONAL(1.0,2.0)*t889*t573+2.0*t327*t58*t16+t36*t895+2.0*t86*t897+t11*t900+2.0
+*t902*t207+t146*t905+t98*t907+t92*t909+t92*t912;
+ t924 = t82*t16;
+ t930 = t359*t7;
+ t936 = t23*t33;
+ t946 = t416*t33;
+ t948 = t26*t16;
+ t950 = 2.0*t289*t884+t101*t900+RATIONAL(3.0,2.0)*t25*t108*t16+RATIONAL(
+3.0,2.0)*t277*t366*t16+RATIONAL(3.0,2.0)*t319*t924+RATIONAL(3.0,2.0)*t323*t93*
+t7+RATIONAL(3.0,2.0)*t146*t930+RATIONAL(3.0,2.0)*t136*t273*t7+RATIONAL(1.0,2.0)
+*t936*t351+2.0*t880*t378+2.0*t309*t171*t16+t390*t242*t16+t62*t946+t219*t948;
+ t954 = t630*t7;
+ t956 = t91*t33;
+ t957 = t956*t344;
+ t960 = t936*t265;
+ t963 = t36*t255;
+ t966 = t889*t265;
+ t971 = t92*t121;
+ t974 = t1*t16;
+ t978 = t487*t33;
+ t980 = t403*t33;
+ t985 = t1*t7;
+ t987 = t136*t239*t33+t92*t954+2.0*t62*t957+2.0*t86*t960+2.0*t151*t963+2.0
+*t151*t966+2.0*t92*t946+2.0*t235*t971+2.0*t974*t499+t974*t404+t62*t978+2.0*t36*
+t980+2.0*t289*t957+t985*t688;
+ t988 = t30*t7;
+ t993 = t12*t16;
+ t994 = t993*t35;
+ t999 = t92*t335;
+ t1005 = t956*t131;
+ t1017 = t936*t171;
+ t1022 = 2.0*t988*t378+2.0*t11*t966+t11*t994+2.0*t985*t387+t880*t443+2.0*
+t289*t999+2.0*t62*t889*t131+2.0*t235*t1005+2.0*t902*t387+2.0*t11*t963+2.0*t151*
+t985*t171+2.0*t86*t971+2.0*t151*t1017+2.0*t86*t1005;
+ t1028 = t137*t7;
+ t1038 = t956*t78;
+ t1043 = t186*t16;
+ t1044 = t1043*t10;
+ t1048 = t36*t46;
+ t1051 = t889*t58;
+ t1057 = 2.0*t902*t381+t219*t883+2.0*t1028*t499+t86*t980+2.0*t151*t11*t162
++2.0*t289*t101*t68+2.0*t151*t1038+2.0*t985*t381+t36*t1044+2.0*t1028*t622+2.0*
+t235*t1048+2.0*t235*t1051+2.0*t62*t912+t889*t672;
+ t1066 = t398*t7;
+ t1068 = t92*t68;
+ t1073 = t101*t162;
+ t1081 = t581*t7;
+ t1088 = 2.0*t289*t954+t289*t909+2.0*t988*t473+2.0*t327*t10*t255+t36*t1066
++2.0*t11*t1068+2.0*t11*t1038+2.0*t11*t1073+2.0*t11*t1017+2.0*t985*t207+t235*
+t895+4.0*t11*t1081+2.0*t151*t1068+2.0*t974*t540;
+ t1092 = t494*t33;
+ t1094 = t560*t7;
+ t1104 = t988*t131;
+ t1107 = t101*t255;
+ t1116 = t384*t33;
+ t1120 = t649*t33;
+ t1122 = 2.0*t1028*t59+t151*t1092+4.0*t11*t1094+2.0*t235*t960+2.0*t289*
+t936*t78+2.0*t151*t1073+2.0*t86*t1104+2.0*t235*t1107+2.0*t86*t289*t121+4.0*t151
+*t299*t16+t235*t1116+t235*t897+t1028*t385+t289*t1120;
+ t1129 = t484*t33;
+ t1153 = 2.0*t151*t994+RATIONAL(1.0,2.0)*t956*t109+2.0*t880*t626+t86*t1129
++t235*t1129+2.0*t902*t557+2.0*t752*t58*t7+RATIONAL(1.0,2.0)*t936*t83+RATIONAL(
+1.0,2.0)*t889*t719+2.0*t62*t289*t335+2.0*t62*t988*t344+t289*t978+2.0*t62*t999+
+2.0*t62*t11*t68;
+ t1163 = t521*t33;
+ t1165 = t907*t35;
+ t1187 = 2.0*t136*t30*t68+4.0*t151*t266*t16+t11*t1163+t151*t1165+RATIONAL(
+1.0,2.0)*t974*t573+RATIONAL(1.0,2.0)*t880*t570+t151*t1163+2.0*t86*t1051+2.0*
+t606*t58*t33+2.0*t974*t59+t956*t645+2.0*t902*t730+2.0*t390*t91*t121+2.0*t86*
+t1048;
+ t1209 = t30*t121;
+ t1226 = 2.0*t62*t985*t78+2.0*t194*t16*t196+2.0*t199*t33*t78+2.0*t199*t35*
+t68+2.0*t112*t16*t611+2.0*t327*t7*t265+2.0*t98*t30*t255+2.0*t146*t1209+RATIONAL
+(1.0,2.0)*t902*t351+RATIONAL(1.0,2.0)*t988*t109+RATIONAL(1.0,2.0)*t1028*t719+
+2.0*t974*t697+2.0*t98*t91*t68+2.0*t151*t289*t68;
+ t1252 = t152*t7;
+ t1258 = 2.0*t62*t235*t121+2.0*t566*t344*t33+2.0*t880*t722+t777*t162+t146*
+t1043+2.0*t636*t171*t33+2.0*t86*t235*t46+2.0*t86*t1028*t58+t779*t46+RATIONAL(
+1.0,2.0)*t985*t83+RATIONAL(1.0,2.0)*t956*t570+t319*t1252+t277*t186*t7+t25*t224*
+t7;
+ t1288 = t152*t16;
+ t1292 = 2.0*t136*t137*t255+t323*t911+2.0*t151*t1081+2.0*t151*t235*t255+
+4.0*t86*t182*t16+2.0*t880*t371+t458*t162+RATIONAL(1.0,2.0)*t880*t429+2.0*t62*
+t1028*t131+2.0*t115*t7*t132+2.0*t175*t33*t131+2.0*t175*t35*t121+t136*t1288+
+RATIONAL(1.0,2.0)*t974*t283;
+ t1302 = t12*t33;
+ t1307 = t23*t68;
+ t1310 = t1*t255;
+ t1315 = t374*t7;
+ t1327 = RATIONAL(1.0,2.0)*t902*t296+t390*t270*t7+2.0*t199*t344*t16+t319*
+t1302+2.0*t277*t23*t121+2.0*t319*t1307+2.0*t319*t1310+RATIONAL(1.0,2.0)*t988*
+t429+2.0*t11*t1315+2.0*t902*t764+RATIONAL(1.0,2.0)*t1028*t283+RATIONAL(1.0,2.0)
+*t985*t296+t98*t993+t25*t26*t33;
+ t1344 = t19*t33;
+ t1359 = t274*t7;
+ t1361 = t277*t242*t33+t323*t290*t33+2.0*t514*t171*t7+2.0*t175*t344*t7+
+RATIONAL(3.0,2.0)*t98*t295*t33+RATIONAL(3.0,2.0)*t390*t282*t33+t11*t1344+2.0*
+t974*t622+2.0*t62*t36*t121+2.0*t86*t1107+2.0*t151*t1094+2.0*t235*t1066+4.0*t101
+*t1038+t151*t1359;
+ t1368 = t1288*t10;
+ t1373 = t360*t7;
+ t1377 = t94*t7;
+ t1383 = t936*t596+t289*t877+t460*t335+t462*t46+t465*t335+t101*t1368+t101*
+t1315+2.0*t101*t1344+t86*t1373+4.0*t36*t1005+t62*t1377+t902*t495+t988*t758+4.0*
+t101*t966;
+ t1394 = t270*t35*t7;
+ t1409 = 4.0*t235*t1104+t92*t1377+2.0*t151*t1368+2.0*t86*t1044+2.0*t101*
+t1092+2.0*t235*t1394+2.0*t11*t1165+2.0*t92*t1120+2.0*t36*t1116+t36*t1373+t101*
+t1359+t248*t162+t113*t46+t647*t335+t86*t1394;
+ t1418 = -t886-t905-t1302-t883-t930-t1252-t948-t1043-t924-t91*t335-2.0*
+t1209-2.0*t1307;
+ t1431 = -t137*t46-2.0*t1310-t150*t162-t803*t33-t806*t33-t809*t33-t811*t7-
+t813*t7-t815*t7-t817*t16-t819*t16-t821*t16;
+ partial_H_wrt_partial_d_h_2 = (t914+t950+t987+t1022+t1057+t1088+t1122+
+t1153+t1187+t1226+t1258+t1292+t1327+t1361+t1383+t1409)*t793+(t1418+t1431)*t825+
+(-2.0*t828*t33-2.0*t830*t7*t35-2.0*t833*t33-2.0*t835*t16*t35-2.0*t838*t33-2.0*
+t841*t7-2.0*t843*t16*t10-2.0*t846*t7-2.0*t849*t16)*t853-(-2.0*t92*t33-2.0*t988*
+t35-2.0*t289*t33-2.0*t880*t35-2.0*t62*t33-2.0*t235*t7-2.0*t974*t10-2.0*t86*t7
+-2.0*t151*t16)*t875;
+ t1461 = t36*t48;
+ t1464 = t11*t91;
+ t1465 = t35*t20;
+ t1466 = t1465*t14;
+ t1472 = t11*t30;
+ t1474 = t35*t4*t14;
+ t1477 = t151*t30;
+ t1478 = t10*t20;
+ t1479 = t1478*t14;
+ t1483 = t101*t164;
+ t1492 = 2.0*t235*t1461+2.0*t1464*t1466+2.0*t62*t289*t337+2.0*t1472*t1474+
+2.0*t1477*t1479+t779*t48+2.0*t11*t1483+t462*t48+t460*t337+2.0*t277*t104*t4+t458
+*t164;
+ t1493 = t86*t30;
+ t1494 = t1478*t4;
+ t1497 = t235*t23;
+ t1500 = t63*t14;
+ t1505 = t151*t137;
+ t1507 = t10*t4*t14;
+ t1513 = t104*t14;
+ t1518 = 2.0*t1493*t1494+2.0*t1497*t1474+2.0*t319*t1500+t465*t337+t647*
+t337+2.0*t1505*t1507+t248*t164+t113*t48+t777*t164+2.0*t319*t1513+2.0*t199*t1466
;
- t1137 = t275*t28;
- t1138 = t1137*t10;
- t1148 = t1*t7;
- t1165 = t441*t7;
- t1170 = t123*t1138+2.0*t11*t921*t73+t921*t520+2.0*t58*t958+2.0*t58*t955+
-2.0*t1148*t124+2.0*t317*t18*t63+2.0*t317*t16*t73+t123*t879+2.0*t300*t7*t178+2.0
-*t1148*t151+2.0*t117*t1047+4.0*t107*t1165+2.0*t117*t1050;
- t1197 = t192*t16;
- t1205 = 2.0*t259*t28*t297+2.0*t300*t10*t168+2.0*t968*t491+2.0*t11*t985+
-2.0*t11*t989+2.0*t901*t457+2.0*t264*t24*t359+2.0*t107*t1088+2.0*t107*t889+t264*
-t159*t16+t397*t1197+RATIONAL(1.0,2.0)*t988*t247+RATIONAL(1.0,2.0)*t947*t198+
-RATIONAL(1.0,2.0)*t921*t330;
- t1221 = t226*t16;
- t1225 = t182*t28;
- t1227 = t159*t28;
- t1234 = RATIONAL(1.0,2.0)*t901*t350+RATIONAL(1.0,2.0)*t968*t209+2.0*t344*
-t12*t63+2.0*t344*t1*t168+t543*t1137+t264*t103*t7+t255*t147*t16+t253*t1221+t543*
-t201*t16+t578*t1225+t376*t1227+t344*t192*t28+t514*t182*t16+t102*t1095;
- t1240 = t24*t63;
- t1253 = t488*t16;
- t1255 = t507*t16;
- t1257 = t448*t28;
- t1260 = t539*t7;
- t1266 = t102*t876+t947*t504+2.0*t58*t1067+2.0*t397*t1240+2.0*t58*t1070+
-RATIONAL(3.0,2.0)*t514*t187*t28+RATIONAL(1.0,2.0)*t988*t212+2.0*t236*t98*t16+
-t58*t1253+t107*t1255+t102*t1257+t19*t1100+4.0*t58*t1260+2.0*t232*t53*t7;
- t1269 = t226*t7;
- t1271 = t201*t7;
- t1295 = t19*t884+t578*t1081+t376*t1269+t344*t1271+RATIONAL(1.0,2.0)*t1148
-*t647+RATIONAL(1.0,2.0)*t968*t621+RATIONAL(1.0,2.0)*t901*t624+RATIONAL(1.0,2.0)
-*t893*t647+RATIONAL(1.0,2.0)*t925*t621+RATIONAL(1.0,2.0)*t908*t624+2.0*t617*
-t143*t28+2.0*t241*t143*t16+t988*t575+2.0*t376*t12*t359;
- t1302 = t305*t16;
- t1308 = t182*t18*t28;
- t1311 = t193*t16;
- t1322 = t223*t16;
- t1326 = t227*t16;
- t1331 = t117*t1253+t81*t1255+RATIONAL(1.0,2.0)*t1148*t212+t31*t1302+2.0*
-t300*t98*t28+2.0*t31*t1308+2.0*t123*t1311+4.0*t117*t710*t28+2.0*t11*t1082+2.0*
-t117*t11*t63+2.0*t123*t1322+t11*t1302+2.0*t102*t1326+2.0*t117*t1260;
- t1337 = t192*t18*t28;
- t1345 = t1269*t18;
- t1352 = t1271*t18;
- t1354 = t160*t16;
- t1360 = 2.0*t19*t1065+2.0*t908*t460+2.0*t117*t1337+t19*t1086+2.0*t31*
-t1148*t53+t81*t1326+t81*t1345+t925*t470+t117*t1322+2.0*t232*t18*t359+t117*t1352
-+2.0*t102*t1354+t908*t224+2.0*t893*t473;
- t1362 = t183*t16;
- t1373 = t1227*t18;
- t1375 = t57*t168;
- t1386 = 2.0*t19*t1362+2.0*t107*t1345+2.0*t58*t1352+2.0*t925*t438+t901*
-t589+t58*t1337+t107*t1373+2.0*t397*t1375+t107*t1354+t968*t773+t479*t89+t745*t89
-+t752*t41+2.0*t31*t11*t41;
- t1394 = t404*t28;
- t1410 = t123*t1084+t102*t1106+2.0*t81*t1373+4.0*t123*t1070+t107*t1257+t58
-*t1394+2.0*t81*t11*t359+t123*t1394+2.0*t117*t1138+2.0*t81*t1165+t11*t1308+t11*
-t1362+t1148*t338+t58*t1311+4.0*t123*t958;
- t1419 = -t918-t1221-t1197-t1081-t1017-t943-t1225-t981-t935-t12*t41-2.0*
-t1078-2.0*t1240;
- t1432 = -t82*t89-2.0*t1375-t116*t134-t801*t16-t804*t16-t807*t16-t809*t7-
-t811*t7-t813*t7-t815*t28-t817*t28-t819*t28;
- partial_H_wrt_partial_d_h_2 = (t914+t953+t992+t1028+t1062+t1098+t1136+
-t1170+t1205+t1234+t1266+t1295+t1331+t1360+t1386+t1410)*t791+(t1419+t1432)*t823+
-(-2.0*t826*t16-2.0*t828*t7*t18-2.0*t831*t16-2.0*t833*t28*t18-2.0*t836*t16-2.0*
-t839*t7-2.0*t841*t28*t10-2.0*t844*t7-2.0*t847*t28)*t851-(-2.0*t19*t16-2.0*t1148
-*t18-2.0*t11*t16-2.0*t893*t18-2.0*t31*t16-2.0*t107*t7-2.0*t925*t10-2.0*t81*t7
--2.0*t117*t28)*t873;
- t1466 = t10*t4*t26;
- t1469 = t164*t4;
- t1472 = t107*t12;
- t1473 = t18*t14;
- t1474 = t1473*t4;
- t1477 = t117*t12;
- t1478 = t1473*t26;
- t1485 = t117*t1;
- t1486 = t10*t14;
- t1487 = t1486*t26;
- t1490 = t81*t1;
- t1491 = t1486*t4;
- t1495 = t18*t4*t26;
- t1498 = t81*t24;
- t1501 = 2.0*t543*t164*t26+2.0*t300*t1466+2.0*t253*t1469+2.0*t1472*t1474+
-2.0*t1477*t1478+t327*t136+2.0*t344*t122*t26+2.0*t1485*t1487+2.0*t1490*t1491+2.0
-*t1485*t1495+2.0*t1498*t1495;
- t1502 = t102*t91;
- t1511 = t123*t136;
- t1517 = t19*t43;
- t1520 = t31*t82;
- t1523 = t81*t12;
- t1526 = t31*t1;
- t1529 = t117*t82;
- t1532 = 2.0*t81*t1502+2.0*t31*t11*t43+t479*t91+2.0*t1498*t1487+2.0*t117*
-t1511+2.0*t81*t107*t91+2.0*t31*t1517+2.0*t1520*t1491+2.0*t1523*t1474+2.0*t1526*
-t1474+2.0*t1529*t1466;
- t1534 = t58*t12;
- t1539 = t11*t24;
- t1557 = t58*t1;
- t1560 = 2.0*t1534*t1478+t79*t43+t697*t136+2.0*t1539*t1478+2.0*t232*t1474+
-2.0*t11*t1517+2.0*t107*t1502+2.0*t117*t58*t136+2.0*t543*t83*t26+2.0*t264*t393*
-t4+2.0*t1557*t1495;
- t1573 = t393*t26;
- t1576 = t130*t26;
- t1582 = t107*t24;
- t1585 = 2.0*t317*t1478+t695*t91+2.0*t344*t32*t26+2.0*t376*t32*t4+2.0*t58*
-t1511+t570*t43+2.0*t397*t1573+2.0*t397*t1576+t752*t43+t724*t136+t745*t91+2.0*
-t1582*t1495;
- partial_H_wrt_partial_dd_h_11 = (t1501+t1532+t1560+t1585)*t791+(-t12*t43
--2.0*t1469-2.0*t1573-t82*t91-2.0*t1576-t116*t136)*t823;
- t1597 = -t363-t365;
- t1598 = t1*t1597;
- t1603 = -t67-t69;
- t1606 = -t172-t174;
- t1607 = t57*t1606;
- t1609 = t19*t1597;
- t1616 = t102*t1606;
- t1619 = -t253*t1598+t745*t93-t264*t24*t1597-t543*t1*t1603-t397*t1607-t81*
-t1609-t317*t18*t1603+t570*t46-t300*t10*t1606-t117*t1616+t479*t93;
- t1621 = t123*t1606;
- t1633 = t18*t16;
- t1634 = t1633*t14;
- t1639 = t24*t1603;
- t1651 = t18*t28*t26;
- t1654 = -2.0*t107*t1621-2.0*t376*t12*t1597-2.0*t344*t1*t1606+2.0*t724*
-t138+4.0*t31*t12*t1634+2.0*t752*t46-2.0*t397*t1639+2.0*t79*t46+2.0*t697*t138+
-4.0*t11*t12*t1634+4.0*t58*t24*t1651;
- t1659 = t18*t7;
- t1660 = t1659*t4;
- t1663 = t19*t1603;
- t1669 = t10*t16;
- t1680 = t10*t7;
- t1692 = -2.0*t232*t18*t1597+4.0*t1490*t1660-2.0*t58*t1663+4.0*t107*t1*
-t1660+4.0*t1526*t1669*t14-2.0*t117*t11*t1603-2.0*t344*t12*t1603+4.0*t81*t82*
-t1680*t4-2.0*t31*t58*t1603+2.0*t327*t138-2.0*t81*t11*t1597;
- t1726 = -2.0*t117*t107*t1606+2.0*t695*t93-2.0*t58*t1616-2.0*t31*t107*
-t1597-2.0*t31*t102*t1597-2.0*t543*t82*t1606+4.0*t117*t57*t10*t28*t26-2.0*t107*
-t1609-2.0*t11*t123*t1603-2.0*t117*t1663-2.0*t81*t1621+4.0*t117*t24*t1651;
- partial_H_wrt_partial_dd_h_12 = (2.0*t1619+t1654+t1692+t1726)*t791+(-2.0*
-t988*t14+2.0*t1598+2.0*t1639-2.0*t968*t4+2.0*t1607-2.0*t908*t26)*t823;
- t1737 = t123*t141;
- t1741 = t1659*t28;
- t1744 = t1633*t7;
- t1747 = t1680*t28;
- t1756 = t19*t50;
- t1762 = t79*t50+2.0*t117*t1737+t724*t141+2.0*t1498*t1741+2.0*t1472*t1744+
-2.0*t300*t1747+2.0*t232*t1744+2.0*t543*t947*t28+t697*t141+2.0*t11*t1756+2.0*t81
-*t107*t96;
- t1763 = t947*t7;
- t1766 = t102*t96;
- t1769 = t1633*t28;
- t1772 = t921*t28;
- t1778 = t901*t28;
- t1793 = 2.0*t253*t1763+2.0*t107*t1766+2.0*t1534*t1769+2.0*t397*t1772+2.0*
-t264*t921*t7+2.0*t397*t1778+t695*t96+2.0*t317*t1769+2.0*t344*t988*t28+2.0*t376*
-t988*t7+2.0*t344*t1148*t28;
- t1795 = t1669*t7;
- t1800 = t1669*t28;
- t1818 = 2.0*t1520*t1795+2.0*t1526*t1744+2.0*t1485*t1800+2.0*t1490*t1795+
-2.0*t1498*t1800+2.0*t1529*t1747+2.0*t117*t58*t141+2.0*t1485*t1741+t479*t96+2.0*
-t58*t1737+t745*t96;
- t1842 = 2.0*t1523*t1744+2.0*t31*t11*t50+2.0*t1477*t1769+2.0*t543*t968*t28
-+2.0*t1539*t1769+2.0*t31*t1756+2.0*t1582*t1741+2.0*t1557*t1741+t752*t50+t570*
-t50+2.0*t81*t1766+t327*t141;
- partial_H_wrt_partial_dd_h_22 = (t1762+t1793+t1818+t1842)*t791+(-t12*t50
--2.0*t1763-2.0*t1772-t82*t96-2.0*t1778-t116*t141)*t823;
+ t1526 = t289*t23;
+ t1528 = t62*t137;
+ t1536 = t62*t1;
+ t1540 = t136*t87*t14+t86*t235*t48+t136*t281*t14+t1526*t1466+t1528*t1494+
+t151*t11*t164+t86*t1461+t327*t1507+t98*t107*t14+t1536*t1479+t390*t107*t4;
+ t1542 = t87*t4;
+ t1546 = t1465*t4;
+ t1548 = t92*t337;
+ t1550 = t62*t30;
+ t1552 = t86*t91;
+ t1556 = t151*t91;
+ t1559 = t235*t91;
+ t1562 = t146*t1542+t98*t143*t14+t175*t1546+t62*t1548+t1550*t1546+t1552*
+t1546+t151*t1483+t289*t1548+t1556*t1466+t1536*t1474+t1559*t1546+t1477*t1474;
+ partial_H_wrt_partial_dd_h_11 = (t1492+t1518+2.0*t1540+2.0*t1562)*t793+(-
+t91*t337-2.0*t1542-2.0*t1513-t137*t48-2.0*t1500-t150*t164)*t825;
+ t1582 = -t72-t74;
+ t1583 = t92*t1582;
+ t1586 = -t125-t127;
+ t1590 = t92*t1586;
+ t1594 = t35*t33;
+ t1595 = t1594*t20;
+ t1598 = -t259-t261;
+ t1607 = t30*t1586;
+ t1612 = 2.0*t777*t166+4.0*t151*t1*t10*t16*t14-2.0*t151*t1583-2.0*t175*t35
+*t1586-2.0*t86*t1590+4.0*t62*t91*t1595-2.0*t98*t30*t1598-2.0*t390*t91*t1586-2.0
+*t235*t1590-2.0*t146*t1607+2.0*t113*t51;
+ t1615 = t35*t16*t14;
+ t1618 = t36*t1598;
+ t1623 = t23*t1582;
+ t1626 = t101*t1598;
+ t1644 = 4.0*t151*t23*t1615-2.0*t151*t1618+2.0*t460*t339-2.0*t319*t1623
+-2.0*t86*t1626+2.0*t462*t51+2.0*t458*t166-2.0*t98*t91*t1582+4.0*t289*t91*t1595
+-2.0*t11*t1583-2.0*t199*t35*t1582;
+ t1656 = t35*t7;
+ t1657 = t1656*t4;
+ t1677 = -2.0*t11*t1618+2.0*t647*t339-2.0*t136*t137*t1598-2.0*t235*t1626+
+4.0*t235*t30*t1657+4.0*t11*t23*t1615-2.0*t136*t30*t1582-2.0*t62*t235*t1586-2.0*
+t277*t23*t1586-2.0*t151*t289*t1582+2.0*t465*t339;
+ t1679 = t10*t7;
+ t1686 = t10*t33;
+ t1695 = t1*t1598;
+ t1714 = 4.0*t86*t137*t1679*t4-2.0*t86*t289*t1586+4.0*t1550*t1686*t20+2.0*
+t248*t166-2.0*t151*t235*t1598-2.0*t319*t1695-2.0*t327*t10*t1598-2.0*t289*t101*
+t1582-2.0*t62*t11*t1582+4.0*t1493*t1657+2.0*t779*t51-2.0*t62*t36*t1586;
+ partial_H_wrt_partial_dd_h_12 = (t1612+t1644+t1677+t1714)*t793+(-2.0*t956
+*t20+2.0*t1607+2.0*t1623-2.0*t1028*t4+2.0*t1695-2.0*t902*t14)*t825;
+ t1730 = t1686*t7;
+ t1742 = t1656*t16;
+ t1745 = t458*t169+t248*t169+t465*t342+t113*t55+t462*t55+t460*t342+2.0*
+t1528*t1730+2.0*t62*t289*t342+2.0*t136*t1028*t16+2.0*t136*t889*t16+2.0*t1497*
+t1742;
+ t1746 = t889*t7;
+ t1749 = t1594*t16;
+ t1768 = t101*t169;
+ t1774 = 2.0*t146*t1746+2.0*t1526*t1749+2.0*t390*t956*t7+2.0*t199*t1749+
+2.0*t1493*t1730+t647*t342+2.0*t98*t988*t16+2.0*t98*t956*t16+2.0*t1464*t1749+2.0
+*t11*t1768+2.0*t277*t936*t7;
+ t1776 = t36*t55;
+ t1784 = t1594*t7;
+ t1791 = t1686*t16;
+ t1794 = t1679*t16;
+ t1797 = t985*t16;
+ t1800 = t92*t342;
+ t1803 = 2.0*t86*t1776+2.0*t151*t11*t169+2.0*t1556*t1749+2.0*t175*t1784+
+2.0*t235*t1776+t779*t55+t777*t169+2.0*t1477*t1791+2.0*t327*t1794+2.0*t319*t1797
++2.0*t62*t1800;
+ t1806 = t936*t16;
+ t1818 = t86*t235*t55+t319*t1806+t1505*t1794+t1550*t1784+t1536*t1791+t151*
+t1768+t1559*t1784+t289*t1800+t1472*t1742+t1477*t1742+t1552*t1784+t1536*t1742;
+ partial_H_wrt_partial_dd_h_22 = (t1745+t1774+t1803+2.0*t1818)*t793+(-t91*
+t342-2.0*t1746-2.0*t1806-t137*t55-2.0*t1797-t150*t169)*t825;
diff --git a/src/gr.cg/horizon_function.c b/src/gr.cg/horizon_function.c
index c31778c..7e6e717 100644
--- a/src/gr.cg/horizon_function.c
+++ b/src/gr.cg/horizon_function.c
@@ -1,23 +1,22 @@
/*
- * inputs = {r, partial_d_ln_sqrt_g, partial_d_g_uu, X_ud, X_udd, g_uu, K_uu, h, HA, HB, HC, HD, K}
- * outputs = {H, HA, HB, HC, HD}
- * cost = 136*assignments+7*divisions+7*functions+402*multiplications+176*additions
+ * inputs = {r, partial_d_ln_sqrt_g, partial_d_g_uu, X_ud, X_udd, g_uu, K_uu, h}
+ * outputs = {HA, HB, HC, HD}
+ * cost = 134*assignments+3*divisions+5*functions+401*multiplications+173*additions
*/
fp t1, t2, t4, t5, t7, t8, t10, t11, t12, t14;
-fp t16, t18, t19, t21, t23, t25, t28, t29, t30, t32;
-fp t33, t35, t37, t43, t44, t47, t50, t51, t53, t55;
-fp t56, t57, t58, t61, t62, t63, t64, t65, t67, t69;
-fp t72, t73, t76, t78, t85, t90, t92, t94, t95, t96;
-fp t99, t100, t101, t102, t105, t106, t107, t111, t114, t115;
-fp t117, t118, t133, t134, t137, t138, t141, t142, t145, t146;
-fp t149, t150, t158, t163, t165, t169, t170, t173, t174, t179;
-fp t194, t198, t199, t204, t220, t227, t234, t237, t239, t242;
-fp t247, t250, t254, t261, t262, t265, t267, t270, t273, t276;
-fp t279, t292, t295, t296, t299, t306, t307, t312, t315, t318;
-fp t320, t323, t333, t342, t343, t346, t349, t350, t361, t362;
-fp t368, t378, t394, t413, t431, t440, t444, t447, t450, t465;
-fp t490;
- t1 = g_uu_13;
+fp t16, t18, t19, t20, t23, t24, t25, t26, t29, t30;
+fp t31, t33, t35, t37, t38, t40, t41, t42, t43, t45;
+fp t46, t47, t48, t50, t51, t52, t53, t55, t58, t59;
+fp t61, t64, t67, t68, t70, t72, t73, t75, t77, t83;
+fp t84, t87, t90, t91, t93, t95, t112, t130, t134, t137;
+fp t139, t143, t147, t150, t152, t159, t164, t166, t168, t176;
+fp t181, t183, t199, t203, t206, t209, t213, t216, t217, t219;
+fp t228, t229, t232, t235, t236, t237, t240, t243, t247, t251;
+fp t254, t259, t260, t262, t263, t269, t272, t273, t276, t279;
+fp t282, t283, t290, t293, t296, t299, t302, t305, t312, t315;
+fp t318, t324, t325, t329, t330, t338, t358, t381, t392, t395;
+fp t396, t397, t408, t411, t431, t440, t444, t447, t450, t465;
+ t1 = g_uu_33;
t2 = 1/r;
t4 = X_ud_13;
t5 = PARTIAL_RHO(h);
@@ -25,160 +24,159 @@ fp t490;
t8 = PARTIAL_SIGMA(h);
t10 = zz*t2-t4*t5-t7*t8;
t11 = t1*t10;
- t12 = partial_d_g_uu_112;
- t14 = X_ud_12;
- t16 = X_ud_22;
- t18 = yy*t2-t14*t5-t16*t8;
- t19 = t12*t18;
- t21 = X_ud_11;
- t23 = X_ud_21;
- t25 = xx*t2-t21*t5-t23*t8;
- t28 = g_uu_23;
- t29 = t28*t28;
- t30 = t10*t10;
- t32 = xx*xx;
- t33 = zz*zz;
- t35 = r*r;
- t37 = 1/t35/r;
- t43 = t14*t14;
- t44 = PARTIAL_RHO_RHO(h);
- t47 = PARTIAL_RHO_SIGMA(h);
- t50 = t16*t16;
- t51 = PARTIAL_SIGMA_SIGMA(h);
- t53 = (t32+t33)*t37-X_udd_122*t5-X_udd_222*t8-t43*t44-2.0*t16*t14*t47-t50
-*t51;
- t55 = g_uu_33;
- t56 = t55*t10;
- t57 = partial_d_g_uu_312;
- t58 = t57*t18;
- t61 = g_uu_22;
- t62 = t18*t18;
- t63 = t61*t62;
- t64 = partial_d_g_uu_212;
- t65 = t64*t25;
- t67 = t30*t10;
- t69 = partial_d_g_uu_233;
- t72 = t28*t10;
- t73 = t64*t18;
- t76 = t55*t55;
- t78 = yy*yy;
- t85 = t4*t4;
- t90 = t7*t7;
- t92 = (t32+t78)*t37-X_udd_133*t5-X_udd_233*t8-t85*t44-2.0*t7*t4*t47-t90*
-t51;
- t94 = t61*t18;
- t95 = partial_d_g_uu_213;
- t96 = t95*t10;
- t99 = g_uu_12;
- t100 = t99*t18;
- t101 = partial_d_g_uu_113;
- t102 = t101*t10;
- t105 = t28*t18;
- t106 = partial_d_g_uu_313;
- t107 = t106*t10;
- t111 = partial_d_g_uu_133;
- t114 = t25*t25;
- t115 = t1*t114;
- t117 = -t11*t19*t25-t29*t30*t53-t56*t58*t25-t63*t65+RATIONAL(-1.0,2.0)*
-t28*t67*t69-t72*t73*t25-t76*t30*t92-t94*t96*t25-t100*t102*t25-t105*t107*t25+
-RATIONAL(-1.0,2.0)*t1*t67*t111-t115*t107;
- t118 = t55*t30;
- t133 = -yy*zz*t37-X_udd_123*t5-X_udd_223*t8-t14*t4*t44-t16*t4*t47-t14*t7*
-t47-t16*t7*t51;
- t134 = t28*t133;
- t137 = partial_d_g_uu_111;
- t138 = t137*t114;
- t141 = partial_d_g_uu_311;
- t142 = t141*t114;
- t145 = partial_d_g_uu_211;
- t146 = t145*t114;
- t149 = g_uu_11;
- t150 = t149*t149;
- t158 = t21*t21;
- t163 = t23*t23;
- t165 = (t78+t33)*t37-X_udd_111*t5-X_udd_211*t8-t158*t44-2.0*t23*t21*t47-
-t163*t51;
- t169 = t99*t25;
- t170 = t69*t30;
- t173 = t149*t25;
- t174 = t111*t30;
- t179 = t99*t114;
- t194 = -xx*yy*t37-X_udd_112*t5-X_udd_212*t8-t21*t14*t44-t23*t14*t47-t21*
-t16*t47-t23*t16*t51;
- t198 = partial_d_g_uu_333;
- t199 = t198*t30;
- t204 = -2.0*t118*t134+RATIONAL(-1.0,2.0)*t11*t138+RATIONAL(-1.0,2.0)*t105
-*t142+RATIONAL(-1.0,2.0)*t94*t146-t150*t114*t165+RATIONAL(-1.0,2.0)*t100*t138+
-RATIONAL(-1.0,2.0)*t169*t170+RATIONAL(-1.0,2.0)*t173*t174+RATIONAL(-1.0,2.0)*
-t100*t174-2.0*t179*t149*t194+RATIONAL(-1.0,2.0)*t105*t199+RATIONAL(-1.0,2.0)*
-t94*t170;
- t220 = -xx*zz*t37-X_udd_113*t5-X_udd_213*t8-t21*t4*t44-t23*t4*t47-t21*t7*
-t47-t23*t7*t51;
- t227 = t99*t194;
- t234 = t99*t99;
- t237 = t149*t114;
- t239 = t28*t30;
- t242 = t1*t1;
- t247 = t61*t61;
- t250 = t28*t62;
- t254 = -2.0*t115*t149*t220-2.0*t115*t99*t133-2.0*t63*t227+RATIONAL(-1.0,
-2.0)*t72*t146+RATIONAL(-1.0,2.0)*t56*t142-t234*t114*t53-t237*t19-t239*t95*t25-
-t242*t114*t92-t234*t62*t165-t247*t62*t53-2.0*t250*t99*t220;
- t261 = partial_d_g_uu_222;
- t262 = t261*t62;
- t265 = t106*t25;
- t267 = t1*t30;
- t270 = t169*t53;
- t273 = t173*t220;
- t276 = t173*t165;
- t279 = t114*t25;
- t292 = -2.0*t234*t18*t25*t194-t179*t96-t237*t102+RATIONAL(-1.0,2.0)*t169*
-t262-t118*t265-t267*t101*t25-2.0*t94*t270-2.0*t105*t273-2.0*t100*t276+RATIONAL(
--1.0,2.0)*t149*t279*t137+RATIONAL(-1.0,2.0)*t99*t279*t145+RATIONAL(-1.0,2.0)*
-t55*t67*t198+RATIONAL(-1.0,2.0)*t1*t279*t141;
- t295 = partial_d_g_uu_122;
- t296 = t295*t62;
- t299 = t173*t194;
- t306 = t1*t25;
- t307 = t306*t133;
- t312 = t169*t133;
- t315 = t306*t92;
- t318 = t62*t18;
- t320 = partial_d_g_uu_322;
- t323 = t320*t62;
- t333 = RATIONAL(-1.0,2.0)*t173*t296-2.0*t94*t299-2.0*t242*t10*t25*t220
--2.0*t72*t307-t250*t57*t25-2.0*t56*t312-2.0*t56*t315+RATIONAL(-1.0,2.0)*t28*
-t318*t320+RATIONAL(-1.0,2.0)*t306*t323+RATIONAL(-1.0,2.0)*t99*t318*t295-2.0*t72
-*t270+RATIONAL(-1.0,2.0)*t56*t323;
- t342 = partial_d_g_uu_223;
- t343 = t342*t10;
- t346 = t99*t62;
- t349 = partial_d_g_uu_323;
- t350 = t349*t10;
- t361 = partial_d_g_uu_123;
- t362 = t361*t10;
- t368 = -t179*t73+RATIONAL(-1.0,2.0)*t61*t318*t261-2.0*t56*t273-2.0*t72*
-t299-t169*t343*t18-t346*t12*t25-t306*t350*t18-2.0*t11*t276-2.0*t94*t307-2.0*
-t105*t315+RATIONAL(-1.0,2.0)*t11*t296-t346*t362-2.0*t29*t10*t18*t133;
- t378 = t349*t18;
- t394 = RATIONAL(-1.0,2.0)*t72*t262-t63*t343-t250*t350-t239*t342*t18-t267*
-t361*t18-t118*t378+RATIONAL(-1.0,2.0)*t306*t199-t173*t362*t18-2.0*t105*t312-2.0
-*t100*t306*t220-2.0*t250*t61*t133-t29*t62*t92;
- t413 = t1*t220;
- t431 = -2.0*t56*t94*t133-2.0*t56*t105*t92-t115*t58-2.0*t11*t169*t194-t242
-*t30*t165-2.0*t11*t100*t165-2.0*t239*t1*t194-2.0*t118*t413-2.0*t11*t105*t220
--2.0*t72*t94*t53-2.0*t11*t94*t194-2.0*t56*t100*t220-2.0*t72*t100*t194;
- HA = t117+t204+t254+t292+t333+t368+t394+t431;
- t440 = t137*t25+t65+t265+t19+t261*t18+t378+t102+t343+t198*t10+t149*t165+
-2.0*t227+2.0*t413;
+ t12 = partial_d_g_uu_311;
+ t14 = X_ud_11;
+ t16 = X_ud_21;
+ t18 = xx*t2-t14*t5-t16*t8;
+ t19 = t18*t18;
+ t20 = t12*t19;
+ t23 = g_uu_23;
+ t24 = t23*t10;
+ t25 = partial_d_g_uu_211;
+ t26 = t25*t19;
+ t29 = g_uu_13;
+ t30 = t29*t19;
+ t31 = partial_d_g_uu_312;
+ t33 = X_ud_12;
+ t35 = X_ud_22;
+ t37 = yy*t2-t33*t5-t35*t8;
+ t38 = t31*t37;
+ t40 = g_uu_12;
+ t41 = t40*t19;
+ t42 = partial_d_g_uu_212;
+ t43 = t42*t37;
+ t45 = g_uu_11;
+ t46 = t45*t19;
+ t47 = partial_d_g_uu_112;
+ t48 = t47*t37;
+ t50 = g_uu_22;
+ t51 = t37*t37;
+ t52 = t50*t51;
+ t53 = t42*t18;
+ t55 = t40*t51;
+ t58 = partial_d_g_uu_113;
+ t59 = t58*t10;
+ t61 = t23*t51;
+ t64 = t29*t10;
+ t67 = partial_d_g_uu_213;
+ t68 = t67*t10;
+ t70 = t45*t45;
+ t72 = yy*yy;
+ t73 = zz*zz;
+ t75 = r*r;
+ t77 = 1/t75/r;
+ t83 = t14*t14;
+ t84 = PARTIAL_RHO_RHO(h);
+ t87 = PARTIAL_RHO_SIGMA(h);
+ t90 = t16*t16;
+ t91 = PARTIAL_SIGMA_SIGMA(h);
+ t93 = (t72+t73)*t77-X_udd_111*t5-X_udd_211*t8-t83*t84-2.0*t16*t14*t87-t90
+*t91;
+ t95 = RATIONAL(-1.0,2.0)*t11*t20+RATIONAL(-1.0,2.0)*t24*t26-t30*t38-t41*
+t43-t46*t48-t52*t53-t55*t47*t18-t46*t59-t61*t31*t18-t64*t48*t18-t41*t68-t70*t19
+*t93;
+ t112 = -xx*yy*t77-X_udd_112*t5-X_udd_212*t8-t14*t33*t84-t16*t33*t87-t14*
+t35*t87-t16*t35*t91;
+ t130 = -xx*zz*t77-X_udd_113*t5-X_udd_213*t8-t14*t4*t84-t16*t4*t87-t14*t7*
+t87-t16*t7*t91;
+ t134 = t40*t37;
+ t137 = t51*t37;
+ t139 = partial_d_g_uu_322;
+ t143 = partial_d_g_uu_122;
+ t147 = partial_d_g_uu_222;
+ t150 = t40*t40;
+ t152 = xx*xx;
+ t159 = t33*t33;
+ t164 = t35*t35;
+ t166 = (t152+t73)*t77-X_udd_122*t5-X_udd_222*t8-t159*t84-2.0*t35*t33*t87-
+t164*t91;
+ t168 = t29*t29;
+ t176 = t4*t4;
+ t181 = t7*t7;
+ t183 = (t152+t72)*t77-X_udd_133*t5-X_udd_233*t8-t176*t84-2.0*t7*t4*t87-
+t181*t91;
+ t199 = -yy*zz*t77-X_udd_123*t5-X_udd_223*t8-t33*t4*t84-t35*t4*t87-t33*t7*
+t87-t35*t7*t91;
+ t203 = t40*t112;
+ t206 = t50*t37;
+ t209 = -t24*t43*t18-2.0*t41*t45*t112-2.0*t30*t45*t130-t134*t59*t18+
+RATIONAL(-1.0,2.0)*t23*t137*t139+RATIONAL(-1.0,2.0)*t40*t137*t143+RATIONAL(-1.0
+,2.0)*t50*t137*t147-t150*t19*t166-t168*t19*t183-2.0*t30*t40*t199-2.0*t52*t203-
+t206*t68*t18;
+ t213 = t50*t50;
+ t216 = t10*t10;
+ t217 = t216*t10;
+ t219 = partial_d_g_uu_333;
+ t228 = partial_d_g_uu_123;
+ t229 = t228*t10;
+ t232 = partial_d_g_uu_233;
+ t235 = t23*t37;
+ t236 = partial_d_g_uu_313;
+ t237 = t236*t10;
+ t240 = t23*t23;
+ t243 = t29*t18;
+ t247 = t243*t183;
+ t251 = partial_d_g_uu_133;
+ t254 = -t150*t51*t93-t213*t51*t166+RATIONAL(-1.0,2.0)*t1*t217*t219-2.0*
+t61*t40*t130-2.0*t61*t50*t199-t55*t229+RATIONAL(-1.0,2.0)*t23*t217*t232-t235*
+t237*t18-t240*t51*t183-2.0*t134*t243*t130-2.0*t235*t247+RATIONAL(-1.0,2.0)*t29*
+t217*t251;
+ t259 = partial_d_g_uu_323;
+ t260 = t259*t10;
+ t262 = partial_d_g_uu_223;
+ t263 = t262*t10;
+ t269 = t243*t199;
+ t272 = t40*t18;
+ t273 = t272*t166;
+ t276 = t272*t199;
+ t279 = t219*t216;
+ t282 = t45*t18;
+ t283 = t251*t216;
+ t290 = t232*t216;
+ t293 = t23*t216;
+ t296 = -2.0*t150*t37*t18*t112-t61*t260-t52*t263-2.0*t168*t10*t18*t130-2.0
+*t206*t269-2.0*t206*t273-2.0*t235*t276+RATIONAL(-1.0,2.0)*t243*t279+RATIONAL(
+-1.0,2.0)*t282*t283+RATIONAL(-1.0,2.0)*t235*t279+RATIONAL(-1.0,2.0)*t134*t283+
+RATIONAL(-1.0,2.0)*t206*t290-t293*t262*t37;
+ t299 = t29*t216;
+ t302 = t147*t51;
+ t305 = t139*t51;
+ t312 = t282*t93;
+ t315 = t282*t130;
+ t318 = t282*t112;
+ t324 = t1*t216;
+ t325 = t236*t18;
+ t329 = -t299*t228*t37+RATIONAL(-1.0,2.0)*t272*t302+RATIONAL(-1.0,2.0)*t11
+*t305+RATIONAL(-1.0,2.0)*t24*t302+RATIONAL(-1.0,2.0)*t272*t290-2.0*t134*t312
+-2.0*t235*t315-2.0*t206*t318-t30*t237-2.0*t24*t269-t324*t325-2.0*t11*t247;
+ t330 = t259*t37;
+ t338 = t143*t51;
+ t358 = -t324*t330-2.0*t11*t315-t272*t263*t37-2.0*t11*t276+RATIONAL(-1.0,
+2.0)*t282*t338-t243*t260*t37-2.0*t64*t312-t282*t229*t37-t299*t58*t18-2.0*t24*
+t273-2.0*t24*t318+RATIONAL(-1.0,2.0)*t64*t338-2.0*t64*t235*t130;
+ t381 = t29*t130;
+ t392 = t23*t199;
+ t395 = -2.0*t240*t10*t37*t199-2.0*t11*t235*t183-2.0*t11*t134*t130-2.0*t64
+*t134*t93-2.0*t24*t206*t166-t11*t38*t18-2.0*t293*t29*t112-2.0*t324*t381-2.0*t11
+*t206*t199-2.0*t64*t206*t112-t168*t216*t93-2.0*t324*t392;
+ t396 = partial_d_g_uu_111;
+ t397 = t396*t19;
+ t408 = t1*t1;
+ t411 = t19*t18;
+ t431 = RATIONAL(-1.0,2.0)*t134*t397+RATIONAL(-1.0,2.0)*t206*t26+RATIONAL(
+-1.0,2.0)*t235*t20+RATIONAL(-1.0,2.0)*t64*t397-t240*t216*t166-t408*t216*t183+
+RATIONAL(-1.0,2.0)*t45*t411*t396+RATIONAL(-1.0,2.0)*t40*t411*t25+RATIONAL(-1.0,
+2.0)*t29*t411*t12-2.0*t24*t134*t112+RATIONAL(-1.0,2.0)*t243*t305-t293*t67*t18
+-2.0*t64*t272*t112;
+ HA = t95+t209+t254+t296+t329+t358+t395+t431;
+ t440 = t396*t18+t53+t325+t48+t147*t37+t330+t59+t263+t219*t10+t45*t93+2.0*
+t203+2.0*t381;
t444 = partial_d_ln_sqrt_g_1;
t447 = partial_d_ln_sqrt_g_2;
t450 = partial_d_ln_sqrt_g_3;
- t465 = t61*t53+2.0*t134+t55*t92+t149*t444*t25+t99*t447*t25+t1*t450*t25+
-t99*t444*t18+t61*t447*t18+t28*t450*t18+t1*t444*t10+t28*t447*t10+t55*t450*t10;
+ t465 = t50*t166+2.0*t392+t1*t183+t45*t444*t18+t40*t447*t18+t29*t450*t18+
+t40*t444*t37+t50*t447*t37+t23*t450*t37+t29*t444*t10+t23*t447*t10+t1*t450*t10;
HB = t440+t465;
- HC = K_uu_11*t114+2.0*K_uu_12*t18*t25+2.0*K_uu_13*t10*t25+K_uu_22*t62+2.0
-*K_uu_23*t10*t18+K_uu_33*t30;
- HD = t237+2.0*t100*t25+2.0*t11*t25+t63+2.0*t72*t18+t118;
- t490 = pow(HD,1.0*RATIONAL(1.0,2.0));
- H = HA/t490/HD+HB/t490+HC/HD-K;
+ HC = K_uu_11*t19+2.0*K_uu_12*t37*t18+2.0*K_uu_13*t10*t18+K_uu_22*t51+2.0*
+K_uu_23*t10*t37+K_uu_33*t216;
+ HD = t46+2.0*t134*t18+2.0*t64*t18+t52+2.0*t24*t37+t324;