diff --git a/src/eph.cpp b/src/eph.cpp index 745409b..8c30637 100644 --- a/src/eph.cpp +++ b/src/eph.cpp @@ -97,7 +97,7 @@ long double shiChaJ(long double gst, long double L, long double fa, long double } //=================================deltat T计算===================================== -static long double dt_at[] = { // TD - UT1 计算表 +static constexpr long double dt_at[] = { // TD - UT1 计算表 -4000, 108371.7, -13036.80, 392.000, 0.0000, -500, 17201.0, -627.82, 16.170, -0.3413, -150, 12200.6, -346.41, 5.403, -0.1593, @@ -155,7 +155,7 @@ long double dt_T(long double t) //=================================岁差计算========================================= //IAU1976岁差表 -static long double preceTab_IAU1976[] = { +static constexpr long double preceTab_IAU1976[] = { 0, 5038.7784, -1.07259, -0.001147, //fi 84381.448, 0, +0.05127, -0.007726, //w 0, +4.1976, +0.19447, -0.000179, //P @@ -171,7 +171,7 @@ static long double preceTab_IAU1976[] = { }; //IAU2000岁差表 -static long double preceTab_IAU2000[] = { +static constexpr long double preceTab_IAU2000[] = { 0, 5038.478750, -1.07259, -0.001147, 0, 0, //fi 84381.448, -0.025240, +0.05127, -0.007726, 0, 0, //w, 0, +4.1976, +0.19447, -0.000179, 0, 0, //P, @@ -186,7 +186,7 @@ static long double preceTab_IAU2000[] = { -2.5976176, 2306.0803226, +1.0947790, +0.0182273, +0.0000470, -0.0000003 //z }; -static long double preceTab_P03[] = { +static constexpr long double preceTab_P03[] = { 0, 5038.481507, -1.0790069, -0.00114045, +0.000132851, -9.51e-8, //fi 84381.406000, -0.025754, +0.0512623, -0.00772503, -4.67e-7, +3.337e-7, //w 0, 4.199094, +0.1939873, -0.00022466, -9.12e-7, +1.20e-8, //P @@ -204,7 +204,7 @@ static long double preceTab_P03[] = { //t是儒略世纪数,sc是岁差量名称,mx是模型 long double prece(long double t, std::string sc, std::string mx) { int i, tn = 1, c = 0, n; - long double* p = NULL; + const long double* p = NULL; if (mx == "IAU1976") n = 4, p = preceTab_IAU1976; if (mx == "IAU2000") n = 6, p = preceTab_IAU2000; if (mx == "P03") n = 6, p = preceTab_P03; @@ -269,7 +269,7 @@ Vector3 HDllr_D2J(long double t, Vector3 llr, std::string mx) //=================================章动计算========================================= //================================================================================== -static long double nuTab[] = { //IAU2000B章动序列 +static constexpr long double nuTab[] = { //IAU2000B章动序列 //l l' F D Om A A' A" B B' B" 0, 0, 0, 0, 1, -172064161, -174666, 33386, 92052331, 9086, 15377, 0, 0, 2, -2, 2, -13170906, -1675, -13696, 5730336, -3015, -4587, @@ -366,7 +366,8 @@ Vector2 nutation(long double t, long double zq) { long double D = 1072260.70369 + 1602961601.2090*t - 6.3706*t2 + 0.006593*t3 - 0.00003169*t4; long double Om = 450160.398036 - 6962890.5431*t + 7.4722*t2 + 0.007702*t3 - 0.00005939*t4; long double dL = 0, dE = 0, c; - long double* B = nuTab, q; + const long double* B = nuTab; + long double q; for (int i = 0; i < 77 * 11; i += 11) { //周期项取和计算 c = (B[i] * l + B[i + 1] * l1 + B[i + 2] * F + B[i + 3] * D + B[i + 4] * Om) / rad; if (zq) { //只算周期大于zq天的项 @@ -390,7 +391,7 @@ Vector3 CDnutation(Vector3 z, long double E, long double dL, long double dE) } //中精度章动计算表 -static long double nutB[] = { +static constexpr long double nutB[] = { 2.1824, -33.75705, 36e-6, -1720, 920, 3.5069, 1256.66393, 11e-6, -132, 57, 1.3375, 16799.4182, -51e-6, -23, 10, @@ -405,7 +406,8 @@ static long double nutB[] = { Vector2 nutation2(long double t) { //中精度章动计算,t是世纪数 long double c, a, t2 = t*t; - long double* B = nutB, dL = 0, dE = 0; + const long double* B = nutB; + long double dL = 0, dE = 0; for (int i = 0; i < sizeof(nutB) / sizeof(long double); i += 5) { c = B[i] + B[i + 1] * t + B[i + 2] * t2; if (i == 0) a = -1.742*t; else a = 0; @@ -417,7 +419,7 @@ Vector2 nutation2(long double t) { //中精度章动计算,t是世纪数 long double nutationLon2(long double t) { //只计算黄经章动 long double a, t2 = t*t, dL = 0; - long double* B = nutB; + const long double* B = nutB; for (int i = 0; i < sizeof(nutB) / sizeof(long double); i += 5) { if (i == 0) a = -1.742*t; else a = 0; dL += (B[i + 3] + a) * sin(B[i] + B[i + 1] * t + B[i + 2] * t2); @@ -455,7 +457,7 @@ void parallax(Vector3 z, long double H, long double fa, long double high) { // ********************************/ //Dear精度:J2000+-4千年 黄经0.1角秒 黄纬0.1角秒 距离0.1AU/10^6 -static long double XL0_0[] = { +static constexpr long double XL0_0[] = { 10000000000,//A的倍率 20, 578, 920, 1100, 1124, 1136, 1148, 1217, 1226, 1229, 1229, 1229, 1229, 1937, 2363, 2618, 2633, 2660, 2666,//位置索引表 /*L0*/ 17534704567, 0.00000000000, 0.00000000000, 334165646, 4.669256804, 6283.075849991, 3489428, 4.6261024, 12566.1517000, 349706, 2.744118, 5753.384885, 341757, 2.828866, 3.523118, 313590, 3.627670, 77713.771468, 267622, 4.418084, 7860.419392, 234269, 6.135162, 3930.209696, 132429, 0.742464, 11506.769770, 127317, 2.037097, 529.690965, 119917, 1.109629, 1577.343542, 99025, 5.23268, 5884.92685, 90186, 2.04505, 26.29832, 85722, 3.50849, 398.14900, 77979, 1.17883, 5223.69392, 75314, 2.53339, 5507.55324, 50526, 4.58293, 18849.22755, 49238, 4.20507, 775.52261, 35666, 2.91954, 0.06731, 31709, 5.84902, 11790.62909, 28413, 1.89869, 796.29801, 27104, 0.31489, 10977.07880, 24281, 0.34481, 5486.77784, 20616, 4.80647, 2544.31442, 20539, 1.86948, 5573.14280, 20226, 2.45768, 6069.77675, 15552, 0.83306, 213.29910, 13221, 3.41118, 2942.46342, 12618, 1.08303, 20.77540, 11513, 0.64545, 0.98032, 10285, 0.63600, 4694.00295, 10190, 0.97569, 15720.83878, 10172, 4.26680, 7.11355, 9921, 6.2099, 2146.1654, 9761, 0.6810, 155.4204, 8580, 5.9832, 161000.6857, 8513, 1.2987, 6275.9623, 8471, 3.6708, 71430.6956, 7964, 1.8079, 17260.1547, 7876, 3.0370, 12036.4607, 7465, 1.7551, 5088.6288, 7387, 3.5032, 3154.6871, 7355, 4.6793, 801.8209, 6963, 0.8330, 9437.7629, 6245, 3.9776, 8827.3903, 6115, 1.8184, 7084.8968, 5696, 2.7843, 6286.5990, 5612, 4.3869, 14143.4952, 5558, 3.4701, 6279.5527, 5199, 0.1891, 12139.5535, 5161, 1.3328, 1748.0164, 5115, 0.2831, 5856.4777, 4900, 0.4874, 1194.4470, 4104, 5.3682, 8429.2413, 4094, 2.3985, 19651.0485, 3920, 6.1683, 10447.3878, 3677, 6.0413, 10213.2855, 3660, 2.5696, 1059.3819, 3595, 1.7088, 2352.8662, 3557, 1.7760, 6812.7668, 3329, 0.5931, 17789.8456, 3041, 0.4429, 83996.8473, 3005, 2.7398, 1349.8674, 2535, 3.1647, 4690.4798, 2474, 0.2148, 3.5904, 2366, 0.4847, 8031.0923, 2357, 2.0653, 3340.6124, 2282, 5.2220, 4705.7323, 2189, 5.5559, 553.5694, 2142, 1.4256, 16730.4637, 2109, 4.1483, 951.7184, 2030, 0.3713, 283.8593, 1992, 5.2221, 12168.0027, 1986, 5.7747, 6309.3742, 1912, 3.8222, 23581.2582, 1889, 5.3863, 149854.4001, 1790, 2.2149, 13367.9726, 1748, 4.5605, 135.0651, 1622, 5.9884, 11769.8537, 1508, 4.1957, 6256.7775, 1442, 4.1932, 242.7286, 1435, 3.7236, 38.0277, 1397, 4.4014, 6681.2249, 1362, 1.8893, 7632.9433, 1250, 1.1305, 5.5229, 1205, 2.6223, 955.5997, 1200, 1.0035, 632.7837, 1129, 0.1774, 4164.3120, 1083, 0.3273, 103.0928, 1052, 0.9387, 11926.2544, 1050, 5.3591, 1592.5960, 1033, 6.1998, 6438.4962, 1001, 6.0291, 5746.2713, 980, 0.999, 11371.705, 980, 5.244, 27511.468, 938, 2.624, 5760.498, 923, 0.483, 522.577, 922, 4.571, 4292.331, 905, 5.337, 6386.169, 862, 4.165, 7058.598, 841, 3.299, 7234.794, 836, 4.539, 25132.303, 813, 6.112, 4732.031, 812, 6.271, 426.598, 801, 5.821, 28.449, 787, 0.996, 5643.179, 776, 2.957, 23013.540, 769, 3.121, 7238.676, 758, 3.974, 11499.656, 735, 4.386, 316.392, 731, 0.607, 11513.883, 719, 3.998, 74.782, 706, 0.323, 263.084, 676, 5.911, 90955.552, 663, 3.665, 17298.182, 653, 5.791, 18073.705, 630, 4.717, 6836.645, 615, 1.458, 233141.314, 612, 1.075, 19804.827, 596, 3.321, 6283.009, 596, 2.876, 6283.143, 555, 2.452, 12352.853, 541, 5.392, 419.485, 531, 0.382, 31441.678, 519, 4.065, 6208.294, 513, 2.361, 10973.556, 494, 5.737, 9917.697, 450, 3.272, 11015.106, 449, 3.653, 206.186, 447, 2.064, 7079.374, 435, 4.423, 5216.580, 421, 1.906, 245.832, 413, 0.921, 3738.761, 402, 0.840, 20.355, 387, 1.826, 11856.219, 379, 2.344, 3.881, 374, 2.954, 3128.389, 370, 5.031, 536.805, 365, 1.018, 16200.773, 365, 1.083, 88860.057, 352, 5.978, 3894.182, 352, 2.056, 244287.600, 351, 3.713, 6290.189, 340, 1.106, 14712.317, 339, 0.978, 8635.942, 339, 3.202, 5120.601, 333, 0.837, 6496.375, 325, 3.479, 6133.513, 316, 5.089, 21228.392, 316, 1.328, 10873.986, 309, 3.646, 10.637, 303, 1.802, 35371.887, 296, 3.397, 9225.539, 288, 6.026, 154717.610, 281, 2.585, 14314.168, 262, 3.856, 266.607, 262, 2.579, 22483.849, 257, 1.561, 23543.231, 255, 3.949, 1990.745, 251, 3.744, 10575.407, 240, 1.161, 10984.192, 238, 0.106, 7.046, 236, 4.272, 6040.347, 234, 3.577, 10969.965, 211, 3.714, 65147.620, 210, 0.754, 13521.751, 207, 4.228, 5650.292, 202, 0.814, 170.673, 201, 4.629, 6037.244, 200, 0.381, 6172.870, 199, 3.933, 6206.810, 199, 5.197, 6262.300, 197, 1.046, 18209.330, 195, 1.070, 5230.807, 195, 4.869, 36.028, 194, 4.313, 6244.943, 192, 1.229, 709.933, 192, 5.595, 6282.096, 192, 0.602, 6284.056, 189, 3.744, 23.878, 188, 1.904, 15.252, 188, 0.867, 22003.915, 182, 3.681, 15110.466, 181, 0.491, 1.484, 179, 3.222, 39302.097, 179, 1.259, 12559.038, @@ -475,7 +477,7 @@ static long double XL0_0[] = { /*R5*/ 9, 1.22, 6283.08, 1, 0.66, 12566.15 }; //Dmer精度:J2000+-4千年 黄经0.2角秒 黄纬0.2角秒 距离0.2AU/10^6 -static long double XL0_1[] = { +static constexpr long double XL0_1[] = { 1000000000,//A的倍率 20, 443, 710, 761, 791, 818, 824, 1043, 1106, 1142, 1169, 1190, 1196, 1550, 1742, 1781, 1808, 1823, 1823,//位置索引表 /*L0*/ 4402507101, 0.0000000000, 0.0000000000, 409894150, 1.483020342, 26087.903141574, 50462942, 4.47785490, 52175.80628315, 8553468, 1.1652032, 78263.7094247, 1655904, 4.1196916, 104351.6125663, 345619, 0.779308, 130439.515708, 75835, 3.71348, 156527.41885, 35597, 1.51203, 1109.37855, 18035, 4.10333, 5661.33205, 17260, 0.35832, 182615.32199, 15899, 2.99510, 25028.52121, 13647, 4.59918, 27197.28169, 10173, 0.88031, 31749.23519, 7142, 1.5414, 24978.5246, 6438, 5.3027, 21535.9496, 4511, 6.0499, 51116.4244, 4042, 3.2823, 208703.2251, 3524, 5.2416, 20426.5711, 3452, 2.7921, 15874.6176, 3433, 5.7653, 955.5997, 3392, 5.8633, 25558.2122, 3253, 1.3367, 53285.1848, 2729, 2.4945, 529.6910, 2643, 3.9171, 57837.1383, 2596, 0.9873, 4551.9535, 2388, 0.1134, 1059.3819, 2348, 0.2667, 11322.6641, 2166, 0.6599, 13521.7514, 2090, 2.0918, 47623.8528, 1834, 2.6288, 27043.5029, 1816, 2.4341, 25661.3050, 1760, 4.5364, 51066.4277, 1726, 2.4520, 24498.8302, 1423, 3.3600, 37410.5672, 1379, 0.2910, 10213.2855, 1252, 3.7208, 39609.6546, 1182, 2.7815, 77204.3275, 1064, 4.2057, 19804.8273, 969, 6.204, 234791.128, 900, 5.852, 41962.521, 883, 5.413, 26617.594, 868, 2.642, 51646.115, 867, 1.960, 46514.474, 850, 4.331, 79373.088, 697, 3.572, 25132.303, 692, 4.194, 19.670, 685, 0.634, 83925.041, 648, 0.048, 33326.579, 635, 3.147, 7238.676, 595, 2.747, 16983.996, 565, 5.119, 73711.756, 554, 4.053, 30639.857, 544, 3.143, 27147.285, 515, 5.478, 50586.733, 496, 3.990, 6770.711, 480, 5.493, 51749.208, 476, 5.497, 3.881, 447, 1.224, 77154.331, 419, 5.193, 6283.076, 418, 5.642, 53131.406, 380, 2.431, 12566.152, 360, 1.424, 2218.757, 356, 0.814, 32858.614, 354, 3.370, 36301.189, 340, 0.475, 65697.558, 340, 2.786, 14765.239, 308, 5.770, 103292.231, 306, 5.840, 43071.899, 295, 0.698, 213.299, 285, 0.650, 426.598, 275, 0.980, 45892.730, 271, 0.085, 63498.470, 268, 1.061, 3442.575, 263, 0.648, 1589.073, 262, 5.242, 22645.328, 243, 4.400, 7.114, 237, 2.842, 260879.031, 229, 2.585, 68050.424, 224, 1.025, 105460.991, 223, 5.653, 77734.018, 223, 2.179, 52705.497, 222, 3.224, 25448.006, 220, 4.934, 72602.377, 186, 4.527, 28306.660, 178, 3.612, 110012.945, 176, 4.717, 25874.604, 172, 0.284, 51220.207, 172, 3.261, 153.779, 149, 1.835, 99799.659, 144, 0.966, 26107.573, 144, 1.910, 23969.139, 142, 5.142, 26068.233, 142, 6.124, 53235.188, 140, 2.302, 76674.637, 134, 4.518, 26080.790, 134, 0.766, 56727.760, 124, 2.223, 77837.111, 120, 6.205, 18849.228, 116, 2.385, 79219.309, 115, 4.178, 103242.234, 112, 2.048, 32370.979, 111, 3.783, 26301.202, 100, 2.046, 48733.231, 98, 2.27, 26091.78, 97, 3.84, 26084.02, 97, 2.99, 59414.48, 97, 5.78, 25938.34, 94, 5.44, 38654.05, 93, 4.03, 467.96, 90, 6.23, 25021.41, 90, 3.48, 91785.46, 90, 0.11, 62389.09, 89, 2.85, 25035.63, 83, 5.34, 19317.19, 82, 5.78, 40853.14, 81, 1.12, 26095.02, 80, 2.46, 129380.13, 76, 0.18, 12432.04, 74, 4.71, 6.63, 70, 3.99, 71980.63, 70, 1.63, 23869.15, 66, 3.66, 26514.50, 61, 3.67, 27676.98, 60, 0.00, 51535.91, 59, 3.99, 131548.89, 59, 4.12, 29530.48, 59, 5.57, 94138.33, 59, 5.76, 286966.93, 59, 6.13, 26011.64, 59, 2.14, 20760.43, 58, 2.35, 103821.92, 58, 4.45, 19406.68, 57, 3.02, 89586.37, 57, 5.18, 78793.40, 57, 1.61, 98690.28, 52, 3.29, 38519.95, 51, 3.78, 58946.52, 46, 0.29, 136100.85, 45, 1.50, 51962.51, 45, 4.89, 50057.04, 44, 3.25, 77308.11, @@ -497,7 +499,7 @@ static long double XL0_1[] = { /*R4*/ 4, 0.37, 26087.90, 4, 3.19, 52175.81, 3, 6.17, 78263.71, 1, 2.92, 104351.61, 1, 5.96, 130439.52 }; //Dven精度:J2000+-4千年 黄经0.2角秒 黄纬0.2角秒 距离0.2AU/10^6 -static long double XL0_2[] = { +static constexpr long double XL0_2[] = { 1000000000,//A的倍率 20, 257, 374, 425, 437, 449, 458, 566, 629, 641, 653, 665, 668, 929, 1040, 1082, 1091, 1094, 1094,//位置索引表 /*L0*/ 3176146668, 0.0000000000, 0.0000000000, 13539684, 5.59313320, 10213.28554621, 898916, 5.306500, 20426.571092, 54772, 4.41631, 7860.41939, 34557, 2.69964, 11790.62909, 23721, 2.99378, 3930.20970, 16641, 4.25019, 1577.34354, 14383, 4.15745, 9683.59458, 13171, 5.18668, 26.29832, 12005, 6.15357, 30639.85664, 7693, 0.8163, 9437.7629, 7614, 1.9501, 529.6910, 7077, 1.0647, 775.5226, 5848, 3.9984, 191.4483, 4999, 4.1234, 15720.8388, 4295, 3.5864, 19367.1892, 3270, 5.6774, 5507.5532, 3262, 4.5906, 10404.7338, 2319, 3.1625, 9153.9036, 1797, 4.6534, 1109.3786, 1555, 5.5704, 19651.0485, 1283, 4.2260, 20.7754, 1279, 0.9621, 5661.3320, 1055, 1.5372, 801.8209, 991, 0.833, 213.299, 988, 5.394, 13367.973, 880, 3.889, 9999.986, 857, 0.356, 3154.687, 821, 3.216, 18837.498, 716, 0.111, 11015.106, 702, 0.675, 23581.258, 561, 4.240, 7.114, 508, 0.245, 11322.664, 461, 5.316, 18073.705, 446, 6.063, 40853.142, 426, 1.800, 7084.897, 426, 5.329, 2352.866, 412, 0.362, 382.897, 357, 2.704, 10206.172, 339, 2.023, 6283.076, 333, 2.100, 27511.468, 302, 4.942, 13745.346, 299, 4.022, 10239.584, 293, 3.514, 283.859, 291, 3.592, 22003.915, 285, 2.224, 1059.382, 263, 0.541, 17298.182, 244, 2.702, 8624.213, 243, 4.278, 5.523, 237, 4.829, 6872.673, 205, 0.585, 38.028, 203, 3.795, 14143.495, 191, 6.120, 29050.784, 190, 4.138, 4551.953, 183, 3.047, 19999.973, 171, 3.522, 31441.678, 159, 1.501, 8635.942, 137, 4.413, 3532.061, 118, 1.913, 21228.392, 116, 5.810, 19896.880, 110, 2.584, 9786.687, 110, 2.846, 18307.807, 106, 0.854, 10596.182, 101, 2.343, 10742.977, 99, 1.09, 7064.12, 94, 4.95, 35371.89, 92, 5.52, 12566.15, 89, 1.97, 10186.99, 82, 1.92, 15.25, 70, 1.00, 632.78, 68, 4.40, 8662.24, 67, 1.55, 14945.32, 64, 2.18, 10988.81, 63, 0.36, 103.09, 60, 5.05, 245.83, 60, 2.97, 4732.03, 58, 1.93, 3340.61, 56, 0.49, 522.58, 55, 3.37, 25158.60, @@ -519,7 +521,7 @@ static long double XL0_2[] = { /*R4*/ 6, 0.92, 10213.29 }; //Dmar精度:J2000+-4千年 黄经0.5角秒 黄纬0.5角秒 距离1AU/10^6 -static long double XL0_3[] = { +static constexpr long double XL0_3[] = { 1000000000,//A的倍率 20, 596, 1028, 1289, 1385, 1427, 1454, 1586, 1670, 1694, 1709, 1718, 1724, 2360, 2873, 3155, 3239, 3275, 3287,//位置索引表 /*L0*/ 6203477116, 0.0000000000, 0.0000000000, 186563681, 5.050371003, 3340.612426700, 11082168, 5.40099837, 6681.22485340, 917984, 5.754787, 10021.837280, 277450, 5.970495, 3.523118, 123159, 0.849561, 2810.921462, 106102, 2.939585, 2281.230497, 89268, 4.15698, 0.01725, 87157, 6.11005, 13362.44971, 77749, 3.33969, 5621.84292, 67976, 0.36462, 398.14900, 41611, 0.22815, 2942.46342, 35751, 1.66187, 2544.31442, 30753, 0.85697, 191.44827, 29375, 6.07894, 0.06731, 26281, 0.64806, 3337.08931, 25798, 0.02997, 3344.13555, 23894, 5.03896, 796.29801, 17988, 0.65634, 529.69097, 15464, 2.91580, 1751.53953, 15281, 1.14979, 6151.53389, 12862, 3.06796, 2146.16542, 12644, 3.62275, 5092.15196, 10249, 3.69334, 8962.45535, 8916, 0.1829, 16703.0621, 8588, 2.4009, 2914.0142, 8327, 4.4950, 3340.6297, 8327, 2.4642, 3340.5952, 7487, 3.8225, 155.4204, 7239, 0.6750, 3738.7614, 7129, 3.6634, 1059.3819, 6552, 0.4886, 3127.3133, 6356, 2.9218, 8432.7644, 5527, 4.4748, 1748.0164, 5505, 3.8100, 0.9803, 4722, 3.6255, 1194.4470, 4260, 0.5537, 6283.0758, 4151, 0.4966, 213.2991, 3121, 0.9985, 6677.7017, 3066, 0.3805, 6684.7480, 3024, 4.4862, 3532.0607, 2994, 2.7832, 6254.6267, 2932, 4.2213, 20.7754, 2836, 5.7689, 3149.1642, 2811, 5.8816, 1349.8674, 2740, 0.1337, 3340.6797, 2740, 0.5422, 3340.5451, 2389, 5.3716, 4136.9104, 2361, 5.7550, 3333.4989, 2312, 1.2824, 3870.3034, 2212, 3.5047, 382.8965, 2042, 2.8213, 1221.8486, 1931, 3.3572, 3.5904, 1886, 1.4910, 9492.1463, 1792, 1.0056, 951.7184, 1741, 2.4136, 553.5694, 1721, 0.4394, 5486.7778, 1600, 3.9485, 4562.4610, 1443, 1.4187, 135.0651, 1399, 3.3259, 2700.7151, 1382, 4.3015, 7.1135, 1310, 4.0449, 12303.0678, 1281, 2.2081, 1592.5960, 1281, 1.8067, 5088.6288, 1169, 3.1281, 7903.0734, 1135, 3.7007, 1589.0729, 1104, 1.0520, 242.7286, 1045, 0.7854, 8827.3903, 1001, 3.2434, 11773.3768, 989, 4.846, 6681.242, 989, 2.815, 6681.208, 956, 0.540, 20043.675, 869, 2.202, 11243.686, 868, 1.021, 7079.374, 842, 3.990, 4399.994, 837, 3.203, 4690.480, 750, 0.766, 6467.926, 735, 2.184, 8429.241, 721, 5.847, 5884.927, 714, 2.803, 3185.192, 690, 3.764, 6041.328, 684, 2.738, 2288.344, 667, 0.736, 3723.509, 653, 2.681, 28.449, 634, 0.913, 3553.912, 633, 4.528, 426.598, 617, 6.168, 2274.117, 566, 5.063, 15.252, 564, 1.687, 6872.673, 559, 3.463, 263.084, 555, 4.606, 4292.331, 523, 0.899, 9623.688, 517, 2.813, 3339.632, 513, 4.148, 3341.593, 485, 3.957, 4535.059, 459, 0.287, 5614.729, 458, 0.788, 1990.745, 442, 3.195, 5628.956, 419, 3.583, 8031.092, 412, 6.020, 3894.182, 407, 3.138, 9595.239, 395, 5.632, 3097.884, 388, 1.352, 10018.314, 384, 5.829, 3191.049, 382, 2.348, 162.467, 381, 0.734, 10025.360, 378, 4.155, 2803.808, 371, 0.685, 2818.035, 367, 2.637, 692.158, 340, 2.595, 11769.854, 336, 6.120, 6489.777, 331, 1.140, 5.523, 326, 0.484, 6681.292, 326, 0.893, 6681.158, 312, 3.982, 20.355, 290, 2.427, 3319.837, 287, 5.721, 7477.523, 276, 1.597, 7210.916, 275, 6.084, 6674.111, 273, 4.556, 3361.388, 264, 1.345, 3496.033, 256, 0.250, 522.577, 255, 3.432, 3443.705, 254, 0.521, 10.637, 246, 4.003, 11371.705, 244, 0.970, 632.784, 238, 1.841, 12832.759, 231, 4.750, 3347.726, 228, 3.526, 1648.447, 227, 4.985, 7632.943, 227, 3.954, 4989.059, 226, 5.241, 3205.547, 225, 5.649, 2388.894, 223, 0.721, 266.607, 215, 6.154, 3264.346, 213, 4.282, 4032.770, 212, 3.118, 2957.716, 210, 4.279, 5099.266, 202, 3.671, 1758.653, 201, 1.082, 7064.121, 198, 2.377, 10713.995, 193, 3.239, 7.046, 184, 4.225, 2787.043, 181, 3.258, 3337.022, 180, 4.254, 2487.416, 177, 3.697, 3344.203, 176, 4.092, 74.782, 168, 5.486, 3.881, 168, 4.397, 15643.680, 166, 2.528, 14584.298, 161, 2.369, 3265.831, 161, 3.794, 2118.764, 160, 1.768, 3475.678, 160, 1.547, 14054.607, 158, 0.569, 103.093, 158, 3.132, 59.374, 146, 3.452, 7373.382, 145, 4.380, 316.392, 142, 0.598, 23.878, 140, 1.442, 10404.734, 139, 5.408, 10973.556, 137, 3.591, 15113.989, 137, 2.541, 4933.208, 135, 4.042, 4929.685, 134, 5.169, 10213.286, 133, 6.178, 1744.426, 128, 0.105, 7234.794, 127, 1.799, 13745.346, 123, 2.521, 2906.901, 123, 3.169, 10021.820, 123, 5.199, 10021.855, 122, 1.731, 36.028, 122, 4.423, 14712.317, 119, 5.480, 2921.128, 119, 4.766, 5828.028, 118, 5.727, 0.420, 109, 0.604, 5085.038, 108, 1.372, 10419.986, 107, 4.339, 7740.607, 106, 5.477, 419.485, 106, 3.450, 639.897, 106, 0.896, 23384.287, 106, 1.091, 12168.003, 100, 1.383, 3583.341, 99, 2.69, 36.61, 98, 5.84, 14314.17, 98, 3.60, 206.19, 97, 6.28, 9225.54, 96, 4.89, 3230.41, 96, 4.33, 131.54, 91, 1.10, 9808.54, 88, 3.97, 170.67, @@ -542,7 +544,7 @@ static long double XL0_3[] = { /*R5*/ 5, 2.48, 6681.22, 3, 2.92, 10021.84, 1, 1.77, 3340.61, 1, 3.31, 13362.45 }; //Djup精度:J2000+-4千年 黄经0.5角秒 黄纬0.5角秒 距离3AU/10^6 -static long double XL0_4[] = { +static constexpr long double XL0_4[] = { 100000000,//A的倍率 20, 503, 863, 1256, 1451, 1529, 1550, 1676, 1802, 1910, 1964, 1988, 1991, 2513, 2945, 3482, 3761, 3896, 3923,//位置索引表 /*L0*/ 59954691, 0.00000000, 0.00000000, 9695899, 5.0619179, 529.6909651, 573610, 1.444062, 7.113547, 306389, 5.417347, 1059.381930, 97178, 4.14265, 632.78374, 72903, 3.64043, 522.57742, 64264, 3.41145, 103.09277, 39806, 2.29377, 419.48464, 38858, 1.27232, 316.39187, 27965, 1.78455, 536.80451, 13590, 5.77481, 1589.07290, 8769, 3.6300, 949.1756, 8246, 3.5823, 206.1855, 7368, 5.0810, 735.8765, 6263, 0.0250, 213.2991, 6114, 4.5132, 1162.4747, 5305, 4.1863, 1052.2684, 5305, 1.3067, 14.2271, 4905, 1.3208, 110.2063, 4647, 4.6996, 3.9322, 3045, 4.3168, 426.5982, 2610, 1.5667, 846.0828, 2028, 1.0638, 3.1814, 1921, 0.9717, 639.8973, 1765, 2.1415, 1066.4955, 1723, 3.8804, 1265.5675, 1633, 3.5820, 515.4639, 1432, 4.2968, 625.6702, 973, 4.098, 95.979, 884, 2.437, 412.371, 733, 6.085, 838.969, 731, 3.806, 1581.959, 709, 1.293, 742.990, 692, 6.134, 2118.764, 614, 4.109, 1478.867, 582, 4.540, 309.278, 495, 3.756, 323.505, 441, 2.958, 454.909, 417, 1.036, 2.448, 390, 4.897, 1692.166, 376, 4.703, 1368.660, 341, 5.715, 533.623, 330, 4.740, 0.048, 262, 1.877, 0.963, 261, 0.820, 380.128, 257, 3.724, 199.072, 244, 5.220, 728.763, 235, 1.227, 909.819, 220, 1.651, 543.918, 207, 1.855, 525.759, 202, 1.807, 1375.774, 197, 5.293, 1155.361, 175, 3.730, 942.062, 175, 3.226, 1898.351, 175, 5.910, 956.289, 158, 4.365, 1795.258, 151, 3.906, 74.782, 149, 4.377, 1685.052, 141, 3.136, 491.558, 138, 1.318, 1169.588, 131, 4.169, 1045.155, 117, 2.500, 1596.186, 117, 3.389, 0.521, 106, 4.554, 526.510, 100, 1.421, 532.872, 96, 1.18, 117.32, 92, 0.86, 1272.68, 88, 1.22, 453.42, 77, 4.43, 39.36, 72, 4.24, 2111.65, 70, 5.14, 835.04, 69, 2.35, 2.92, 67, 2.99, 2214.74, 66, 5.34, 1471.75, 63, 4.98, 0.75, 62, 0.51, 220.41, 60, 4.13, 4.19, 59, 4.11, 2001.44, 58, 5.87, 5753.38, 56, 1.15, 21.34, 54, 1.57, 983.12, 53, 0.91, 10.29, 52, 4.10, 1258.45, 47, 3.55, 5.42, 47, 4.79, 305.35, 46, 4.67, 5.63, 46, 5.11, 4.67, 43, 0.15, 528.21, 42, 4.68, 302.16, 40, 4.69, 0.16, 39, 4.25, 853.20, 39, 1.72, 11.05, 39, 6.08, 518.65, 38, 2.44, 433.71, 38, 0.21, 2648.45, 38, 6.19, 831.86, 36, 2.45, 430.53, 36, 4.61, 2008.56, 34, 1.01, 9683.59, 33, 5.29, 88.87, 32, 5.14, 1788.14, 31, 0.42, 1.48, 30, 3.67, 508.35, 30, 5.34, 2221.86, 28, 1.85, 0.21, 27, 2.81, 18.16, 27, 1.78, 532.14, 26, 2.74, 2531.13, 26, 3.86, 2317.84, 25, 2.63, 114.14, 24, 3.82, 1574.85, 24, 2.53, 494.27, 23, 3.24, 984.60, 23, 3.85, 2428.04, 22, 6.02, 1063.31, 21, 1.29, 35.42, 21, 4.03, 355.75, 20, 1.02, 628.85, 20, 5.60, 527.24, 19, 0.52, 14.98, 19, 4.86, 1361.55, 18, 4.30, 6.15, 17, 1.59, 1439.51, 16, 2.77, 760.26, 16, 5.27, 142.45, 16, 1.89, 529.64, 16, 5.09, 529.74, 16, 4.12, 636.72, 15, 6.08, 149.56, 15, 2.82, 621.74, 15, 4.86, 2104.54, 15, 0.88, 99.16, 15, 6.26, 569.05, 14, 2.41, 530.65, 14, 2.72, 0.26, 14, 3.56, 217.23, 13, 2.19, 1055.45, 13, 2.72, 1364.73, 13, 4.76, 528.73, 13, 1.39, 7.07, 12, 2.61, 405.26, 12, 4.30, 604.47, 12, 0.25, 1485.98, 12, 3.60, 2634.23, 12, 4.60, 7.16, 12, 2.35, 643.83, 11, 2.01, 1073.61, 11, 2.48, 423.42, 11, 4.05, 519.40, 11, 5.04, 458.84, 11, 5.09, 2324.95, 11, 2.51, 2847.53, 11, 2.08, 92.05, 11, 3.12, 1.27, 10, 3.63, 2744.43, 10, 2.09, 511.53, 10, 1.31, 1905.46, 10, 3.66, 107.02, 10, 4.06, 38.13, 10, 1.70, 1699.28, 10, 1.22, 32.24, @@ -565,7 +567,7 @@ static long double XL0_4[] = { /*R5*/ 11, 4.75, 536.80, 4, 5.92, 522.58, 2, 5.57, 515.46, 2, 4.30, 543.92, 2, 3.69, 7.11, 2, 4.13, 1059.38, 2, 5.49, 1066.50, 1, 3.78, 14.23, 1, 4.51, 529.69 }; //Dsat精度:J2000+-4千年 黄经0.5角秒 黄纬0.5角秒 距离5AU/10^6 -static long double XL0_5[] = { +static constexpr long double XL0_5[] = { 100000000,//A的倍率 20, 806, 1406, 1946, 2177, 2282, 2333, 2537, 2726, 2867, 2963, 3008, 3026, 4091, 5063, 5789, 6260, 6452, 6536,//位置索引表 /*L0*/ 87401354, 0.00000000, 0.00000000, 11107660, 3.96205090, 213.29909544, 1414151, 4.5858152, 7.1135470, 398379, 0.521120, 206.185548, 350769, 3.303299, 426.598191, 206816, 0.246584, 103.092774, 79271, 3.84007, 220.41264, 23990, 4.66977, 110.20632, 16574, 0.43719, 419.48464, 15820, 0.93809, 632.78374, 15054, 2.71670, 639.89729, 14907, 5.76903, 316.39187, 14610, 1.56519, 3.93215, 13160, 4.44891, 14.22709, 13005, 5.98119, 11.04570, 10725, 3.12940, 202.25340, 6126, 1.7633, 277.0350, 5863, 0.2366, 529.6910, 5228, 4.2078, 3.1814, 5020, 3.1779, 433.7117, 4593, 0.6198, 199.0720, 4006, 2.2448, 63.7359, 3874, 3.2228, 138.5175, 3269, 0.7749, 949.1756, 2954, 0.9828, 95.9792, 2461, 2.0316, 735.8765, 1758, 3.2658, 522.5774, 1640, 5.5050, 846.0828, 1581, 4.3727, 309.2783, 1391, 4.0233, 323.5054, 1124, 2.8373, 415.5525, 1087, 4.1834, 2.4477, 1017, 3.7170, 227.5262, 957, 0.507, 1265.567, 853, 3.421, 175.166, 849, 3.191, 209.367, 789, 5.007, 0.963, 749, 2.144, 853.196, 744, 5.253, 224.345, 687, 1.747, 1052.268, 654, 1.599, 0.048, 634, 2.299, 412.371, 625, 0.970, 210.118, 580, 3.093, 74.782, 546, 2.127, 350.332, 543, 1.518, 9.561, 530, 4.449, 117.320, 478, 2.965, 137.033, 474, 5.475, 742.990, 452, 1.044, 490.334, 449, 1.290, 127.472, 372, 2.278, 217.231, 355, 3.013, 838.969, 347, 1.539, 340.771, 343, 0.246, 0.521, 330, 0.247, 1581.959, 322, 0.961, 203.738, 322, 2.572, 647.011, 309, 3.495, 216.480, 287, 2.370, 351.817, 278, 0.400, 211.815, 249, 1.470, 1368.660, 227, 4.910, 12.530, 220, 4.204, 200.769, 209, 1.345, 625.670, 208, 0.483, 1162.475, 208, 1.283, 39.357, 205, 6.011, 265.989, 185, 3.503, 149.563, 184, 0.973, 4.193, 182, 5.491, 2.921, 174, 1.863, 0.751, 165, 0.440, 5.417, 149, 5.736, 52.690, 148, 1.535, 5.629, 146, 6.231, 195.140, 140, 4.295, 21.341, 131, 4.068, 10.295, 125, 6.277, 1898.351, 122, 1.976, 4.666, 118, 5.341, 554.070, 117, 2.679, 1155.361, 114, 5.594, 1059.382, 112, 1.105, 191.208, 110, 0.166, 1.484, 109, 3.438, 536.805, 107, 4.012, 956.289, 104, 2.192, 88.866, 103, 1.197, 1685.052, 101, 4.965, 269.921, 97, 4.54, 302.16, 96, 2.83, 275.55, 91, 1.88, 38.13, 90, 5.80, 114.14, 89, 3.86, 278.52, 84, 5.49, 0.11, 83, 2.29, 628.85, 82, 3.05, 440.83, 79, 4.45, 35.42, 76, 1.61, 284.15, 75, 2.18, 728.76, 74, 5.09, 1375.77, 72, 5.11, 65.22, 70, 4.87, 0.21, 70, 3.71, 14.98, 69, 3.44, 515.46, 68, 0.73, 1478.87, 67, 0.03, 70.85, 66, 2.02, 142.45, 64, 3.32, 62.25, 63, 3.49, 479.29, 63, 2.59, 422.67, 61, 1.50, 210.85, 61, 2.69, 388.47, 55, 0.97, 942.06, 54, 2.46, 22.09, 54, 0.78, 191.96, 53, 3.18, 8.08, 53, 5.51, 0.26, 51, 4.27, 99.16, 50, 6.03, 2214.74, 49, 2.39, 1471.75, 47, 2.03, 312.20, 47, 4.60, 437.64, 46, 0.54, 212.34, 45, 0.93, 2001.44, 45, 1.12, 6.15, 44, 3.93, 525.50, 43, 2.53, 288.08, 43, 1.37, 563.63, 43, 3.82, 330.62, 42, 1.90, 430.53, 40, 5.71, 408.44, 40, 1.63, 1066.50, 38, 0.31, 423.42, 38, 1.20, 2.71, 38, 3.70, 1272.68, 38, 4.52, 24.38, 36, 6.01, 18.16, 36, 0.85, 213.35, 36, 3.93, 213.25, 35, 4.19, 215.75, 35, 4.46, 214.26, 35, 1.02, 203.00, 33, 0.54, 107.02, 33, 0.66, 692.59, 33, 0.81, 1795.26, 32, 5.22, 92.05, 32, 5.59, 6069.78, 32, 1.69, 0.16, 32, 5.50, 56.62, 31, 0.37, 703.63, 31, 6.14, 417.04, 30, 0.72, 222.86, 30, 5.30, 33.94, 29, 0.15, 131.40, 29, 1.20, 404.51, 28, 5.64, 128.96, 28, 1.46, 7.16, 27, 6.23, 1.27, 27, 1.90, 1045.15, 27, 0.07, 205.22, 27, 4.57, 7.07, 26, 5.41, 140.00, 26, 4.36, 32.24, 24, 3.09, 145.63, 24, 3.94, 414.07, 24, 2.54, 76.27, 23, 3.97, 483.22, 23, 2.10, 1788.14, 23, 3.20, 208.63, 23, 3.66, 207.67, 23, 6.10, 177.87, 23, 5.24, 212.78, 22, 5.92, 173.94, 21, 0.72, 1258.45, 21, 5.79, 2531.13, 21, 2.02, 860.31, 21, 0.67, 2317.84, 21, 5.22, 6.59, 20, 2.82, 429.78, 20, 5.07, 617.81, 19, 1.64, 565.12, 19, 5.94, 425.11, 19, 5.78, 213.82, 18, 0.73, 9999.99, 18, 5.23, 73.30, 18, 6.11, 210.38, 18, 3.14, 831.86, 17, 0.24, 134.59, 17, 0.72, 2111.65, 17, 3.28, 98.90, 16, 3.97, 355.75, 16, 3.10, 106.27, 15, 3.29, 1589.07, 15, 3.25, 78.71, 15, 5.19, 305.35, 15, 2.75, 1.22, 14, 3.88, 54.17, 14, 4.52, 59.80, 14, 1.72, 69.15, 14, 6.18, 245.54, 14, 2.37, 125.99, 14, 2.55, 405.26, 14, 2.54, 1.70, 14, 3.59, 234.64, 13, 0.83, 99.91, 13, 4.17, 225.83, 13, 6.01, 214.78, 13, 4.69, 767.37, 13, 5.31, 344.70, 12, 2.12, 28.31, 12, 3.60, 124.43, 12, 1.62, 1361.55, 12, 4.07, 280.97, 12, 4.00, 267.47, 12, 0.12, 7.63, 12, 2.79, 362.86, 11, 5.51, 192.69, 11, 1.82, 2104.54, 11, 2.62, 7.86, 11, 2.61, 339.29, 11, 5.51, 199.28, 11, 3.58, 1.44, 11, 0.19, 217.49, 11, 2.37, 831.10, 10, 2.84, 85.83, 10, 1.69, 31.02, 10, 4.72, 216.22, 10, 0.22, 198.32, 10, 0.22, 144.15, 10, 3.61, 14.01, 10, 3.94, 207.88, 10, 4.02, 207.15, 10, 0.42, 2634.23, 10, 1.61, 0.89, 10, 3.67, 212.55, 10, 3.34, 223.59, 10, 0.64, 218.93, 9, 0.72, 347.88, 9, 4.26, 20.61, 9, 5.40, 342.26, 9, 4.28, 312.46, 9, 5.08, 241.61, 9, 4.25, 46.47, 9, 1.65, 210.33, 9, 0.91, 497.45, 9, 5.81, 329.73, 9, 4.23, 6.36, 9, 0.57, 2428.04, 9, 5.36, 343.22, 9, 5.55, 2847.53, 9, 4.48, 1692.17, 9, 0.49, 1574.85, 8, 4.06, 237.68, 8, 0.81, 264.50, 8, 4.71, 333.66, 8, 2.73, 4.14, 8, 3.82, 380.13, 8, 5.54, 116.43, 8, 5.63, 518.65, 8, 5.44, 621.74, @@ -589,7 +591,7 @@ static long double XL0_5[] = { //Dura精度:J2000+-4千年 黄经1角秒 黄纬1角秒 距离20AU/10^6 -static long double XL0_6[] = { +static constexpr long double XL0_6[] = { 100000000,//A的倍率 20, 539, 836, 980, 1070, 1085, 1088, 1193, 1271, 1307, 1322, 1325, 1325, 2150, 2660, 2936, 3089, 3122, 3122,//位置索引表 /*L0*/ 548129294, 0.000000000, 0.000000000, 9260408, 0.8910642, 74.7815986, 1504248, 3.6271926, 1.4844727, 365982, 1.899622, 73.297126, 272328, 3.358237, 149.563197, 70328, 5.39254, 63.73590, 68893, 6.09292, 76.26607, 61999, 2.26952, 2.96895, 61951, 2.85099, 11.04570, 26469, 3.14152, 71.81265, 25711, 6.11380, 454.90937, 21079, 4.36059, 148.07872, 17819, 1.74437, 36.64856, 14613, 4.73732, 3.93215, 11163, 5.82682, 224.34480, 10998, 0.48865, 138.51750, 9527, 2.9552, 35.1641, 7546, 5.2363, 109.9457, 4220, 3.2333, 70.8494, 4052, 2.2775, 151.0477, 3490, 5.4831, 146.5943, 3355, 1.0655, 4.4534, 3144, 4.7520, 77.7505, 2927, 4.6290, 9.5612, 2922, 5.3524, 85.8273, 2273, 4.3660, 70.3282, 2149, 0.6075, 38.1330, 2051, 1.5177, 0.1119, 1992, 4.9244, 277.0350, 1667, 3.6274, 380.1278, 1533, 2.5859, 52.6902, 1376, 2.0428, 65.2204, 1372, 4.1964, 111.4302, 1284, 3.1135, 202.2534, 1282, 0.5427, 222.8603, 1244, 0.9161, 2.4477, 1221, 0.1990, 108.4612, 1151, 4.1790, 33.6796, 1150, 0.9334, 3.1814, 1090, 1.7750, 12.5302, 1072, 0.2356, 62.2514, 946, 1.192, 127.472, 708, 5.183, 213.299, 653, 0.966, 78.714, 628, 0.182, 984.600, 607, 5.432, 529.691, 559, 3.358, 0.521, 524, 2.013, 299.126, 483, 2.106, 0.963, 471, 1.407, 184.727, 467, 0.415, 145.110, 434, 5.521, 183.243, 405, 5.987, 8.077, 399, 0.338, 415.552, 396, 5.870, 351.817, 379, 2.350, 56.622, 310, 5.833, 145.631, 300, 5.644, 22.091, 294, 5.839, 39.618, 252, 1.637, 221.376, 249, 4.746, 225.829, 239, 2.350, 137.033, 224, 0.516, 84.343, 223, 2.843, 0.261, 220, 1.922, 67.668, 217, 6.142, 5.938, 216, 4.778, 340.771, 208, 5.580, 68.844, 202, 1.297, 0.048, 199, 0.956, 152.532, 194, 1.888, 456.394, 193, 0.916, 453.425, 187, 1.319, 0.160, 182, 3.536, 79.235, 173, 1.539, 160.609, 172, 5.680, 219.891, 170, 3.677, 5.417, 169, 5.879, 18.159, 165, 1.424, 106.977, 163, 3.050, 112.915, 158, 0.738, 54.175, 147, 1.263, 59.804, 143, 1.300, 35.425, 139, 5.386, 32.195, 139, 4.260, 909.819, 124, 1.374, 7.114, 110, 2.027, 554.070, 109, 5.706, 77.963, 104, 5.028, 0.751, 104, 1.458, 24.379, 103, 0.681, 14.978, 95, 0.91, 74.67, 94, 3.94, 74.89, 89, 0.52, 181.76, 86, 1.71, 82.86, 85, 5.89, 256.54, 85, 0.37, 186.21, 83, 2.93, 265.99, 80, 3.01, 297.64, 80, 1.01, 6.59, 77, 4.59, 6.22, 75, 4.63, 69.36, 74, 6.24, 447.80, 73, 4.28, 87.31, 73, 2.85, 462.02, 70, 1.19, 66.70, 70, 0.87, 305.35, 70, 3.76, 131.40, 69, 4.44, 39.36, 62, 0.17, 479.29, 62, 3.19, 77.23, 58, 1.59, 60.77, 58, 2.67, 381.61, 58, 3.67, 51.21, 57, 1.63, 143.63, 55, 1.50, 71.60, 54, 5.52, 128.96, 50, 1.12, 20.61, 46, 4.36, 75.74, 45, 0.48, 14.01, 42, 3.82, 81.00, 40, 4.57, 46.21, 40, 0.70, 218.41, 40, 6.06, 293.19, 39, 5.59, 99.16, 39, 3.44, 153.50, 38, 6.07, 211.81, 36, 1.67, 258.02, 35, 1.97, 835.04, 35, 3.72, 692.59, 35, 1.03, 203.74, 35, 0.39, 1.37, 34, 1.08, 191.21, 34, 2.94, 140.00, 34, 6.06, 275.55, 33, 4.22, 200.77, 32, 5.51, 72.33, 30, 1.89, 269.92, 30, 3.87, 259.51, 29, 0.17, 528.21, 28, 2.18, 125.99, 27, 2.10, 209.37, 27, 4.75, 41.10, 27, 6.28, 28.57, 27, 4.48, 373.91, 26, 4.77, 284.15, 26, 5.81, 75.30, 26, 6.20, 134.59, 26, 3.63, 490.33, 26, 0.54, 41.64, 26, 0.75, 278.52, 25, 5.43, 116.43, 25, 4.71, 378.64, 24, 3.19, 81.37, 23, 3.58, 1.60, 23, 0.93, 288.08, 23, 0.53, 1514.29, 22, 1.84, 617.81, 22, 4.59, 404.51, 22, 5.87, 45.58, 22, 0.06, 173.94, 21, 2.74, 28.31, 21, 1.98, 114.40, 21, 5.62, 55.66, 21, 2.64, 105.49, 21, 0.89, 255.06, 20, 0.10, 195.14, 20, 3.78, 135.55, 19, 1.49, 0.89, 19, 6.22, 329.84, 19, 2.84, 159.12, 19, 0.51, 67.36, 19, 2.30, 5.11, @@ -610,7 +612,7 @@ static long double XL0_6[] = { /*R4*/ 53, 3.01, 74.78, 10, 1.91, 56.62, 7, 5.09, 11.05, 7, 5.43, 149.56, 4, 5.23, 131.40, 3, 1.30, 85.83, 3, 3.14, 0.00, 3, 0.44, 63.74, 2, 6.21, 358.93, 2, 0.92, 145.63, 2, 2.23, 440.68 }; //Dnep精度:J2000+-4千年 黄经1角秒 黄纬1角秒 距离40AU/10^6 -static long double XL0_7[] = { +static constexpr long double XL0_7[] = { 100000000,//A的倍率 20, 188, 260, 281, 293, 299, 302, 359, 404, 419, 422, 425, 425, 638, 701, 743, 746, 746, 746,//位置索引表 /*L0*/ 531188633, 0.000000000, 0.000000000, 1798476, 2.9010127, 38.1330356, 1019728, 0.4858092, 1.4844727, 124532, 4.830081, 36.648563, 42064, 5.41055, 2.96895, 37715, 6.09222, 35.16409, 33785, 1.24489, 76.26607, 16483, 0.00008, 491.55793, 9199, 4.9375, 39.6175, 8994, 0.2746, 175.1661, 4216, 1.9871, 73.2971, 3365, 1.0359, 33.6796, 2285, 4.2061, 4.4534, 1434, 2.7834, 74.7816, 900, 2.076, 109.946, 745, 3.190, 71.813, 506, 5.748, 114.399, 400, 0.350, 1021.249, 345, 3.462, 41.102, 340, 3.304, 77.751, 323, 2.248, 32.195, 306, 0.497, 0.521, 287, 4.505, 0.048, 282, 2.246, 146.594, 267, 4.889, 0.963, 252, 5.782, 388.465, 245, 1.247, 9.561, 233, 2.505, 137.033, 227, 1.797, 453.425, 170, 3.324, 108.461, 151, 2.192, 33.940, 150, 2.997, 5.938, 148, 0.859, 111.430, 119, 3.677, 2.448, 109, 2.416, 183.243, 103, 0.041, 0.261, 103, 4.404, 70.328, 102, 5.705, 0.112, 98, 2.81, 8.08, 86, 4.23, 490.07, 82, 5.20, 493.04, 78, 4.16, 4.19, 74, 1.33, 529.69, 72, 5.30, 350.33, 64, 3.55, 168.05, 63, 0.15, 182.28, 58, 3.50, 145.11, 48, 1.11, 112.91, 48, 0.13, 484.44, 48, 2.58, 219.89, 47, 4.57, 46.21, 47, 4.50, 173.68, 47, 3.02, 498.67, 45, 5.47, 176.65, 39, 1.67, 213.30, 39, 2.39, 2.92, @@ -630,7 +632,7 @@ static long double XL0_7[] = { /*R2*/ 4247, 5.8991, 38.1330, 218, 0.346, 1.484, 163, 2.239, 168.053, 156, 4.594, 182.280, 127, 2.848, 35.164, 118, 5.103, 484.444, 112, 1.190, 498.671, 99, 3.42, 175.17, 77, 0.02, 491.56, 65, 3.46, 388.47, 50, 4.07, 76.27, 39, 6.10, 1021.25, 37, 5.97, 2.97, 36, 5.17, 137.03, /*R3*/ 166, 4.552, 38.133 }; -static long double* XL0[] = { +static constexpr const long double* XL0[] = { XL0_0, XL0_1, XL0_2, @@ -664,55 +666,55 @@ static long double* XL0[] = { ******/ //各坐标均是余弦项,各列单位:角秒,1,1,1e-4,1e-8,1e-8 -static long double XL1_0_0[] = { +static constexpr long double XL1_0_0[] = { 22639.586, 0.78475822, 8328.691424623, 1.5229241, 25.0719, -0.123598, 4586.438, 0.1873974, 7214.06286536, -2.184756, -18.860, 0.08280, 2369.914, 2.5429520, 15542.75428998, -0.661832, 6.212, -0.04080, 769.026, 3.140313, 16657.38284925, 3.04585, 50.144, -0.2472, 666.418, 1.527671, 628.30195521, -0.02664, 0.062, -0.0054, 411.596, 4.826607, 16866.9323150, -1.28012, -1.07, -0.0059, 211.656, 4.115028, -1114.6285593, -3.70768, -43.93, 0.2064, 205.436, 0.230523, 6585.7609101, -2.15812, -18.92, 0.0882, 191.956, 4.898507, 23871.4457146, 0.86109, 31.28, -0.164, 164.729, 2.586078, 14914.4523348, -0.6352, 6.15, -0.035, 147.321, 5.45530, -7700.3894694, -1.5496, -25.01, 0.118, 124.988, 0.48608, 7771.3771450, -0.3309, 3.11, -0.020, 109.380, 3.88323, 8956.9933798, 1.4963, 25.13, -0.129, 55.177, 5.57033, -1324.1780250, 0.6183, 7.3, -0.035, 45.100, 0.89898, 25195.623740, 0.2428, 24.0, -0.129, 39.533, 3.81213, -8538.240890, 2.8030, 26.1, -0.118, 38.430, 4.30115, 22756.817155, -2.8466, -12.6, 0.042, 36.124, 5.49587, 24986.074274, 4.5688, 75.2, -0.371, 30.773, 1.94559, 14428.125731, -4.3695, -37.7, 0.166, 28.397, 3.28586, 7842.364821, -2.2114, -18.8, 0.077, 24.358, 5.64142, 16171.056245, -0.6885, 6.3, -0.046, 18.585, 4.41371, -557.314280, -1.8538, -22.0, 0.10, 17.954, 3.58454, 8399.679100, -0.3576, 3.2, -0.03, 14.530, 4.9416, 23243.143759, 0.888, 31.2, -0.16, 14.380, 0.9709, 32200.137139, 2.384, 56.4, -0.29, 14.251, 5.7641, -2.301200, 1.523, 25.1, -0.12, 13.899, 0.3735, 31085.508580, -1.324, 12.4, -0.08, 13.194, 1.7595, -9443.319984, -5.231, -69.0, 0.33, 9.679, 3.0997, -16029.080894, -3.072, -50.1, 0.24, 9.366, 0.3016, 24080.995180, -3.465, -19.9, 0.08, 8.606, 4.1582, -1742.930514, -3.681, -44.0, 0.21, 8.453, 2.8416, 16100.068570, 1.192, 28.2, -0.14, 8.050, 2.6292, 14286.150380, -0.609, 6.1, -0.03, 7.630, 6.2388, 17285.684804, 3.019, 50.2, -0.25, 7.447, 1.4845, 1256.603910, -0.053, 0.1, -0.01, 7.371, 0.2736, 5957.458955, -2.131, -19.0, 0.09, 7.063, 5.6715, 33.757047, -0.308, -3.6, 0.02, 6.383, 4.7843, 7004.513400, 2.141, 32.4, -0.16, 5.742, 2.6572, 32409.686605, -1.942, 5, -0.05, 4.374, 4.3443, 22128.51520, -2.820, -13, 0.05, 3.998, 3.2545, 33524.31516, 1.766, 49, -0.25, 3.210, 2.2443, 14985.44001, -2.516, -16, 0.06, 2.915, 1.7138, 24499.74767, 0.834, 31, -0.17, 2.732, 1.9887, 13799.82378, -4.343, -38, 0.17, 2.568, 5.4122, -7072.08751, -1.576, -25, 0.11, 2.521, 3.2427, 8470.66678, -2.238, -19, 0.07, 2.489, 4.0719, -486.32660, -3.734, -44, 0.20, 2.146, 5.6135, -1952.47998, 0.645, 7, -0.03, 1.978, 2.7291, 39414.20000, 0.199, 37, -0.21, 1.934, 1.5682, 33314.76570, 6.092, 100, -0.5, 1.871, 0.4166, 30457.20662, -1.297, 12, -0.1, 1.753, 2.0582, -8886.00570, -3.38, -47, 0.2, 1.437, 2.386, -695.87607, 0.59, 7, 0, 1.373, 3.026, -209.54947, 4.33, 51, -0.2, 1.262, 5.940, 16728.37052, 1.17, 28, -0.1, 1.224, 6.172, 6656.74859, -4.04, -41, 0.2, 1.187, 5.873, 6099.43431, -5.89, -63, 0.3, 1.177, 1.014, 31571.83518, 2.41, 56, -0.3, 1.162, 3.840, 9585.29534, 1.47, 25, -0.1, 1.143, 5.639, 8364.73984, -2.18, -19, 0.1, 1.078, 1.229, 70.98768, -1.88, -22, 0.1, 1.059, 3.326, 40528.82856, 3.91, 81, -0.4, 0.990, 5.013, 40738.37803, -0.42, 30, -0.2, 0.948, 5.687, -17772.01141, -6.75, -94, 0.5, 0.876, 0.298, -0.35232, 0, 0, 0, 0.822, 2.994, 393.02097, 0, 0, 0, 0.788, 1.836, 8326.39022, 3.05, 50, -0.2, 0.752, 4.985, 22614.84180, 0.91, 31, -0.2, 0.740, 2.875, 8330.99262, 0, 0, 0, 0.669, 0.744, -24357.77232, -4.60, -75, 0.4, 0.644, 1.314, 8393.12577, -2.18, -19, 0.1, 0.639, 5.888, 575.33849, 0, 0, 0, 0.635, 1.116, 23385.11911, -2.87, -13, 0, 0.584, 5.197, 24428.75999, 2.71, 53, -0.3, 0.583, 3.513, -9095.55517, 0.95, 4, 0, 0.572, 6.059, 29970.88002, -5.03, -32, 0.1, 0.565, 2.960, 0.32863, 1.52, 25, -0.1, 0.561, 4.001, -17981.56087, -2.43, -43, 0.2, 0.557, 0.529, 7143.07519, -0.30, 3, 0, 0.546, 2.311, 25614.37623, 4.54, 75, -0.4, 0.536, 4.229, 15752.30376, -4.99, -45, 0.2, 0.493, 3.316, -8294.9344, -1.83, -29, 0.1, 0.491, 1.744, 8362.4485, 1.21, 21, -0.1, 0.478, 1.803, -10071.6219, -5.20, -69, 0.3, 0.454, 0.857, 15333.2048, 3.66, 57, -0.3, 0.445, 2.071, 8311.7707, -2.18, -19, 0.1, 0.426, 0.345, 23452.6932, -3.44, -20, 0.1, 0.420, 4.941, 33733.8646, -2.56, -2, 0, 0.413, 1.642, 17495.2343, -1.31, -1, 0, 0.404, 1.458, 23314.1314, -0.99, 9, -0.1, 0.395, 2.132, 38299.5714, -3.51, -6, 0, 0.382, 2.700, 31781.3846, -1.92, 5, 0, 0.375, 4.827, 6376.2114, 2.17, 32, -0.2, 0.361, 3.867, 16833.1753, -0.97, 3, 0, 0.358, 5.044, 15056.4277, -4.40, -38, 0.2, 0.350, 5.157, -8257.7037, -3.40, -47, 0.2, 0.344, 4.233, 157.7344, 0, 0, 0, 0.340, 2.672, 13657.8484, -0.58, 6, 0, 0.329, 5.610, 41853.0066, 3.29, 74, -0.4, 0.325, 5.895, -39.8149, 0, 0, 0, 0.309, 4.387, 21500.2132, -2.79, -13, 0.1, 0.302, 1.278, 786.0419, 0, 0, 0, 0.302, 5.341, -24567.3218, -0.27, -24, 0.1, 0.301, 1.045, 5889.8848, -1.57, -12, 0, 0.294, 4.201, -2371.2325, -3.65, -44, 0.2, 0.293, 3.704, 21642.1886, -6.55, -57, 0.2, 0.290, 4.069, 32828.4391, 2.36, 56, -0.3, 0.289, 3.472, 31713.8105, -1.35, 12, -0.1, 0.285, 5.407, -33.7814, 0.31, 4, 0, 0.283, 5.998, -16.9207, -3.71, -44, 0.2, 0.283, 2.772, 38785.8980, 0.23, 37, -0.2, 0.274, 5.343, 15613.7420, -2.54, -16, 0.1, 0.263, 3.997, 25823.9257, 0.22, 24, -0.1, 0.254, 0.600, 24638.3095, -1.61, 2, 0, 0.253, 1.344, 6447.1991, 0.29, 10, -0.1, 0.250, 0.887, 141.9754, -3.76, -44, 0.2, 0.247, 0.317, 5329.1570, -2.10, -19, 0.1, 0.245, 0.141, 36.0484, -3.71, -44, 0.2, 0.231, 2.287, 14357.1381, -2.49, -16, 0.1, 0.227, 5.158, 2.6298, 0, 0, 0, 0.219, 5.085, 47742.8914, 1.72, 63, -0.3, 0.211, 2.145, 6638.7244, -2.18, -19, 0.1, 0.201, 4.415, 39623.7495, -4.13, -14, 0, 0.194, 2.091, 588.4927, 0, 0, 0, 0.193, 3.057, -15400.7789, -3.10, -50, 0, 0.186, 5.598, 16799.3582, -0.72, 6, 0, 0.185, 3.886, 1150.6770, 0, 0, 0, 0.183, 1.619, 7178.0144, 1.52, 25, 0, 0.181, 2.635, 8328.3391, 1.52, 25, 0, 0.181, 2.077, 8329.0437, 1.52, 25, 0, 0.179, 3.215, -9652.8694, -0.90, -18, 0, 0.176, 1.716, -8815.0180, -5.26, -69, 0, 0.175, 5.673, 550.7553, 0, 0, 0, 0.170, 2.060, 31295.0580, -5.6, -39, 0, 0.167, 1.239, 7211.7617, -0.7, 6, 0, 0.165, 4.499, 14967.4158, -0.7, 6, 0, 0.164, 3.595, 15540.4531, 0.9, 31, 0, 0.164, 4.237, 522.3694, 0, 0, 0, 0.163, 4.633, 15545.0555, -2.2, -19, 0, 0.161, 0.478, 6428.0209, -2.2, -19, 0, 0.158, 2.03, 13171.5218, -4.3, -38, 0, 0.157, 2.28, 7216.3641, -3.7, -44, 0, 0.154, 5.65, 7935.6705, 1.5, 25, 0, 0.152, 0.46, 29828.9047, -1.3, 12, 0, 0.151, 1.19, -0.7113, 0, 0, 0, 0.150, 1.42, 23942.4334, -1.0, 9, 0, 0.144, 2.75, 7753.3529, 1.5, 25, 0, 0.137, 2.08, 7213.7105, -2.2, -19, 0, 0.137, 1.44, 7214.4152, -2.2, -19, 0, 0.136, 4.46, -1185.6162, -1.8, -22, 0, 0.136, 3.03, 8000.1048, -2.2, -19, 0, 0.134, 2.83, 14756.7124, -0.7, 6, 0, 0.131, 5.05, 6821.0419, -2.2, -19, 0, 0.128, 5.99, -17214.6971, -4.9, -72, 0, 0.127, 5.35, 8721.7124, 1.5, 25, 0, 0.126, 4.49, 46628.2629, -2.0, 19, 0, 0.125, 5.94, 7149.6285, 1.5, 25, 0, 0.124, 1.09, 49067.0695, 1.1, 55, 0, 0.121, 2.88, 15471.7666, 1.2, 28, 0, 0.111, 3.92, 41643.4571, 7.6, 125, -1, 0.110, 1.96, 8904.0299, 1.5, 25, 0, 0.106, 3.30, -18.0489, -2.2, -19, 0, 0.105, 2.30, -4.9310, 1.5, 25, 0, 0.104, 2.22, -6.5590, -1.9, -22, 0, 0.101, 1.44, 1884.9059, -0.1, 0, 0, 0.100, 5.92, 5471.1324, -5.9, -63, 0, 0.099, 1.12, 15149.7333, -0.7, 6, 0, 0.096, 4.73, 15508.9972, -0.4, 10, 0, 0.095, 5.18, 7230.9835, 1.5, 25, 0, 0.093, 3.37, 39900.5266, 3.9, 81, 0, 0.092, 2.01, 25057.0619, 2.7, 53, 0, 0.092, 1.21, -79.6298, 0, 0, 0, 0.092, 1.65, -26310.2523, -4.0, -68, 0, 0.091, 1.01, 42062.5561, -1.0, 23, 0, 0.090, 6.10, 29342.5781, -5.0, -32, 0, 0.090, 4.43, 15542.4020, -0.7, 6, 0, 0.090, 3.80, 15543.1066, -0.7, 6, 0, 0.089, 4.15, 6063.3859, -2.2, -19, 0, 0.086, 4.03, 52.9691, 0, 0, 0, 0.085, 0.49, 47952.4409, -2.6, 11, 0, 0.085, 1.60, 7632.8154, 2.1, 32, 0, 0.084, 0.22, 14392.0773, -0.7, 6, 0, 0.083, 6.22, 6028.4466, -4.0, -41, 0, 0.083, 0.63, -7909.9389, 2.8, 26, 0, 0.083, 5.20, -77.5523, 0, 0, 0, 0.082, 2.74, 8786.1467, -2.2, -19, 0, 0.080, 2.43, 9166.5428, -2.8, -26, 0, 0.080, 3.70, -25405.1732, 4.1, 27, 0, 0.078, 5.68, 48857.5200, 5.4, 106, -1, 0.077, 1.85, 8315.5735, -2.2, -19, 0, 0.075, 5.46, -18191.1103, 1.9, 8, 0, 0.075, 1.41, -16238.6304, 1.3, 1, 0, 0.074, 5.06, 40110.0761, -0.4, 30, 0, 0.072, 2.10, 64.4343, -3.7, -44, 0, 0.071, 2.17, 37671.2695, -3.5, -6, 0, 0.069, 1.71, 16693.4313, -0.7, 6, 0, 0.069, 3.33, -26100.7028, -8.3, -119, 1, 0.068, 1.09, 8329.4028, 1.5, 25, 0, 0.068, 3.62, 8327.9801, 1.5, 25, 0, 0.068, 2.41, 16833.1509, -1.0, 3, 0, 0.067, 3.40, 24709.2971, -3.5, -20, 0, 0.067, 1.65, 8346.7156, -0.3, 3, 0, 0.066, 2.61, 22547.2677, 1.5, 39, 0, 0.066, 3.50, 15576.5113, -1.0, 3, 0, 0.065, 5.76, 33037.9886, -2.0, 5, 0, 0.065, 4.58, 8322.1325, -0.3, 3, 0, 0.065, 6.20, 17913.9868, 3.0, 50, 0, 0.065, 1.50, 22685.8295, -1.0, 9, 0, 0.065, 2.37, 7180.3058, -1.9, -15, 0, 0.064, 1.06, 30943.5332, 2.4, 56, 0, 0.064, 1.89, 8288.8765, 1.5, 25, 0, 0.064, 4.70, 6.0335, 0.3, 4, 0, 0.063, 2.83, 8368.5063, 1.5, 25, 0, 0.063, 5.66, -2580.7819, 0.7, 7, 0, 0.062, 3.78, 7056.3285, -2.2, -19, 0, 0.061, 1.49, 8294.9100, 1.8, 29, 0, 0.061, 0.12, -10281.1714, -0.9, -18, 0, 0.061, 3.06, -8362.4729, -1.2, -21, 0, 0.061, 4.43, 8170.9571, 1.5, 25, 0, 0.059, 5.78, -13.1179, -3.7, -44, 0, 0.059, 5.97, 6625.5702, -2.2, -19, 0, 0.058, 5.01, -0.5080, -0.3, 0, 0, 0.058, 2.73, 7161.0938, -2.2, -19, 0, 0.057, 0.19, 7214.0629, -2.2, -19, 0, 0.057, 4.00, 22199.5029, -4.7, -35, 0, 0.057, 5.38, 8119.1420, 5.8, 76, 0, 0.056, 1.07, 7542.6495, 1.5, 25, 0, 0.056, 0.28, 8486.4258, 1.5, 25, 0, 0.054, 4.19, 16655.0816, 4.6, 75, 0, 0.053, 0.72, 7267.0320, -2.2, -19, 0, 0.053, 3.12, 12.6192, 0.6, 7, 0, 0.052, 2.99, -32896.013, -1.8, -49, 0, 0.052, 3.46, 1097.708, 0, 0, 0, 0.051, 5.37, -6443.786, -1.6, -25, 0, 0.051, 1.35, 7789.401, -2.2, -19, 0, 0.051, 5.83, 40042.502, 0.2, 38, 0, 0.051, 3.63, 9114.733, 1.5, 25, 0, 0.050, 1.51, 8504.484, -2.5, -22, 0, 0.050, 5.23, 16659.684, 1.5, 25, 0, 0.050, 1.15, 7247.820, -2.5, -23, 0, 0.047, 0.25, -1290.421, 0.3, 0, 0, 0.047, 4.67, -32686.464, -6.1, -100, 0, 0.047, 3.49, 548.678, 0, 0, 0, 0.047, 2.37, 6663.308, -2.2, -19, 0, 0.046, 0.98, 1572.084, 0, 0, 0, 0.046, 2.04, 14954.262, -0.7, 6, 0, 0.046, 3.72, 6691.693, -2.2, -19, 0, 0.045, 6.19, -235.287, 0, 0, 0, 0.044, 2.96, 32967.001, -0.1, 27, 0, 0.044, 3.82, -1671.943, -5.6, -66, 0, 0.043, 5.82, 1179.063, 0, 0, 0, 0.043, 0.07, 34152.617, 1.7, 49, 0, 0.043, 3.71, 6514.773, -0.3, 0, 0, 0.043, 5.62, 15.732, -2.5, -23, 0, 0.043, 5.80, 8351.233, -2.2, -19, 0, 0.042, 0.27, 7740.199, 1.5, 25, 0, 0.042, 6.14, 15385.020, -0.7, 6, 0, 0.042, 6.13, 7285.051, -4.1, -41, 0, 0.041, 1.27, 32757.451, 4.2, 78, 0, 0.041, 4.46, 8275.722, 1.5, 25, 0, 0.040, 0.23, 8381.661, 1.5, 25, 0, 0.040, 5.87, -766.864, 2.5, 29, 0, 0.040, 1.66, 254.431, 0, 0, 0, 0.040, 0.40, 9027.981, -0.4, 0, 0, 0.040, 2.96, 7777.936, 1.5, 25, 0, 0.039, 4.67, 33943.068, 6.1, 100, 0, 0.039, 3.52, 8326.062, 1.5, 25, 0, 0.039, 3.75, 21013.887, -6.5, -57, 0, 0.039, 5.60, 606.978, 0, 0, 0, 0.039, 1.19, 8331.321, 1.5, 25, 0, 0.039, 2.84, 7211.433, -2.2, -19, 0, 0.038, 0.67, 7216.693, -2.2, -19, 0, 0.038, 6.22, 25161.867, 0.6, 28, 0, 0.038, 4.40, 7806.322, 1.5, 25, 0, 0.038, 4.16, 9179.168, -2.2, -19, 0, 0.037, 4.73, 14991.999, -0.7, 6, 0, 0.036, 0.35, 67.514, -0.6, -7, 0, 0.036, 3.70, 25266.611, -1.6, 0, 0, 0.036, 5.39, 16328.796, -0.7, 6, 0, 0.035, 1.44, 7174.248, -2.2, -19, 0, 0.035, 5.00, 15684.730, -4.4, -38, 0, 0.035, 0.39, -15.419, -2.2, -19, 0, 0.035, 6.07, 15020.385, -0.7, 6, 0, 0.034, 6.01, 7371.797, -2.2, -19, 0, 0.034, 0.96, -16623.626, -3.4, -54, 0, 0.033, 6.24, 9479.368, 1.5, 25, 0, 0.033, 3.21, 23661.896, 5.2, 82, 0, 0.033, 4.06, 8311.418, -2.2, -19, 0, 0.033, 2.40, 1965.105, 0, 0, 0, 0.033, 5.17, 15489.785, -0.7, 6, 0, 0.033, 5.03, 21986.540, 0.9, 31, 0, 0.033, 4.10, 16691.140, 2.7, 46, 0, 0.033, 5.13, 47114.589, 1.7, 63, 0, 0.033, 4.45, 8917.184, 1.5, 25, 0, 0.033, 4.23, 2.078, 0, 0, 0, 0.032, 2.33, 75.251, 1.5, 25, 0, 0.032, 2.10, 7253.878, -2.2, -19, 0, 0.032, 3.11, -0.224, 1.5, 25, 0, 0.032, 4.43, 16640.462, -0.7, 6, 0, 0.032, 5.68, 8328.363, 0, 0, 0, 0.031, 5.32, 8329.020, 3.0, 50, 0, 0.031, 3.70, 16118.093, -0.7, 6, 0, 0.030, 3.67, 16721.817, -0.7, 6, 0, 0.030, 5.27, -1881.492, -1.2, -15, 0, 0.030, 5.72, 8157.839, -2.2, -19, 0, 0.029, 5.73, -18400.313, -6.7, -94, 0, 0.029, 2.76, 16.000, -2.2, -19, 0, 0.029, 1.75, 8879.447, 1.5, 25, 0, 0.029, 0.32, 8851.061, 1.5, 25, 0, 0.029, 0.90, 14704.903, 3.7, 57, 0, 0.028, 2.90, 15595.723, -0.7, 6, 0, 0.028, 5.88, 16864.631, 0.2, 24, 0, 0.028, 0.63, 16869.234, -2.8, -26, 0, 0.028, 4.04, -18609.863, -2.4, -43, 0, 0.027, 5.83, 6727.736, -5.9, -63, 0, 0.027, 6.12, 418.752, 4.3, 51, 0, 0.027, 0.14, 41157.131, 3.9, 81, 0, 0.026, 3.80, 15.542, 0, 0, 0, 0.026, 1.68, 50181.698, 4.8, 99, -1, 0.026, 0.32, 315.469, 0, 0, 0, 0.025, 5.67, 19.188, 0.3, 0, 0, 0.025, 3.16, 62.133, -2.2, -19, 0, 0.025, 3.76, 15502.939, -0.7, 6, 0, 0.025, 4.53, 45999.961, -2.0, 19, 0, 0.024, 3.21, 837.851, -4.4, -51, 0, 0.024, 2.82, 38157.596, 0.3, 37, 0, 0.024, 5.21, 15540.124, -0.7, 6, 0, 0.024, 0.26, 14218.576, 0, 13, 0, 0.024, 3.01, 15545.384, -0.7, 6, 0, 0.024, 1.16, -17424.247, -0.6, -21, 0, 0.023, 2.34, -67.574, 0.6, 7, 0, 0.023, 2.44, 18.024, -1.9, -22, 0, 0.023, 3.70, 469.400, 0, 0, 0, 0.023, 0.72, 7136.511, -2.2, -19, 0, 0.023, 4.50, 15582.569, -0.7, 6, 0, 0.023, 2.80, -16586.395, -4.9, -72, 0, 0.023, 1.51, 80.182, 0, 0, 0, 0.023, 1.09, 5261.583, -1.5, -12, 0, 0.023, 0.56, 54956.954, -0.5, 44, 0, 0.023, 4.01, 8550.860, -2.2, -19, 0, 0.023, 4.46, 38995.448, -4.1, -14, 0, 0.023, 3.82, 2358.126, 0, 0, 0, 0.022, 3.77, 32271.125, 0.5, 34, 0, 0.022, 0.82, 15935.775, -0.7, 6, 0, 0.022, 1.07, 24013.421, -2.9, -13, 0, 0.022, 0.40, 8940.078, -2.2, -19, 0, 0.022, 2.06, 15700.489, -0.7, 6, 0, 0.022, 4.27, 15124.002, -5.0, -45, 0, 0.021, 1.16, 56071.583, 3.2, 88, 0, 0.021, 5.58, 9572.189, -2.2, -19, 0, 0.020, 1.70, -17.273, -3.7, -44, 0, 0.020, 3.05, 214.617, 0, 0, 0, 0.020, 4.41, 8391.048, -2.2, -19, 0, 0.020, 5.95, 23869.145, 2.4, 56, 0, 0.020, 0.42, 40947.927, -4.7, -21, 0, 0.019, 1.39, 5818.897, 0.3, 10, 0, 0.019, 0.71, 23873.747, -0.7, 6, 0, 0.019, 2.81, 7291.615, -2.2, -19, 0, 0.019, 5.09, 8428.018, -2.2, -19, 0, 0.019, 4.14, 6518.187, -1.6, -12, 0, 0.019, 3.85, 21.330, 0, 0, 0, 0.018, 0.66, 14445.046, -0.7, 6, 0, 0.018, 1.65, 0.966, -4.0, -48, 0, 0.018, 5.64, -17143.709, -6.8, -94, 0, 0.018, 6.01, 7736.432, -2.2, -19, 0, 0.018, 2.74, 31153.083, -1.9, 5, 0, 0.018, 4.58, 6116.355, -2.2, -19, 0, 0.018, 2.28, 46.401, 0.3, 0, 0, 0.018, 3.80, 10213.597, 1.4, 25, 0, 0.018, 2.84, 56281.132, -1.1, 36, 0, 0.018, 3.53, 8249.062, 1.5, 25, 0, 0.017, 4.43, 20871.911, -3, -13, 0, 0.017, 4.44, 627.596, 0, 0, 0, 0.017, 1.85, 628.308, 0, 0, 0, 0.017, 1.19, 8408.321, 2, 25, 0, 0.017, 1.95, 7214.056, -2, -19, 0, 0.017, 1.57, 7214.070, -2, -19, 0, 0.017, 1.65, 13870.811, -6, -60, 0, 0.017, 0.30, 22.542, -4, -44, 0, 0.017, 2.62, -119.445, 0, 0, 0, 0.016, 4.87, 5747.909, 2, 32, 0, 0.016, 4.45, 14339.108, -1, 6, 0, 0.016, 1.83, 41366.680, 0, 30, 0, 0.016, 4.53, 16309.618, -3, -23, 0, 0.016, 2.54, 15542.754, -1, 6, 0, 0.016, 6.05, 1203.646, 0, 0, 0, 0.015, 5.2, 2751.147, 0, 0, 0, 0.015, 1.8, -10699.924, -5, -69, 0, 0.015, 0.4, 22824.391, -3, -20, 0, 0.015, 2.1, 30666.756, -6, -39, 0, 0.015, 2.1, 6010.417, -2, -19, 0, 0.015, 0.7, -23729.470, -5, -75, 0, 0.015, 1.4, 14363.691, -1, 6, 0, 0.015, 5.8, 16900.689, -2, 0, 0, 0.015, 5.2, 23800.458, 3, 53, 0, 0.015, 5.3, 6035.000, -2, -19, 0, 0.015, 1.2, 8251.139, 2, 25, 0, 0.015, 3.6, -8.860, 0, 0, 0, 0.015, 0.8, 882.739, 0, 0, 0, 0.015, 3.0, 1021.329, 0, 0, 0, 0.015, 0.6, 23296.107, 1, 31, 0, 0.014, 5.4, 7227.181, 2, 25, 0, 0.014, 0.1, 7213.352, -2, -19, 0, 0.014, 4.0, 15506.706, 3, 50, 0, 0.014, 3.4, 7214.774, -2, -19, 0, 0.014, 4.6, 6665.385, -2, -19, 0, 0.014, 0.1, -8.636, -2, -22, 0, 0.014, 3.1, 15465.202, -1, 6, 0, 0.014, 4.9, 508.863, 0, 0, 0, 0.014, 3.5, 8406.244, 2, 25, 0, 0.014, 1.3, 13313.497, -8, -82, 0, 0.014, 2.8, 49276.619, -3, 0, 0, 0.014, 0.1, 30528.194, -3, -10, 0, 0.013, 1.7, 25128.050, 1, 31, 0, 0.013, 2.9, 14128.405, -1, 6, 0, 0.013, 3.4, 57395.761, 3, 80, 0, 0.013, 2.7, 13029.546, -1, 6, 0, 0.013, 3.9, 7802.556, -2, -19, 0, 0.013, 1.6, 8258.802, -2, -19, 0, 0.013, 2.2, 8417.709, -2, -19, 0, 0.013, 0.7, 9965.210, -2, -19, 0, 0.013, 3.4, 50391.247, 0, 48, 0, 0.013, 3.0, 7134.433, -2, -19, 0, 0.013, 2.9, 30599.182, -5, -31, 0, 0.013, 3.6, -9723.857, 1, 0, 0, 0.013, 4.8, 7607.084, -2, -19, 0, 0.012, 0.8, 23837.689, 1, 35, 0, 0.012, 3.6, 4.409, -4, -44, 0, 0.012, 5.0, 16657.031, 3, 50, 0, 0.012, 4.4, 16657.735, 3, 50, 0, 0.012, 1.1, 15578.803, -4, -38, 0, 0.012, 6.0, -11.490, 0, 0, 0, 0.012, 1.9, 8164.398, 0, 0, 0, 0.012, 2.4, 31852.372, -4, -17, 0, 0.012, 2.4, 6607.085, -2, -19, 0, 0.012, 4.2, 8359.870, 0, 0, 0, 0.012, 0.5, 5799.713, -2, -19, 0, 0.012, 2.7, 7220.622, 0, 0, 0, 0.012, 4.3, -139.720, 0, 0, 0, 0.012, 2.3, 13728.836, -2, -16, 0, 0.011, 3.6, 14912.146, 1, 31, 0, 0.011, 4.7, 14916.748, -2, -19, 0 }; -static long double XL1_0_1[] = { +static constexpr long double XL1_0_1[] = { 1.67680,4.66926,628.301955,-0.0266,0.1,-0.005,0.51642,3.3721,6585.760910,-2.158,-18.9,0.09,0.41383,5.7277,14914.452335,-0.635,6.2,-0.04,0.37115,3.9695,7700.389469,1.550,25.0,-0.12,0.27560,0.7416,8956.993380,1.496,25.1,-0.13,0.24599,4.2253,-2.301200,1.523,25.1,-0.12,0.07118,0.1443,7842.36482,-2.211,-19,0.08,0.06128,2.4998,16171.05625,-0.688,6,0,0.04516,0.443,8399.67910,-0.36,3,0,0.04048,5.771,14286.15038,-0.61,6,0,0.03747,4.626,1256.60391,-0.05,0,0,0.03707,3.415,5957.45895,-2.13,-19,0.1,0.03649,1.800,23243.14376,0.89,31,-0.2,0.02438,0.042,16029.08089,3.07,50,-0.2,0.02165,1.017,-1742.93051,-3.68,-44,0.2,0.01923,3.097,17285.68480,3.02,50,-0.3,0.01692,1.280,0.3286,1.52,25,-0.1,0.01361,0.298,8326.3902,3.05,50,-0.2,0.01293,4.013,7072.0875,1.58,25,-0.1,0.01276,4.413,8330.9926,0,0,0,0.01270,0.101,8470.6668,-2.24,-19,0.1,0.01097,1.203,22128.5152,-2.82,-13,0,0.01088,2.545,15542.7543,-0.66,6,0,0.00835,0.190,7214.0629,-2.18,-19,0.1,0.00734,4.855,24499.7477,0.83,31,-0.2,0.00686,5.130,13799.8238,-4.34,-38,0.2,0.00631,0.930,-486.3266,-3.73,-44,0,0.00585,0.699,9585.2953,1.5,25,0,0.00566,4.073,8328.3391,1.5,25,0,0.00566,0.638,8329.0437,1.5,25,0,0.00539,2.472,-1952.4800,0.6,7,0,0.00509,2.88,-0.7113,0,0,0,0.00469,3.56,30457.2066,-1.3,12,0,0.00387,0.78,-0.3523,0,0,0,0.00378,1.84,22614.8418,0.9,31,0,0.00362,5.53,-695.8761,0.6,7,0,0.00317,2.80,16728.3705,1.2,28,0,0.00303,6.07,157.7344,0,0,0,0.00300,2.53,33.7570,-0.3,-4,0,0.00295,4.16,31571.8352,2.4,56,0,0.00289,5.98,7211.7617,-0.7,6,0,0.00285,2.06,15540.4531,0.9,31,0,0.00283,2.65,2.6298,0,0,0,0.00282,6.17,15545.0555,-2.2,-19,0,0.00278,1.23,-39.8149,0,0,0,0.00272,3.82,7216.3641,-3.7,-44,0,0.00270,4.37,70.9877,-1.9,-22,0,0.00256,5.81,13657.8484,-0.6,6,0,0.00244,5.64,-0.2237,1.5,25,0,0.00240,2.96,8311.7707,-2.2,-19,0,0.00239,0.87,-33.7814,0.3,4,0,0.00216,2.31,15.9995,-2.2,-19,0,0.00186,3.46,5329.1570,-2.1,-19,0,0.00169,2.40,24357.772,4.6,75,0,0.00161,5.80,8329.403,1.5,25,0,0.00161,5.20,8327.980,1.5,25,0,0.00160,4.26,23385.119,-2.9,-13,0,0.00156,1.26,550.755,0,0,0,0.00155,1.25,21500.213,-2.8,-13,0,0.00152,0.60,-16.921,-3.7,-44,0,0.00150,2.71,-79.630,0,0,0,0.00150,5.29,15.542,0,0,0,0.00148,1.06,-2371.232,-3.7,-44,0,0.00141,0.77,8328.691,1.5,25,0,0.00141,3.67,7143.075,-0.3,0,0,0.00138,5.45,25614.376,4.5,75,0,0.00129,4.90,23871.446,0.9,31,0,0.00126,4.03,141.975,-3.8,-44,0,0.00124,6.01,522.369,0,0,0,0.00120,4.94,-10071.622,-5.2,-69,0,0.00118,5.07,-15.419,-2.2,-19,0,0.00107,3.49,23452.693,-3.4,-20,0,0.00104,4.78,17495.234,-1.3,0,0,0.00103,1.44,-18.049,-2.2,-19,0,0.00102,5.63,15542.402,-0.7,6,0,0.00102,2.59,15543.107,-0.7,6,0,0.00100,4.11,-6.559,-1.9,-22,0,0.00097,0.08,15400.779,3.1,50,0,0.00096,5.84,31781.385,-1.9,5,0,0.00094,1.08,8328.363,0,0,0,0.00094,2.46,16799.358,-0.7,6,0,0.00094,1.69,6376.211,2.2,32,0,0.00093,3.64,8329.020,3.0,50,0,0.00093,2.65,16655.082,4.6,75,0,0.00090,1.90,15056.428,-4.4,-38,0,0.00089,1.59,52.969,0,0,0,0.00088,2.02,-8257.704,-3.4,-47,0,0.00088,3.02,7213.711,-2.2,-19,0,0.00087,0.50,7214.415,-2.2,-19,0,0.00087,0.49,16659.684,1.5,25,0,0.00082,5.64,-4.931,1.5,25,0,0.00079,5.17,13171.522,-4.3,-38,0,0.00076,3.60,29828.905,-1.3,12,0,0.00076,4.08,24567.322,0.3,24,0,0.00076,4.58,1884.906,-0.1,0,0,0.00073,0.33,31713.811,-1.4,12,0,0.00073,0.93,32828.439,2.4,56,0,0.00071,5.91,38785.898,0.2,37,0,0.00069,2.20,15613.742,-2.5,-16,0,0.00066,3.87,15.732,-2.5,-23,0,0.00066,0.86,25823.926,0.2,24,0,0.00065,2.52,8170.957,1.5,25,0,0.00063,0.18,8322.132,-0.3,0,0,0.00060,5.84,8326.062,1.5,25,0,0.00060,5.15,8331.321,1.5,25,0,0.00060,2.18,8486.426,1.5,25,0,0.00058,2.30,-1.731,-4,-44,0,0.00058,5.43,14357.138,-2,-16,0,0.00057,3.09,8294.910,2,29,0,0.00057,4.67,-8362.473,-1,-21,0,0.00056,4.15,16833.151,-1,0,0,0.00054,1.93,7056.329,-2,-19,0,0.00054,5.27,8315.574,-2,-19,0,0.00052,5.6,8311.418,-2,-19,0,0.00052,2.7,-77.552,0,0,0,0.00051,4.3,7230.984,2,25,0,0.00050,0.4,-0.508,0,0,0,0.00049,5.4,7211.433,-2,-19,0,0.00049,4.4,7216.693,-2,-19,0,0.00049,4.3,16864.631,0,24,0,0.00049,2.2,16869.234,-3,-26,0,0.00047,6.1,627.596,0,0,0,0.00047,5.0,12.619,1,7,0,0.00045,4.9,-8815.018,-5,-69,0,0.00044,1.6,62.133,-2,-19,0,0.00042,2.9,-13.118,-4,-44,0,0.00042,4.1,-119.445,0,0,0,0.00041,4.3,22756.817,-3,-13,0,0.00041,3.6,8288.877,2,25,0,0.00040,0.5,6663.308,-2,-19,0,0.00040,1.1,8368.506,2,25,0,0.00039,4.1,6443.786,2,25,0,0.00039,3.1,16657.383,3,50,0,0.00038,0.1,16657.031,3,50,0,0.00038,3.0,16657.735,3,50,0,0.00038,4.6,23942.433,-1,9,0,0.00037,4.3,15385.020,-1,6,0,0.00037,5.0,548.678,0,0,0,0.00036,1.8,7213.352,-2,-19,0,0.00036,1.7,7214.774,-2,-19,0,0.00035,1.1,7777.936,2,25,0,0.00035,1.6,-8.860,0,0,0,0.00035,4.4,23869.145,2,56,0,0.00035,2.0,6691.693,-2,-19,0,0.00034,1.3,-1185.616,-2,-22,0,0.00034,2.2,23873.747,-1,6,0,0.00033,2.0,-235.287,0,0,0,0.00033,3.1,17913.987,3,50,0,0.00033,1.0,8351.233,-2,-19,0 }; -static long double XL1_0_2[] = { +static constexpr long double XL1_0_2[] = { 0.00001200,1.041,-2.3012,1.52,25,-0.1,0.00000170,0.31,-0.711,0,0,0 }; -static long double* XL1_0[] = { XL1_0_0,XL1_0_1,XL1_0_2 }; +static constexpr const long double* XL1_0[] = { XL1_0_0,XL1_0_1,XL1_0_2 }; -static long double XL1_1_0[] = { +static constexpr long double XL1_1_0[] = { 18461.240,0.05710892,8433.466157492,-0.6400617,-0.5345,-0.00294,1010.167,2.412663,16762.15758211,0.88286,24.537,-0.1265,999.694,5.440038,-104.77473287,2.16299,25.606,-0.1207,623.652,0.915047,7109.28813249,-0.02177,6.746,-0.0379,199.484,1.815303,15647.5290228,-2.82482,-19.39,0.0799,166.574,4.842677,-1219.4032921,-1.5447,-18.33,0.086,117.261,4.17086,23976.2204475,-1.3019,5.68,-0.044,61.912,4.76822,25090.8490067,2.4058,49.61,-0.250,33.357,3.27060,15437.979557,1.5012,31.8,-0.161,31.760,1.51241,8223.916692,3.6859,50.7,-0.244,29.577,0.95817,6480.986177,0.0049,6.7,-0.032,15.566,2.4871,-9548.094717,-3.068,-43.4,0.21,15.122,0.2432,32304.911872,0.221,30.7,-0.17,12.094,4.0135,7737.590088,-0.048,6.8,-0.04,8.868,1.8584,15019.227068,-2.798,-19.5,0.09,8.045,5.3812,8399.709110,-0.332,3.1,-0.02,7.959,4.2140,23347.918492,-1.275,5.6,-0.04,7.435,4.8858,-1847.705247,-1.518,-18.4,0.09,6.731,3.8274,-16133.855627,-0.910,-24.5,0.12,6.580,2.6732,14323.350998,-2.207,-12.1,0.04,6.460,3.1556,9061.768113,-0.667,-0.5,-0.01,6.296,0.1713,25300.398472,-1.920,-1.6,-0.01,5.632,0.8000,733.076688,-2.190,-26,0.12,5.368,2.1140,16204.843302,-0.971,3,-0.02,5.311,5.5111,17390.459537,0.856,25,-0.13,5.076,2.2553,523.52722,2.136,26,-0.13,4.840,6.1830,-7805.16420,0.613,1,0,4.806,5.1414,-662.08901,0.309,4,-0.02,3.984,0.8406,33419.54043,3.929,75,-0.37,3.674,5.0288,22652.04242,-0.684,13,-0.08,2.998,5.9291,31190.28331,-3.487,-13,0.04,2.799,2.1842,-16971.70705,3.443,27,-0.11,2.414,3.5735,22861.59189,-5.010,-38,0.16,2.186,3.9424,-9757.64418,1.258,8,-0.03,2.146,5.6262,23766.67098,3.024,57,-0.29,1.766,3.3137,14809.67760,1.528,32,-0.2,1.624,2.6013,7318.83760,-4.35,-44,0.2,1.581,3.8680,16552.60812,5.21,76,-0.4,1.520,2.599,40633.60330,1.74,56,-0.3,1.516,0.132,-17876.78614,-4.59,-68,0.3,1.510,3.927,8399.68473,-0.33,3,0,1.318,4.914,16275.83098,-2.85,-19,0.1,1.264,0.986,24604.52240,-1.33,6,0,1.192,2.001,39518.97474,-1.96,12,-0.1,1.135,0.286,31676.60992,0.25,31,-0.2,1.086,1.001,5852.68422,0.03,7,0,1.019,2.527,33629.08990,-0.40,23,-0.1,0.823,0.086,16066.28151,1.47,32,-0.2,0.804,1.957,-33.78706,0.28,4,0,0.803,5.212,16833.14526,-1.00,3,0,0.793,1.472,-24462.54705,-2.43,-50,0.2,0.791,1.658,-591.10134,-1.57,-18,0.1,0.667,4.470,24533.53473,0.55,28,-0.1,0.650,2.530,-10176.39667,-3.04,-43,0.2,0.639,1.583,25719.15096,2.38,50,-0.3,0.634,0.318,5994.65957,-3.73,-37,0.2,0.631,2.147,8435.76736,-2.16,-26,0.1,0.630,1.109,8431.16496,0.88,25,-0.1,0.596,2.716,13695.04904,-2.18,-12,0.1,0.589,1.214,7666.60241,1.83,29,-0.1,0.473,1.101,30980.7338,0.84,38,-0.2,0.456,0.116,-71.0177,1.85,22,-0.1,0.430,2.786,-8990.7804,-1.21,-21,0.1,0.416,1.454,16728.4005,1.19,28,-0.1,0.415,5.072,22023.7405,-0.66,13,-0.1,0.383,4.257,22719.6165,-1.25,6,0,0.352,2.972,14880.6653,-0.35,10,-0.1,0.339,5.972,30561.9814,-3.46,-13,0,0.329,1.587,-18086.3356,-0.26,-17,0.1,0.326,1.016,8467.2232,-0.95,-4,0,0.315,1.902,14390.9251,-2.77,-20,0.1,0.313,4.611,8852.2186,3.66,51,-0.2,0.305,0.616,6551.9739,-1.88,-15,0.1,0.301,4.728,-7595.6147,-3.71,-51,0.2,0.299,1.874,7143.0452,-0.33,3,0,0.291,3.156,-1428.9528,2.78,33,-0.2,0.269,4.929,-2476.0072,-1.49,-18,0.1,0.263,3.196,41748.2319,5.45,100,-0.5,0.254,3.387,-1009.8538,-5.87,-70,0.3,0.245,1.930,32514.4613,-4.10,-20,0.1,0.237,3.342,32933.2138,0.19,31,-0.2,0.214,3.617,22233.2899,-4.98,-38,0.2,0.213,4.357,47847.6662,-0.44,37,-0.2,0.206,3.872,23418.9062,-3.16,-16,0.1,0.172,5.772,14951.6530,-2.2,-12,0,0.158,2.04,38890.6728,-1.9,12,0,0.146,1.70,32095.3624,4.5,82,0,0.145,4.29,40843.1528,-2.6,5,0,0.139,2.90,7876.1519,-2.5,-23,0,0.138,4.95,48962.2947,3.3,81,0,0.134,3.97,8365.8920,-0.1,7,0,0.134,4.06,-26205.4776,-6.1,-94,0,0.130,1.40,-8643.0156,5.0,52,0,0.129,5.67,23138.3690,3.1,57,0,0.124,2.64,40005.3013,1.8,56,0,0.118,4.88,41957.7813,1.1,49,0,0.113,3.78,-15505.5537,-0.9,-24,0,0.113,4.87,16904.1329,-2.9,-19,0,0.113,1.84,23280.3444,-0.7,13,0,0.110,0.43,-17319.4719,-2.7,-47,0,0.105,1.61,37.2006,-1.6,-18,0,0.102,1.28,25161.8367,0.5,28,0,0.095,0.76,1361.3786,-2.2,-25,0,0.094,0.50,29866.1053,-2.9,-6,0,0.092,6.22,24881.2995,6.7,101,0,0.088,3.99,-10385.9461,1.3,8,0,0.085,4.71,70.9933,-1.9,-22,0,0.084,0.86,15613.7720,-2.5,-16,0,0.081,4.43,21537.4139,-4.4,-31,0,0.080,1.86,-8365.9521,0,-7,0,0.080,0,16728.3762,1.2,28,0,0.079,2.44,-8919.7928,-3.1,-43,0,0.078,3.69,-452.5395,-4.0,-48,0,0.075,5.40,-32791.2385,-4.0,-75,0,0.073,5.80,-1185.6462,-1.9,-22,0,0.070,3.46,16759.8564,2.4,50,0,0.069,3.36,14181.3756,1.6,32,0,0.068,4.50,16764.4588,-0.6,-1,0,0.067,4.74,8446.0854,0,7,0,0.066,5.86,24185.7699,-5.6,-46,0,0.064,0.54,32862.2262,2.1,53,0,0.063,2.44,24394.9729,3.0,57,0,0.063,1.77,5785.1101,0.6,14,0,0.062,2.64,6690.5356,-4.3,-45,0,0.062,2.21,1151.8292,2.1,26,0,0.062,3.94,34047.8424,3.9,75,0,0.060,1.40,38404.3462,-5.7,-32,0,0.058,0.33,31048.3080,0.3,31,0,0.057,3.11,9690.0701,-0.7,0,0,0.057,1.14,30352.4319,0.9,38,0,0.056,6.00,8504.4538,-2.5,-22,0,0.055,5.47,18018.7615,0.8,25,0,0.055,0.17,-18505.0881,-4.6,-69,0,0.055,0.76,-9129.3422,1.2,8,0,0.054,5.70,7947.1396,-4.4,-44,0,0.053,0.36,5366.358,-3.7,-37,0,0.052,4.01,-68.726,-1.5,-18,0,0.051,2.74,31818.585,-3.5,-13,0,0.051,0.98,16798.206,-2.8,-19,0,0.050,5.94,8293.747,-0.3,0,0,0.049,1.52,15090.215,-4.7,-41,0,0.048,3.46,39309.425,2.4,63,0,0.046,3.21,23942.463,-1.0,9,0,0.046,3.35,7143.070,-0.3,0,0,0.042,3.76,46733.038,-4.1,-7,0,0.042,5.18,8288.351,0,7,0,0.040,3.37,16795.915,0.6,21,0,0.039,4.54,-1776.718,-3.4,-40,0,0.039,0.04,8439.500,-0.3,0,0,0.037,3.91,8479.867,-0.3,0,0,0.037,2.86,38194.797,-1.3,19,0,0.036,1.04,5224.382,0.1,7,0,0.036,3.57,15995.294,3.4,54,0,0.036,5.33,23209.357,1.2,35,0,0.035,1.02,8452.654,-0.3,0,0,0.035,4.31,8294.904,1.8,29,0,0.035,2.76,13066.747,-2.2,-12,0,0.034,6.07,15508.967,-0.4,10,0,0.032,1.89,-17529.021,1.6,0,0,0.031,5.70,41261.905,1.7,56,0,0.031,5.33,30075.655,-7.2,-57,0,0.031,5.97,-40.340,-1.5,-18,0,0.030,2.87,6533.950,0,7,0,0.030,0.36,49171.844,-1.1,30,0,0.030,4.40,47219.364,-0.4,37,0,0.030,0.39,23489.894,-5.0,-38,0,0.029,5.12,21395.439,-0.6,13,0,0.029,2.62,8715.153,-0.3,0,0,0.029,2.94,16826.592,-2.8,-19,0,0.028,6.23,31747.598,-1.6,9,0,0.028,0.43,56176.358,1.1,62,0,0.027,2.32,8792.706,-0.3,0,0,0.026,3.02,14252.363,-0.3,10,0,0.025,5.10,40147.277,-2.0,12,0,0.025,4.59,8433.795,0.9,25,0,0.025,4.95,8433.138,-2.2,-26,0,0.025,1.03,-9338.545,-7.4,-95,0,0.024,0.68,17180.910,5.2,76,0,0.024,3.81,25057.092,2.7,53,0,0.024,6.02,29933.679,-3.4,-13,0,0.024,2.37,-15924.306,-5.2,-76,0,0.024,3.46,8681.372,0,7,0,0.023,2.80,7108.936,0,7,0,0.023,2.17,7109.640,0,7,0,0.023,2.57,-10804.699,-3.0,-44,0,0.022,1.21,6323.246,0,7,0,0.022,3.22,8259.965,0,7,0,0.022,1.97,7106.987,1.5,32,0,0.022,3.00,7111.589,-1.5,-18,0,0.022,1.22,14532.900,-6.5,-63,0,0.021,0.66,5923.672,-1.8,-15,0,0.021,0.69,24047.208,-3.2,-16,0,0.020,5.51,-26415.027,-1.8,-42,0,0.020,3.70,16745.237,-2.8,-19,0,0.020,1.26,7038.300,1.9,29,0,0.020,5.78,6716.267,0,7,0,0.020,3.76,7895.330,0,7,0,0.019,0.44,-121.695,-1.5,-18,0,0.018,2.16,15576.541,-0.9,0,0,0.018,0.09,-17248.484,-4.6,-68,0,0.018,6.14,-7176.862,0.6,0,0,0.018,5.55,50076.923,7.0,125,-1,0.017,2.47,8257.674,3,47,0,0.017,4.20,31609.036,1,38,0,0.017,0.50,175.762,-4,-48,0,0.017,3.20,-2057.255,3,33,0 }; -static long double XL1_1_1[] = { +static constexpr long double XL1_1_1[] = { 0.07430,4.0998,6480.98618,0.005,7,-0.03,0.03043,0.872,7737.59009,-0.05,7,0,0.02229,5.000,15019.22707,-2.80,-19,0.1,0.01999,1.072,23347.91849,-1.28,6,0,0.01869,1.744,-1847.70525,-1.52,-18,0.1,0.01696,5.597,16133.8556,0.91,24,-0.1,0.01623,0.014,9061.7681,-0.67,0,0,0.01419,3.942,733.0767,-2.19,-26,0.1,0.01338,2.370,17390.4595,0.86,25,-0.1,0.01304,5.633,8399.6847,-0.33,3,0,0.01279,0.886,-523.5272,-2.14,-26,0.1,0.01215,3.242,7805.1642,-0.61,-1,0,0.01088,3.686,8435.7674,-2.16,-26,0.1,0.01088,5.853,8431.1650,0.88,25,-0.1,0.00546,4.143,5852.6842,0,7,0,0.00443,0.17,14809.6776,1.5,32,0,0.00342,2.24,8399.7091,-0.3,3,0,0.00330,1.77,16275.8310,-2.9,-19,0,0.00318,4.13,24604.5224,-1.3,6,0,0.00296,0.90,7109.2881,0,7,0,0.00285,3.43,31676.6099,0.2,31,0,0.00207,3.23,16066.2815,1.5,32,0,0.00202,2.07,16833.1453,-1.0,3,0,0.00202,5.10,-33.7871,0.3,4,0,0.00200,1.67,24462.5471,2.4,50,0,0.00198,4.80,-591.1013,-1.6,-18,0,0.00193,1.12,22719.6165,-1.2,6,0,0.00164,5.67,-10176.397,-3.0,-43,0,0.00161,4.73,25719.151,2.4,50,0,0.00158,5.04,14390.925,-2.8,-20,0,0.00149,5.86,13695.049,-2.2,-12,0,0.00135,1.79,-2476.007,-1.5,-18,0,0.00121,1.93,16759.856,2.4,50,0,0.00117,6.04,16764.459,-0.6,0,0,0.00104,1.93,22023.740,-0.7,13,0,0.00085,2.83,30561.981,-3.5,-13,0,0.00079,4.81,-8852.219,-3.7,-51,0,0.00076,1.59,-7595.615,-3.7,-51,0,0.00075,2.91,8433.795,0.9,25,0,0.00075,0.35,8433.138,-2.2,-26,0,0.00073,0.13,70.993,-1.9,-22,0,0.00069,1.70,16728.376,1.2,28,0,0.00068,0.83,8365.892,-0.1,7,0,0.00060,0.20,32933.214,0.2,31,0,0.00060,0.31,8446.085,0,7,0 }; -static long double XL1_1_2[] = { +static constexpr long double XL1_1_2[] = { 0.000220,4.100,6480.9862,0,7,0,0.000101,5.24,8435.7674,-2.2,-26,0,0.000101,4.30,8431.1650,0.9,25,0,0.000090,0.87,7737.5901,0,7,0,0.000060,1.07,23347.9185,-1.3,6,0,0.000060,5.00,15019.2271,-2.8,-19,0,0.000050,1.74,-1847.705,-1.5,-18,0,0.000050,5.60,16133.856,0.9,24,0,0.000050,0.01,9061.768,-0.7,0,0,0.000040,3.24,7805.164,-0.6,0,0,0.000040,3.94,733.077,-2.2,-26,0,0.000040,0.89,-523.527,-2.1,-26,0 }; -static long double* XL1_1[] = { XL1_1_0,XL1_1_1,XL1_1_2 }; +static constexpr const long double* XL1_1[] = { XL1_1_0,XL1_1_1,XL1_1_2 }; -static long double XL1_2_0[] = { +static constexpr long double XL1_2_0[] = { 385000.510,0,0,0,0,0,20905.354,5.4971472,8328.691424623,1.522924,25.0719,-0.12360,3699.111,4.8997864,7214.06286536,-2.184756,-18.860,0.0828,2955.967,0.972156,15542.75428998,-0.66183,6.212,-0.0408,569.925,1.569516,16657.3828492,3.04585,50.14,-0.2472,246.158,5.68582,-1114.6285593,-3.7077,-43.93,0.206,204.586,1.01528,14914.4523348,-0.6352,6.15,-0.035,170.733,3.32771,23871.4457146,0.8611,31.28,-0.164,152.138,4.94291,6585.7609101,-2.1581,-18.92,0.088,129.620,0.74291,-7700.3894694,-1.5496,-25.01,0.118,108.743,5.19847,7771.3771450,-0.3309,3.1,-0.020,104.755,2.31243,8956.993380,1.4963,25.1,-0.129,79.661,5.38293,-8538.240890,2.8030,26.1,-0.118,48.888,6.24006,628.301955,-0.0266,0.1,-0.005,34.783,2.73035,22756.817155,-2.847,-12.6,0.04,30.824,4.0706,16171.056245,-0.688,6.3,-0.05,24.208,1.7151,7842.364821,-2.211,-18.8,0.08,23.210,3.9251,24986.074274,4.569,75.2,-0.37,21.636,0.3748,14428.125731,-4.370,-37.7,0.17,16.675,2.0137,8399.679100,-0.358,3.2,-0.03,14.403,3.3303,-9443.319984,-5.231,-69.0,0.33,12.831,3.3708,23243.143759,0.888,31.2,-0.16,11.650,5.0859,31085.508580,-1.324,12,-0.08,10.445,5.6833,32200.13714,2.384,56,-0.29,10.321,0.8579,-1324.17803,0.618,7,-0.03,10.056,5.7290,-1742.93051,-3.681,-44,0.21,9.884,1.0584,14286.15038,-0.609,6,-0.03,8.752,4.7856,-9652.86945,-0.905,-18,0.09,8.379,5.9845,-557.31428,-1.854,-22,0.10,7.003,4.6705,-16029.08089,-3.072,-50,0.24,6.322,1.2708,16100.06857,1.192,28,-0.14,5.751,4.6680,17285.68480,3.019,50,-0.25,4.950,4.9860,5957.45895,-2.131,-19,0.09,4.421,4.5969,-209.54947,4.326,51,-0.24,4.131,3.2135,7004.51340,2.141,32,-0.16,3.958,2.7735,22128.51520,-2.820,-13,0.05,3.258,0.6735,14985.44001,-2.52,-16,0.1,3.148,0.114,16866.93231,-1.28,-1,0,2.616,0.143,24499.74767,0.83,31,-0.2,2.354,1.672,8470.66678,-2.24,-19,0.1,2.117,0.700,-7072.08751,-1.58,-25,0.1,1.897,0.418,13799.82378,-4.34,-38,0.2,1.739,3.629,-8886.00570,-3.38,-47,0.2,1.571,5.129,30457.20662,-1.30,12,-0.1,1.423,1.158,39414.20000,0.20,37,-0.2,1.419,6.171,23314.13143,-0.99,9,-0.1,1.166,2.269,9585.29534,1.47,25,-0.1,1.117,6.281,33314.76570,6.09,100,-0.5,1.066,6.197,1256.60391,-0.05,0,0,1.059,4.068,8364.73984,-2.18,-19,0.1,0.933,4.369,16728.3705,1.17,28,-0.1,0.862,4.601,6656.7486,-4.04,-41,0.2,0.851,2.800,70.9877,-1.88,-22,0.1,0.849,5.726,31571.8352,2.41,56,-0.3,0.796,5.084,-9095.5552,0.95,4,0,0.779,0.975,-17772.0114,-6.75,-94,0.5,0.774,2.658,15752.3038,-4.99,-45,0.2,0.728,0.266,8326.3902,3.05,50,-0.2,0.683,1.304,8330.9926,0,0,0,0.670,1.756,40528.8286,3.91,81,-0.4,0.658,3.414,22614.8418,0.91,31,-0.2,0.657,0.901,-1952.4800,0.64,7,0,0.598,6.026,8393.1258,-2.18,-19,0.1,0.596,5.014,24080.9952,-3.46,-20,0.1,0.579,5.829,23385.1191,-2.87,-13,0,0.514,4.302,6099.4343,-5.89,-63,0.3,0.508,1.830,14218.5763,-0.04,13,-0.1,0.498,5.242,7143.0752,-0.30,3,0,0.495,3.373,-10071.6219,-5.20,-69,0.3,0.473,2.430,-17981.5609,-2.43,-43,0.2,0.456,4.887,-8294.9344,-1.83,-29,0.1,0.453,0.173,8362.4485,1.21,21,-0.1,0.423,4.489,29970.8800,-5.03,-32,0.1,0.422,2.315,-24357.7723,-4.60,-75,0.4,0.411,1.102,13657.8484,-0.58,6,0,0.410,0.500,8311.7707,-2.18,-19,0.1,0.379,3.626,24428.7600,2.71,53,0,0.355,0.740,25614.3762,4.54,75,0,0.343,5.772,-2371.2325,-3.7,-44,0,0.335,0.857,9166.5428,-2.8,-26,0,0.332,0.444,-8257.7037,-3.4,-47,0,0.323,4.829,-10281.1714,-0.9,-18,0,0.322,5.758,5889.8848,-1.6,-12,0,0.287,0.56,38299.5714,-3.5,-6,0,0.284,5.57,15333.2048,3.7,57,0,0.279,2.82,21500.2132,-2.8,-13,0,0.256,0.72,14357.1381,-2.5,-16,0,0.248,2.20,-7909.9389,2.8,26,0,0.245,1.90,31713.8105,-1.4,12,0,0.237,3.47,15056.4277,-4.4,-38,0,0.213,3.77,15613.7420,-2.5,-16,0,0.213,2.50,32828.4391,2.4,56,0,0.209,3.26,6376.2114,2.2,32,0,0.205,2.93,14967.4158,-0.7,6,0,0.205,2.02,15540.4531,0.9,31,0,0.204,3.06,15545.0555,-2.2,-19,0,0.203,1.20,38785.8980,0.2,37,0,0.201,6.06,6447.1991,0.3,10,0,0.186,6.13,-16238.6304,1.3,1,0,0.183,2.13,21642.1886,-6.6,-57,0,0.169,3.29,-8815.0180,-5.3,-69,0,0.167,1.06,8328.3391,1.5,25,0,0.167,0.51,8329.0437,1.5,25,0,0.167,1.26,14756.7124,-0.7,6,0,0.158,0.07,17495.2343,-1.3,-1,0,0.157,0.57,6638.7244,-2.2,-19,0,0.157,6.21,22685.8295,-1.0,9,0,0.148,5.03,5329.1570,-2.1,-19,0,0.148,4.03,16799.3582,-0.7,6,0,0.145,0.05,7178.0144,1.5,25,0,0.144,5.64,-486.3266,-3.7,-44,0,0.139,3.51,47742.8914,1.7,63,0,0.138,4.07,7935.6705,1.5,25,0,0.136,4.63,-15400.7789,-3.1,-50,0,0.136,3.96,-695.8761,0.6,7,0,0.135,5.95,7211.7617,-0.7,6,0,0.128,5.17,29828.9047,-1.3,12,0,0.127,1.18,7753.3529,1.5,25,0,0.127,0.71,7216.3641,-3.7,-44,0,0.124,5.83,15149.7333,-0.7,6,0,0.121,1.46,8000.1048,-2.2,-19,0,0.120,3.78,8721.7124,1.5,25,0,0.116,5.19,6428.0209,-2.2,-19,0,0.114,2.89,-1185.6162,-1.8,-22,0,0.112,2.85,15542.4020,-0.7,6,0,0.112,2.23,15543.1066,-0.7,6,0,0.110,0.51,7213.7105,-2.2,-19,0,0.110,6.15,7214.4152,-2.2,-19,0,0.110,1.31,15471.7666,1.2,28,0,0.109,2.46,141.9754,-3.8,-44,0,0.108,0.46,13171.5218,-4.3,-38,0,0.108,6.13,23942.4334,-1.0,9,0,0.107,3.15,15508.9972,-0.4,10,0,0.105,0.39,8904.030,1.5,25,0,0.105,4.93,14392.077,-0.7,6,0,0.103,2.47,25195.624,0.2,24,0,0.101,3.48,6821.042,-2.2,-19,0,0.099,4.37,7149.629,1.5,25,0,0.099,1.27,-17214.697,-4.9,-72,0,0.096,1.93,15576.511,-1.0,0,0,0.086,2.92,46628.263,-2.0,19,0,0.085,6.22,8504.484,-2.5,-22,0,0.080,3.40,-2438.807,-3.1,-37,0,0.080,1.17,8786.147,-2.2,-19,0,0.077,3.61,7230.984,1.5,25,0,0.071,0.28,8315.574,-2.2,-19,0,0.067,4.53,29342.578,-5.0,-32,0,0.065,2.24,31642.823,0.5,34,0,0.063,5.80,8329.403,1.5,25,0,0.063,2.05,8327.980,1.5,25,0,0.062,0.08,8346.716,-0.3,0,0,0.061,4.85,36.048,-3.7,-44,0,0.061,2.58,6063.386,-2.2,-19,0,0.061,4.30,-766.864,2.5,29,0,0.060,3.01,8322.132,-0.3,0,0,0.059,0.44,25057.062,2.7,53,0,0.059,0.31,8288.877,1.5,25,0,0.059,2.35,41643.457,7.6,125,-1,0.059,1.26,8368.506,1.5,25,0,0.058,1.80,39900.527,3.9,81,0,0.058,1.87,13590.274,0,13,0,0.057,0.47,14954.262,-0.7,6,0,0.057,6.20,8294.910,1.8,29,0,0.056,4.63,-8362.473,-1.2,-21,0,0.055,2.86,8170.957,1.5,25,0,0.055,0.03,7632.815,2.1,32,0,0.053,0.80,7180.306,-1.9,-15,0,0.053,4.64,6028.447,-4.0,-41,0,0.053,4.57,15385.020,-0.7,6,0,0.052,0.60,37671.269,-3.5,-6,0,0.052,4.99,8486.426,1.5,25,0,0.051,4.62,17913.987,3.0,50,0,0.050,1.64,837.851,-4.4,-51,0,0.049,5.79,7542.649,1.5,25,0,0.049,2.06,9114.733,1.5,25,0,0.049,2.21,7056.329,-2.2,-19,0,0.049,4.90,7214.063,-2.2,-19,0,0.048,5.39,-1671.943,-5.6,-66,0,0.047,4.90,-26100.703,-8.3,-119,1,0.047,1.60,-9024.567,-0.9,-18,0,0.046,1.16,7161.094,-2.2,-19,0,0.046,5.77,30943.533,2.4,56,0,0.046,2.43,22199.503,-4.7,-35,0,0.046,3.16,14991.999,-0.7,6,0,0.044,4.11,48857.520,5.4,106,-1,0.044,4.39,6625.570,-2.2,-19,0,0.044,6.06,7789.401,-2.2,-19,0,0.043,0.14,16693.431,-0.7,6,0,0.043,4.50,15020.385,-0.7,6,0,0.043,4.35,5471.132,-5.9,-63,0,0.043,4.32,575.338,0,0,0,0.043,5.43,7267.032,-2.2,-19,0,0.043,3.82,16328.796,-0.7,6,0,0.042,2.73,-17424.247,-0.6,-21,0,0.041,3.60,15489.785,-0.7,6,0,0.040,2.62,16655.082,4.6,75,0,0.040,4.23,8351.233,-2.2,-19,0,0.039,0.66,-6443.786,-1.6,-25,0,0.039,2.13,16118.093,-0.7,6,0,0.039,5.86,7247.820,-2.5,-23,0,0.038,4.56,7285.051,-4.1,-41,0,0.038,2.59,9179.168,-2.2,-19,0,0.038,1.42,393.021,0,0,0,0.038,4.94,8381.661,1.5,25,0,0.037,5.06,23452.693,-3.4,-20,0,0.037,5.11,9027.981,-0.4,0,0,0.037,4.98,7740.199,1.5,25,0,0.037,3.66,16659.684,1.5,25,0,0.037,2.89,8275.722,1.5,25,0,0.037,4.26,40042.502,0.2,38,0,0.036,1.95,8326.062,1.5,25,0,0.036,5.90,8331.321,1.5,25,0,0.035,1.33,15595.723,-0.7,6,0,0.035,1.39,7777.936,2,25,0,0.035,0.80,6663.308,-2,-19,0,0.035,0.53,64.434,-4,-44,0,0.034,2.15,6691.693,-2,-19,0,0.034,1.90,-8467.253,1,0,0,0.033,2.83,7806.322,2,25,0,0.033,4.67,9479.368,2,25,0,0.033,1.41,418.752,4,51,0 }; -static long double XL1_2_1[] = { +static constexpr long double XL1_2_1[] = { 0.5139,4.1569,14914.452335,-0.635,6.2,-0.04,0.3824,1.8013,6585.760910,-2.158,-19,0.09,0.3265,2.3987,7700.38947,1.550,25,-0.12,0.2640,5.4540,8956.99338,1.496,25,-0.13,0.1230,3.0985,628.30196,-0.027,0,0,0.0775,0.929,16171.05625,-0.69,6,0,0.0607,4.857,7842.36482,-2.21,-19,0.1,0.0497,4.200,14286.15038,-0.61,6,0,0.0419,5.155,8399.67910,-0.36,3,0,0.0322,0.229,23243.1438,0.89,31,-0.2,0.0253,2.587,-1742.9305,-3.68,-44,0.2,0.0249,1.844,5957.4590,-2.13,-19,0.1,0.0176,4.754,16029.0809,3.07,50,-0.2,0.0145,1.526,17285.6848,3.02,50,-0.3,0.0137,1.004,15542.7543,-0.66,6,0,0.0126,5.010,8326.3902,3.05,50,0,0.0119,4.814,8470.6668,-2.24,-19,0,0.0118,2.843,8330.9926,0,0,0,0.0107,2.442,7072.0875,1.6,25,0,0.0099,5.92,22128.5152,-2.8,-13,0,0.0066,3.28,24499.7477,0.8,31,0,0.0065,4.90,7214.0629,-2.2,-19,0,0.0059,5.41,9585.2953,1.5,25,0,0.0054,3.06,1256.6039,-0.1,0,0,0.0052,2.50,8328.3391,1.5,25,0,0.0052,5.35,8329.0437,1.5,25,0,0.0048,3.56,13799.8238,-4.3,-38,0,0.0039,1.99,30457.2066,-1.3,12,0,0.0035,0.49,15540.4531,0.9,31,0,0.0035,4.60,15545.0555,-2.2,-19,0,0.0033,0.27,22614.842,0.9,31,0,0.0031,4.24,13657.848,-0.6,6,0,0.0023,1.23,16728.371,1.2,28,0,0.0023,5.50,8328.691,1.5,25,0,0.0023,0,0,0,0,0,0.0023,4.41,7211.762,-0.7,6,0,0.0022,1.39,8311.771,-2.2,-19,0,0.0022,2.25,7216.364,-3.7,-44,0,0.0021,5.94,70.988,-1.9,-22,0,0.0021,2.58,31571.835,2.4,56,0,0.0017,2.63,-2371.232,-3.7,-44,0,0.0016,4.04,-1952.480,0.6,7,0,0.0015,4.23,8329.403,1.5,25,0,0.0015,3.63,8327.980,1.5,25,0,0.0015,2.69,23385.119,-2.9,-13,0,0.0014,5.96,21500.213,-2.8,-13,0,0.0013,4.06,15542.402,-0.7,6,0,0.0013,1.02,15543.107,-0.7,6,0,0.0013,2.10,7143.075,-0.3,0,0,0.0012,0.23,-10071.622,-5.2,-69,0,0.0011,3.33,23871.446,1,31,0,0.0011,1.89,5329.157,-2,-19,0 }; -static long double XL1_2_2[] = { +static constexpr long double XL1_2_2[] = { 0.001490,4.157,14914.45233,-0.64,6,0,0.001110,1.801,6585.7609,-2.16,-19,0.1,0.000950,2.399,7700.3895,1.55,25,-0.1,0.000770,5.454,8956.9934,1.50,25,-0.1,0.000360,3.098,628.3020,0,0,0,0.000230,0.93,16171.0562,-0.7,6,0,0.000180,4.86,7842.3648,-2.2,-19,0,0.000140,4.20,14286.1504,-0.6,6,0,0.000120,5.16,8399.6791,-0.4,0,0,0.000116,3.46,8326.390,3.0,50,0,0.000109,4.39,8330.993,0,0,0,0.000090,0.23,23243.144,0.9,31,0 }; -static long double* XL1_2[] = { XL1_2_0,XL1_2_1,XL1_2_2 }; +static constexpr const long double* XL1_2[] = { XL1_2_0,XL1_2_1,XL1_2_2 }; -static long double** XL1[] = { XL1_0,XL1_1,XL1_2 }; +static constexpr const long double* const* XL1[] = { XL1_0,XL1_1,XL1_2 }; //=================================行星星历========================================= //================================================================================== //行星星历修正表 -static long double XL0_xzb[] = { +static constexpr long double XL0_xzb[] = { //经(角秒),纬(角秒), 距(10-6AU) -0.08631, +0.00039, -0.00008, //水星 -0.07447, +0.00006, +0.00017, //金星 @@ -727,7 +729,7 @@ static long double XL0_xzb[] = { long double XL0_calc(int xt, int zn, long double t, int n) { t /= 10; //转为儒略千年数 long double v = 0, tn = 1, c = 0; - long double* F = XL0[xt]; + const long double* F = XL0[xt]; long double n1, n2, N; long double n0; int pn = zn * 6 + 1; @@ -812,7 +814,7 @@ Vector3 e_coord(int t, int n1, int n2, int n3) { //================================================================================== //计算月亮 long double XL1_calc(int zn, long double t, int n) { - long double** ob = XL1[zn]; + const long double* const* ob = XL1[zn]; long double F, N, v = 0, tn = 1, c = 0; long double t2 = t*t, t3 = t2*t, t4 = t3*t, t5 = t4*t, tx = t - 10; if (zn == 0) { @@ -823,7 +825,7 @@ long double XL1_calc(int zn, long double t, int n) { t2 /= 1e4, t3 /= 1e8, t4 /= 1e8; n *= 6; if (n < 0) n = 3/*ob[0].length*/; for (int i = 0; i < 3/*ob.length*/; i++, tn *= t) { - long double* F = ob[i]; + const long double* F = ob[i]; int F_len = 0; if (zn == 0 && i == 0) {