File indexing completed on 2023-03-17 10:49:38
0001
0002
0003
0004
0005
0006 #include <string>
0007
0008 #define DT_Cell_Width 42
0009 #define DT_Cell_HalfWidth 21
0010 #define N_Func 8
0011
0012
0013 const double THIS_CLASS::alpha_value[N_alpha] = {-45.0, -30.0, -15.0, -10.0, -5.0, 0.0, 5.0, 10.0, 15.0, 30.0, 45.0};
0014 const double THIS_CLASS::By_value[N_By] = {0.0, 0.1, 0.2, 0.35, 0.75};
0015 const double THIS_CLASS::Bz_value[N_Bz] = {0.0, 0.05, 0.1, 0.2, 0.4};
0016
0017
0018 const double THIS_CLASS::fun_sigma_t[N_alpha][N_By][N_Bz][N_Sigma_t] = {
0019 {{
0020 {7.25420, -3.08050, 0.46488, 1.81029, 0.22124, 4.50008, 0.29247},
0021 {6.98502, -2.84290, 0.42744, 1.92538, 0.20497, 4.50008, 0.27317},
0022 {10.00716, -4.54827, 0.63584, 1.01455, 0.31135, 4.49996, 0.25919},
0023 {7.40564, -3.11008, 0.46159, 1.72352, 0.22974, 4.49991, 0.29231},
0024 {7.41538, -3.07862, 0.47015, 1.25711, 0.34153, 3.99995, 0.31115}
0025 },
0026 {
0027 {7.48947, -3.20323, 0.48513, 2.12870, 0.17112, 4.49993, 0.22677},
0028 {9.93449, -4.70334, 0.67606, 1.47807, 0.21810, 4.49990, 0.23184},
0029 {6.95588, -2.54184, 0.34611, 1.50927, 0.22600, 4.50004, 0.23732},
0030 {7.50147, -2.92164, 0.40582, 1.53476, 0.23048, 4.50010, 0.24448},
0031 {7.65382, -2.29728, 0.15583, -1.22192, 0.54502, 3.99993, 0.32438}
0032 },
0033 {
0034 {8.29107, -3.61484, 0.52689, 2.19666, 0.11046, 4.49993, 0.18103},
0035 {7.77512, -3.23769, 0.46742, 2.07013, 0.13347, 4.50002, 0.18432},
0036 {8.54032, -3.51374, 0.49194, 2.00816, 0.15162, 4.50010, 0.18665},
0037 {8.29970, -3.60025, 0.51938, 1.87455, 0.16481, 4.50010, 0.18048},
0038 {8.35768, -3.40525, 0.40707, -0.66094, 0.47768, 3.99996, 0.20400}
0039 },
0040 {
0041 {6.82103, -2.65327, 0.37716, 2.19336, 0.07232, 4.50010, 0.12110},
0042 {8.69363, -3.93645, 0.57001, 2.12994, 0.08724, 4.50010, 0.12053},
0043 {7.55685, -2.76427, 0.35234, 1.88283, 0.08217, 4.50010, 0.11788},
0044 {6.69174, -2.40626, 0.33766, 2.45139, 0.05553, 4.50002, 0.11145},
0045 {6.29073, -1.46704, 0.09409, -2.27504, 0.52510, 6.00010, 0.18376}
0046 },
0047 {
0048 {6.77220, -2.38316, 0.31502, 2.22866, 0.04411, 4.50009, 0.08326},
0049 {7.64694, -2.89939, 0.39969, 2.72984, -0.00809, 4.50009, 0.14289},
0050 {9.47706, -4.20158, 0.56752, 1.65336, 0.09090, 4.50009, 0.09482},
0051 {9.11429, -4.07381, 0.59694, 2.98517, -0.02553, 4.50006, 0.09259},
0052 {7.93289, -2.85892, 0.30676, 0.51938, 0.22149, 3.99994, 0.09805}
0053 }},
0054 {{
0055 {8.59444, -4.91290, 0.99435, 2.22515, 0.14606, 2.80010, 0.21855},
0056 {8.16619, -4.28307, 0.79255, 1.95239, 0.15529, 2.79990, 0.20993},
0057 {8.47585, -4.69255, 0.89988, 1.95479, 0.15606, 2.79998, 0.21459},
0058 {7.73674, -3.74746, 0.67395, 2.05999, 0.16700, 2.79993, 0.21755},
0059 {7.98857, -3.29435, 0.41943, 1.26588, 0.28097, 2.80010, 0.31737}
0060 },
0061 {
0062 {8.78639, -4.89428, 0.93054, 1.99687, 0.13607, 2.80006, 0.18664},
0063 {6.34099, -2.02234, 0.21986, 2.01896, 0.13688, 2.79995, 0.19052},
0064 {8.16956, -3.93558, 0.65882, 1.88910, 0.15213, 2.80001, 0.19596},
0065 {6.59004, -2.30020, 0.27184, 1.80319, 0.17055, 2.80001, 0.19642},
0066 {9.03990, -4.79858, 0.86972, 1.89820, 0.18723, 2.80007, 0.23159}
0067 },
0068 {
0069 {7.26623, -3.40569, 0.59645, 2.10239, 0.10859, 2.80001, 0.15642},
0070 {8.20138, -3.94438, 0.66825, 2.09862, 0.10628, 2.79990, 0.15313},
0071 {9.24647, -5.25851, 1.02390, 2.29291, 0.09183, 2.80010, 0.16043},
0072 {8.61176, -4.30217, 0.75437, 2.15256, 0.11691, 2.80010, 0.16230},
0073 {8.10538, -4.59691, 0.92371, 2.02219, 0.14443, 2.59990, 0.17087}
0074 },
0075 {
0076 {9.53528, -6.05081, 1.25138, 2.29725, 0.03810, 2.80010, 0.11116},
0077 {8.07220, -4.67365, 0.95105, 2.31746, 0.04458, 2.80004, 0.11271},
0078 {8.01217, -4.09254, 0.73480, 2.19118, 0.04383, 2.79990, 0.11033},
0079 {7.49045, -3.42345, 0.54653, 1.99613, 0.06909, 2.80010, 0.10986},
0080 {8.46746, -4.01858, 0.64092, 2.00464, 0.08414, 2.80010, 0.12116}
0081 },
0082 {
0083 {8.34920, -4.33142, 0.75810, 2.11976, 0.01604, 2.80009, 0.08222},
0084 {7.79804, -3.94553, 0.68838, 2.11228, 0.01255, 2.80009, 0.08356},
0085 {8.75836, -5.25018, 1.03830, 2.10694, 0.03257, 2.79998, 0.08171},
0086 {7.85925, -3.97499, 0.68800, 2.05263, 0.02522, 2.79990, 0.08485},
0087 {8.07694, -4.14646, 0.70264, 1.82045, 0.05538, 2.80010, 0.09312}
0088 }},
0089 {{
0090 {8.54140, -5.33753, 1.13326, 2.16901, 0.11148, 2.80007, 0.17939},
0091 {6.91306, -2.93120, 0.46676, 2.04193, 0.11540, 2.80010, 0.17867},
0092 {7.19376, -4.19054, 0.90023, 2.20490, 0.11187, 2.80009, 0.16768},
0093 {6.85983, -3.30192, 0.58920, 1.82812, 0.14489, 2.79990, 0.18139},
0094 {7.07302, -3.37384, 0.56852, 1.46977, 0.21917, 2.80010, 0.19995}
0095 },
0096 {
0097 {7.31351, -3.63796, 0.67748, 2.16253, 0.09861, 2.80010, 0.16769},
0098 {7.15950, -3.59563, 0.68062, 2.13288, 0.10533, 2.79991, 0.16267},
0099 {7.93335, -4.88787, 1.04853, 2.18375, 0.10148, 2.80010, 0.16538},
0100 {7.25838, -3.76117, 0.72176, 2.01657, 0.13182, 2.79999, 0.15544},
0101 {8.04179, -4.81808, 0.98762, 1.74107, 0.17308, 2.59991, 0.18045}
0102 },
0103 {
0104 {7.41676, -4.00759, 0.79550, 2.22111, 0.07539, 2.80006, 0.15358},
0105 {6.68254, -3.20579, 0.58131, 2.00090, 0.09389, 2.79990, 0.14834},
0106 {7.63035, -4.40983, 0.92039, 2.30058, 0.07072, 2.79990, 0.13994},
0107 {6.18931, -2.99451, 0.57544, 2.04769, 0.09588, 2.80004, 0.14658},
0108 {7.38817, -3.84969, 0.70836, 1.79603, 0.14286, 2.60009, 0.15869}
0109 },
0110 {
0111 {6.70558, -3.33559, 0.62868, 2.21526, 0.02841, 2.80000, 0.11313},
0112 {5.66125, -1.95349, 0.27240, 2.26418, 0.02248, 2.79997, 0.11792},
0113 {7.32063, -3.79229, 0.71011, 2.14548, 0.04430, 2.80003, 0.11219},
0114 {7.41767, -4.36644, 0.88966, 2.04033, 0.04511, 2.80009, 0.10914},
0115 {6.52815, -2.99489, 0.47376, 1.71285, 0.08890, 2.60010, 0.11686}
0116 },
0117 {
0118 {6.64680, -3.11440, 0.52792, 2.01627, 0.01754, 2.80010, 0.08385},
0119 {6.43917, -3.16823, 0.57605, 2.06815, 0.00577, 2.79991, 0.09070},
0120 {7.32471, -4.13910, 0.82399, 2.22934, -0.01217, 2.79990, 0.08865},
0121 {6.86546, -3.34971, 0.58154, 1.97254, 0.02607, 2.79990, 0.08532},
0122 {7.12725, -3.19233, 0.40115, 1.20933, 0.12674, 2.60010, 0.08715}
0123 }},
0124 {{
0125 {7.18428, -3.47064, 0.64078, 2.19094, 0.10689, 2.80000, 0.16819},
0126 {7.59929, -4.34957, 0.91215, 2.31295, 0.09244, 2.80009, 0.17530},
0127 {6.76037, -2.84581, 0.48647, 2.33857, 0.09552, 2.79990, 0.16645},
0128 {7.34107, -4.18265, 0.86789, 2.11106, 0.11531, 2.80006, 0.17409},
0129 {6.78312, -2.82402, 0.39012, 1.50821, 0.21907, 2.60010, 0.17782}
0130 },
0131 {
0132 {6.91298, -3.74235, 0.75177, 2.03707, 0.10403, 2.80010, 0.16756},
0133 {6.41571, -2.72690, 0.45028, 2.00230, 0.11011, 2.80000, 0.15512},
0134 {7.69202, -4.22112, 0.84549, 2.23042, 0.09682, 2.80006, 0.15674},
0135 {8.03768, -4.96479, 1.06359, 2.16565, 0.11044, 2.80010, 0.16189},
0136 {7.32495, -3.78617, 0.67971, 1.58981, 0.18692, 2.59992, 0.17051}
0137 },
0138 {
0139 {6.77637, -3.42160, 0.66783, 2.17672, 0.09106, 2.80008, 0.15422},
0140 {6.77134, -3.53231, 0.71292, 2.26334, 0.07386, 2.79990, 0.14583},
0141 {8.00132, -4.77046, 1.00922, 2.35069, 0.07343, 2.79996, 0.13731},
0142 {7.47097, -4.82274, 1.08190, 2.22164, 0.08133, 2.79998, 0.14638},
0143 {6.66770, -2.53697, 0.28630, 1.18725, 0.22202, 2.79993, 0.15633}
0144 },
0145 {
0146 {8.19810, -4.83876, 0.99229, 2.36668, 0.02228, 2.79990, 0.11407},
0147 {7.56971, -4.04994, 0.78448, 2.30421, 0.02715, 2.80000, 0.11271},
0148 {7.27314, -4.00705, 0.81056, 2.32192, 0.03082, 2.80009, 0.11702},
0149 {6.17742, -2.74106, 0.48644, 2.22372, 0.03300, 2.79991, 0.10818},
0150 {7.21066, -3.27691, 0.47599, 1.36743, 0.14271, 2.80010, 0.11272}
0151 },
0152 {
0153 {6.84153, -3.31827, 0.58621, 2.11785, 0.01014, 2.80009, 0.08464},
0154 {7.24846, -4.10807, 0.83527, 2.31449, -0.00718, 2.80001, 0.08090},
0155 {8.05041, -4.64851, 0.91187, 2.20971, -0.00930, 2.79999, 0.08469},
0156 {7.70961, -4.33346, 0.84298, 2.14248, 0.01513, 2.79990, 0.08472},
0157 {7.19549, -3.40366, 0.50023, 1.41774, 0.11910, 2.60010, 0.07838}
0158 }},
0159 {{
0160 {6.55391, -2.97773, 0.55270, 2.28945, 0.09285, 2.80000, 0.15707},
0161 {7.62218, -4.26494, 0.88392, 2.37589, 0.08371, 2.79991, 0.16276},
0162 {7.25384, -3.89556, 0.79207, 2.32430, 0.08279, 2.80010, 0.15489},
0163 {6.56977, -3.16429, 0.58639, 2.00002, 0.10966, 2.79994, 0.16784},
0164 {6.04360, -2.06985, 0.22144, 1.36349, 0.22166, 2.79999, 0.17847}
0165 },
0166 {
0167 {7.48674, -4.38454, 0.92952, 2.25216, 0.08759, 2.79990, 0.14880},
0168 {8.60581, -5.88464, 1.33756, 2.38645, 0.08177, 2.80010, 0.15032},
0169 {7.18669, -3.95488, 0.81386, 2.27392, 0.07849, 2.79999, 0.14950},
0170 {6.84775, -3.52471, 0.69054, 2.10505, 0.10264, 2.80010, 0.15606},
0171 {6.13960, -2.28734, 0.26678, 1.49578, 0.19234, 2.60010, 0.16289}
0172 },
0173 {
0174 {8.35908, -4.87471, 0.97684, 2.14032, 0.08141, 2.79995, 0.14016},
0175 {7.05284, -3.81763, 0.79392, 2.40125, 0.06664, 2.80005, 0.13844},
0176 {7.32238, -3.81951, 0.74608, 2.25234, 0.08025, 2.80010, 0.13521},
0177 {7.02121, -3.63407, 0.70648, 2.16868, 0.07712, 2.80009, 0.14141},
0178 {6.28981, -2.62387, 0.39437, 1.55544, 0.17119, 2.80010, 0.15216}
0179 },
0180 {
0181 {6.95239, -3.75384, 0.75297, 2.27887, 0.02358, 2.79993, 0.10714},
0182 {6.46023, -2.84946, 0.50038, 2.35117, 0.01913, 2.79990, 0.11327},
0183 {7.49315, -4.20058, 0.86046, 2.40293, 0.02667, 2.80010, 0.11210},
0184 {7.98945, -4.33628, 0.82654, 2.24178, 0.03078, 2.80001, 0.10961},
0185 {6.79230, -3.03782, 0.45099, 1.46639, 0.12708, 2.79990, 0.11422}
0186 },
0187 {
0188 {7.46283, -3.84903, 0.71410, 2.28661, -0.00090, 2.79999, 0.08285},
0189 {5.99957, -2.32735, 0.33876, 2.13896, 0.00000, 2.79991, 0.08179},
0190 {7.11644, -3.41536, 0.58574, 2.17300, -0.00977, 2.79995, 0.09535},
0191 {7.56415, -4.17145, 0.79503, 2.10366, 0.00481, 2.79996, 0.08116},
0192 {7.18873, -3.42747, 0.47952, 1.07796, 0.16962, 2.59990, 0.08018}
0193 }},
0194 {{
0195 {7.98180, -4.85679, 1.03029, 2.19279, 0.09555, 2.80010, 0.16261},
0196 {7.60958, -4.42303, 0.91362, 2.12617, 0.09344, 2.79993, 0.16511},
0197 {7.29753, -3.94794, 0.78945, 2.13907, 0.10481, 2.79990, 0.15805},
0198 {7.43079, -3.67648, 0.67564, 2.11062, 0.11538, 2.79996, 0.16186},
0199 {8.06021, -4.26981, 0.75816, 1.39084, 0.23495, 2.79994, 0.16739}
0200 },
0201 {
0202 {6.80429, -3.42012, 0.66774, 2.22127, 0.08634, 2.79991, 0.15513},
0203 {6.54533, -3.36609, 0.66492, 2.05348, 0.09991, 2.80003, 0.14852},
0204 {7.08620, -3.17147, 0.53220, 2.11519, 0.09405, 2.79999, 0.14803},
0205 {6.73442, -3.25563, 0.61321, 2.11594, 0.11081, 2.79991, 0.16024},
0206 {6.30015, -2.15893, 0.21754, 1.36802, 0.21162, 2.80010, 0.16166}
0207 },
0208 {
0209 {6.60121, -3.33633, 0.65252, 2.15351, 0.07921, 2.80010, 0.14861},
0210 {6.58344, -3.04749, 0.56727, 2.33110, 0.05957, 2.79997, 0.13784},
0211 {7.21184, -3.54001, 0.65128, 2.18391, 0.07926, 2.80005, 0.14291},
0212 {6.38631, -3.17729, 0.61632, 2.05092, 0.09676, 2.79996, 0.14055},
0213 {6.11522, -2.11577, 0.19954, 1.10735, 0.23149, 2.79992, 0.14813}
0214 },
0215 {
0216 {6.40894, -2.59342, 0.40758, 2.28725, 0.01983, 2.80002, 0.11361},
0217 {6.86887, -2.76296, 0.41464, 2.31120, 0.02576, 2.80010, 0.11743},
0218 {7.34701, -3.97847, 0.79507, 2.34952, 0.03257, 2.80010, 0.11399},
0219 {6.37938, -2.81257, 0.48599, 2.21807, 0.03440, 2.79990, 0.10843},
0220 {6.58554, -2.99397, 0.45420, 1.28565, 0.17057, 2.80010, 0.10285}
0221 },
0222 {
0223 {6.96818, -3.67428, 0.70484, 2.18542, 0.00739, 2.80000, 0.08580},
0224 {6.83136, -3.23506, 0.56833, 2.22915, -0.00008, 2.80004, 0.08405},
0225 {6.50178, -2.97001, 0.49660, 2.08801, -0.00320, 2.80006, 0.08169},
0226 {6.65723, -3.38308, 0.59993, 1.77255, 0.04124, 2.80001, 0.08225},
0227 {6.39039, -2.66900, 0.30346, 0.70375, 0.21160, 2.80005, 0.07824}
0228 }},
0229 {{
0230 {6.68432, -3.00553, 0.54013, 2.25143, 0.09002, 2.79994, 0.15804},
0231 {6.92213, -3.85185, 0.79089, 2.06196, 0.09843, 2.79995, 0.16038},
0232 {7.58731, -4.27239, 0.86720, 2.14776, 0.09846, 2.80006, 0.15508},
0233 {7.10091, -3.80106, 0.74132, 1.91164, 0.12795, 2.80010, 0.16290},
0234 {6.64913, -2.67422, 0.35492, 1.24380, 0.25005, 2.79991, 0.16464}
0235 },
0236 {
0237 {7.94828, -4.72660, 0.99189, 2.26144, 0.08173, 2.80005, 0.15281},
0238 {5.49713, -2.10202, 0.34600, 2.05064, 0.09765, 2.80009, 0.15151},
0239 {6.78557, -3.27153, 0.60080, 2.07657, 0.09250, 2.79991, 0.14860},
0240 {7.12063, -3.52860, 0.65333, 2.00901, 0.12630, 2.80010, 0.15715},
0241 {7.17222, -3.57679, 0.59248, 1.14541, 0.23459, 2.80005, 0.15447}
0242 },
0243 {
0244 {7.67219, -4.70318, 1.00578, 2.14717, 0.08623, 2.80005, 0.14679},
0245 {6.94913, -3.88288, 0.81624, 2.28334, 0.06893, 2.79990, 0.14403},
0246 {6.55533, -3.54202, 0.71965, 2.04901, 0.08240, 2.80000, 0.14430},
0247 {6.88925, -3.44327, 0.64162, 1.99928, 0.09969, 2.79998, 0.13793},
0248 {7.17461, -3.47910, 0.56914, 1.27484, 0.22154, 2.80010, 0.14841}
0249 },
0250 {
0251 {5.83610, -2.46512, 0.42019, 2.16246, 0.02343, 2.79990, 0.11309},
0252 {7.68082, -4.55876, 0.93891, 2.18821, 0.03186, 2.80006, 0.11422},
0253 {7.73745, -4.36969, 0.86876, 2.19763, 0.04134, 2.79990, 0.11584},
0254 {7.97590, -4.70665, 0.94983, 2.11618, 0.04561, 2.79992, 0.10935},
0255 {7.14103, -3.64344, 0.59057, 1.01841, 0.19682, 2.79995, 0.10585}
0256 },
0257 {
0258 {7.73726, -4.44084, 0.87061, 2.10364, 0.00887, 2.80007, 0.08368},
0259 {6.72884, -3.36015, 0.61874, 2.17029, 0.00038, 2.80006, 0.08345},
0260 {6.34564, -3.14295, 0.58239, 2.14693, -0.01271, 2.80002, 0.08559},
0261 {6.51283, -3.11611, 0.54215, 1.93702, 0.03613, 2.80000, 0.08030},
0262 {6.59745, -2.84285, 0.30805, 0.33021, 0.25794, 2.80010, 0.07656}
0263 }},
0264 {{
0265 {7.55691, -4.28600, 0.90558, 2.42270, 0.08330, 2.80010, 0.16781},
0266 {7.70965, -4.33730, 0.87155, 2.11920, 0.09963, 2.79994, 0.16855},
0267 {7.47993, -4.11943, 0.81825, 2.01664, 0.12283, 2.79992, 0.15825},
0268 {7.00418, -3.52057, 0.67631, 2.08284, 0.13071, 2.79993, 0.16020},
0269 {6.74889, -2.56526, 0.28031, 0.95001, 0.29060, 2.80008, 0.16130}
0270 },
0271 {
0272 {8.15466, -5.03050, 1.07335, 2.23570, 0.08877, 2.79990, 0.16235},
0273 {7.70730, -4.41389, 0.90728, 2.15943, 0.10786, 2.79991, 0.15179},
0274 {7.26874, -3.82503, 0.73894, 2.05260, 0.10692, 2.80005, 0.15096},
0275 {7.83856, -4.36245, 0.84031, 1.77960, 0.15432, 2.80004, 0.15892},
0276 {6.72377, -2.27576, 0.16418, 0.82935, 0.28909, 2.79999, 0.15494}
0277 },
0278 {
0279 {7.28160, -3.92594, 0.79075, 2.26895, 0.07837, 2.79992, 0.14775},
0280 {7.94302, -4.52139, 0.91874, 2.29436, 0.06848, 2.80010, 0.14562},
0281 {7.52120, -3.82083, 0.71760, 2.19742, 0.08981, 2.80002, 0.13929},
0282 {7.72852, -4.44494, 0.87556, 1.79192, 0.12683, 2.79990, 0.14177},
0283 {7.59736, -3.96724, 0.68235, 1.16660, 0.24004, 2.79995, 0.14353}
0284 },
0285 {
0286 {7.35429, -3.78237, 0.69657, 2.12238, 0.03656, 2.80001, 0.11517},
0287 {7.02561, -3.59828, 0.69462, 2.31339, 0.02960, 2.80010, 0.11705},
0288 {6.70110, -3.13498, 0.56721, 2.23232, 0.04920, 2.79998, 0.11507},
0289 {8.43041, -4.81248, 0.92043, 1.97603, 0.06984, 2.79992, 0.11032},
0290 {7.43659, -3.28730, 0.41155, 0.77136, 0.24544, 2.80010, 0.09834}
0291 },
0292 {
0293 {6.42423, -2.90385, 0.51229, 2.32082, -0.00393, 2.79995, 0.08435},
0294 {6.37745, -2.69164, 0.43057, 2.18191, 0.01235, 2.80000, 0.08544},
0295 {7.12730, -3.82011, 0.74152, 2.22022, 0.00866, 2.79993, 0.08337},
0296 {6.97352, -3.39543, 0.55754, 1.60671, 0.08241, 2.80004, 0.08212},
0297 {7.36500, -2.62885, 0.12299, 0.13276, 0.29851, 2.79993, 0.08268}
0298 }},
0299 {{
0300 {7.11858, -4.01524, 0.85344, 2.28403, 0.10101, 2.79999, 0.18028},
0301 {6.92881, -3.79857, 0.78555, 2.14119, 0.11084, 2.80007, 0.16499},
0302 {9.55209, -6.38646, 1.39293, 2.31507, 0.09838, 2.79995, 0.15976},
0303 {8.06697, -4.35449, 0.82641, 1.97987, 0.13341, 2.79991, 0.16125},
0304 {7.33962, -3.39851, 0.46734, 0.58725, 0.32155, 2.80010, 0.16280}
0305 },
0306 {
0307 {7.49545, -3.65498, 0.66863, 2.21891, 0.10166, 2.79994, 0.15584},
0308 {6.76511, -3.37875, 0.66014, 2.17580, 0.10867, 2.79990, 0.15302},
0309 {6.76327, -3.23094, 0.59525, 2.12115, 0.09367, 2.79999, 0.15463},
0310 {6.97946, -3.83519, 0.77808, 1.95240, 0.13880, 2.79996, 0.16137},
0311 {7.04078, -2.74109, 0.27586, 0.67230, 0.30580, 2.79994, 0.15234}
0312 },
0313 {
0314 {6.43560, -3.09773, 0.60672, 2.25414, 0.09445, 2.80000, 0.13933},
0315 {6.19813, -2.73632, 0.50607, 2.27969, 0.08012, 2.80009, 0.13527},
0316 {7.66992, -4.51264, 0.95214, 2.26724, 0.08288, 2.80003, 0.13761},
0317 {6.71333, -3.48758, 0.68269, 2.01575, 0.10163, 2.79990, 0.14493},
0318 {6.63457, -2.38663, 0.19267, 0.64113, 0.29342, 2.79991, 0.15326}
0319 },
0320 {
0321 {5.80979, -2.12988, 0.31218, 2.18756, 0.03787, 2.80007, 0.10674},
0322 {7.05637, -3.66210, 0.69512, 2.14934, 0.03674, 2.79990, 0.11239},
0323 {5.71652, -2.41701, 0.43440, 2.22321, 0.04692, 2.79999, 0.10853},
0324 {6.81440, -3.29350, 0.58663, 1.98213, 0.07486, 2.80000, 0.10542},
0325 {7.81288, -3.89340, 0.57881, 0.81140, 0.22775, 2.80010, 0.10384}
0326 },
0327 {
0328 {6.17487, -2.54612, 0.40400, 2.17700, 0.01289, 2.80010, 0.08099},
0329 {8.06423, -4.55132, 0.88080, 2.24012, -0.00504, 2.80010, 0.08337},
0330 {7.75031, -4.17839, 0.76855, 2.00584, 0.02515, 2.79999, 0.08726},
0331 {6.51292, -2.39345, 0.26823, 1.69781, 0.07732, 2.79990, 0.07987},
0332 {6.48835, -2.33945, 0.07605, -0.56041, 0.39081, 2.80010, 0.08949}
0333 }},
0334 {{
0335 {8.16406, -4.55773, 0.91972, 2.21215, 0.14317, 2.79998, 0.22183},
0336 {7.89276, -3.77060, 0.64372, 1.96030, 0.15056, 2.79990, 0.20263},
0337 {7.67892, -3.84813, 0.71657, 2.17394, 0.12434, 2.80006, 0.19921},
0338 {8.13498, -4.46476, 0.87296, 2.08738, 0.13937, 2.80000, 0.18728},
0339 {6.91882, -2.23043, 0.12475, 0.72019, 0.33261, 2.80010, 0.17056}
0340 },
0341 {
0342 {7.60992, -3.65943, 0.64255, 2.04316, 0.12785, 2.79990, 0.18431},
0343 {6.52296, -2.56484, 0.39728, 2.10842, 0.12416, 2.79997, 0.18700},
0344 {7.95235, -3.86611, 0.68678, 2.16631, 0.12334, 2.79992, 0.18180},
0345 {7.57767, -3.21175, 0.45582, 1.72706, 0.15405, 2.80000, 0.17254},
0346 {8.05914, -3.96937, 0.61131, 0.96121, 0.27725, 2.80010, 0.16571}
0347 },
0348 {
0349 {8.70947, -5.18820, 1.05104, 2.10060, 0.11501, 2.79990, 0.15649},
0350 {8.20776, -4.27945, 0.78402, 2.10428, 0.09563, 2.79996, 0.15033},
0351 {7.80506, -4.24761, 0.84511, 2.24464, 0.10456, 2.80003, 0.15624},
0352 {8.72308, -4.76997, 0.91280, 2.24680, 0.09885, 2.80007, 0.14575},
0353 {7.60413, -3.51654, 0.48936, 0.69496, 0.32118, 2.80010, 0.13737}
0354 },
0355 {
0356 {7.20463, -3.15528, 0.51925, 2.31239, 0.04585, 2.80009, 0.10750},
0357 {9.60244, -5.93930, 1.22596, 2.46999, 0.04067, 2.79991, 0.11105},
0358 {8.04795, -4.31032, 0.81941, 2.27568, 0.04554, 2.79997, 0.10734},
0359 {8.09551, -4.77124, 0.99543, 2.37944, 0.05745, 2.80008, 0.10655},
0360 {8.40111, -3.74416, 0.44669, 0.60184, 0.29198, 2.80010, 0.10316}
0361 },
0362 {
0363 {8.03608, -3.96112, 0.66802, 2.15038, 0.01138, 2.80009, 0.08071},
0364 {7.76492, -3.81962, 0.65693, 2.22033, -0.00001, 2.79991, 0.08351},
0365 {9.62458, -5.99604, 1.20548, 2.21147, 0.02683, 2.79990, 0.08199},
0366 {7.62637, -3.39751, 0.50530, 1.79535, 0.09982, 2.80007, 0.08612},
0367 {8.45439, -3.87754, 0.43957, 0.14977, 0.31913, 2.80010, 0.08172}
0368 }},
0369 {{
0370 {6.62637, -2.25983, 0.30815, 1.54779, 0.24243, 3.99990, 0.27048},
0371 {6.75483, -3.11292, 0.54928, 1.88812, 0.20004, 3.49999, 0.25059},
0372 {6.25297, -2.54782, 0.37889, 1.45494, 0.22341, 4.50010, 0.27856},
0373 {7.72713, -3.37881, 0.49709, 1.54951, 0.23090, 4.49999, 0.24200},
0374 {9.00799, -3.89331, 0.53482, 0.87881, 0.31985, 4.49990, 0.20978}
0375 },
0376 {
0377 {7.97450, -3.52173, 0.51574, 1.24685, 0.22316, 4.00005, 0.24024},
0378 {7.28999, -2.89405, 0.44605, 2.03237, 0.16929, 3.49992, 0.21158},
0379 {7.45375, -3.12427, 0.45932, 1.86952, 0.18362, 4.49990, 0.22255},
0380 {6.09283, -2.30307, 0.34813, 1.82337, 0.21229, 4.50010, 0.20988},
0381 {7.28320, -2.49782, 0.29586, 0.46492, 0.34871, 4.50000, 0.19555}
0382 },
0383 {
0384 {9.71686, -5.70628, 1.04722, 2.07947, 0.14115, 3.50010, 0.16325},
0385 {7.83821, -3.73861, 0.64182, 2.22640, 0.11115, 3.50008, 0.18515},
0386 {7.69521, -3.28176, 0.48472, 2.08793, 0.14558, 4.50010, 0.17674},
0387 {5.13659, -1.30036, 0.15441, 1.61192, 0.17777, 4.49994, 0.17546},
0388 {9.37421, -4.36963, 0.60607, 0.27949, 0.37870, 4.49990, 0.18358}
0389 },
0390 {
0391 {8.89808, -4.95789, 0.90497, 2.46022, 0.04893, 3.50010, 0.11277},
0392 {7.18215, -3.39253, 0.58624, 2.19624, 0.08384, 3.50002, 0.11048},
0393 {7.54817, -2.90179, 0.40628, 2.49222, 0.05005, 4.50010, 0.11296},
0394 {5.97135, -1.89007, 0.23548, 1.51412, 0.16006, 4.49996, 0.10720},
0395 {6.93347, -2.35070, 0.25191, -0.17234, 0.36194, 4.50010, 0.10697}
0396 },
0397 {
0398 {8.94249, -5.11341, 0.94432, 2.65144, -0.01083, 3.50003, 0.08762},
0399 {8.97662, -4.14363, 0.61956, 1.71105, 0.10070, 3.49990, 0.08637},
0400 {8.79673, -4.01654, 0.57860, 2.04528, 0.08752, 4.50010, 0.08307},
0401 {6.66813, -2.35543, 0.29513, 1.26681, 0.17295, 4.50009, 0.08825},
0402 {4.63856, -0.82319, 0.00194, -1.12366, 0.46605, 4.49990, 0.09112}
0403 }}};
0404
0405
0406
0407 inline unsigned short THIS_CLASS::MB_DT_Check_boundaries(
0408 double distime, double alpha, double by, double bz, short ifl) const {
0409 unsigned short status = 1;
0410 std::string name = "MB_DT_drift_time";
0411
0412 if (ifl < 0) {
0413 name = "MB_DT_drift_distance";
0414 if (distime < 0) {
0415 #ifdef MB_DT_DEBUG
0416 printf("*** Warning, %s: drift time is negative\n", name);
0417 #endif
0418 status = 0;
0419 }
0420 } else {
0421 if (fabs(distime) > DT_Cell_HalfWidth) {
0422 #ifdef MB_DT_DEBUG
0423 if (ifl == 0)
0424 printf("*** Warning, %s: distance to the wire is out of range [-%d,%d] mm\n",
0425 name,
0426 DT_Cell_HalfWidth,
0427 DT_Cell_HalfWidth);
0428 else
0429 printf("*** Warning, %s: x-coordinate is out of range [0,%d] mm\n", name, DT_Cell_Width);
0430 #endif
0431 status = 0;
0432 }
0433 }
0434
0435 if (alpha < alpha_value[0] || alpha > alpha_value[N_alpha - 1]) {
0436 #ifdef MB_DT_DEBUG
0437 printf("*** Warning, %s: angle is out of range [%.0f,%.0f] degrees\n",
0438 name,
0439 alpha_value[0],
0440 alpha_value[N_alpha - 1]);
0441 #endif
0442 status = 0;
0443 }
0444
0445 if (by < By_value[0] || by > By_value[N_By - 1]) {
0446 #ifdef MB_DT_DEBUG
0447 printf("*** Warning, %s: By field is out of range [%.2f,%.2f]\n", name, By_value[0], By_value[N_By - 1]);
0448 #endif
0449 status = 0;
0450 }
0451
0452 if (bz < Bz_value[0] || bz > Bz_value[N_Bz - 1]) {
0453 #ifdef MB_DT_DEBUG
0454 printf("*** Warning, %s: Bz field is out of range [%.2f,%.2f]\n", name, Bz_value[0], Bz_value[N_Bz - 1]);
0455 #endif
0456 status = 0;
0457 }
0458
0459 return (status);
0460 }
0461
0462 inline void THIS_CLASS::MB_DT_Get_grid_values(
0463 double Var, unsigned short *pi, unsigned short *pj, short Initial, unsigned short N, const double *Values) const {
0464 unsigned short i, iValue, jValue;
0465
0466 iValue = N - 1;
0467 jValue = N - 2;
0468
0469 for (i = Initial; i < N; i++) {
0470 if (Var <= Values[i]) {
0471 iValue = i;
0472 jValue = (Var != Values[i]) ? i - 1 : i;
0473 break;
0474 }
0475 }
0476
0477 if (fabs(Values[iValue] - Var) <= fabs(Var - Values[jValue])) {
0478 *pi = iValue;
0479 *pj = jValue;
0480 } else {
0481 *pi = jValue;
0482 *pj = iValue;
0483 }
0484 }
0485
0486 inline void THIS_CLASS::MB_DT_Get_grid_points(double alpha,
0487 double by,
0488 double bz,
0489 unsigned short *p_alpha,
0490 unsigned short *p_By,
0491 unsigned short *p_Bz,
0492 unsigned short *q_alpha,
0493 unsigned short *q_By,
0494 unsigned short *q_Bz) const {
0495 MB_DT_Get_grid_values(fabs(alpha), p_alpha, q_alpha, 4, N_alpha, alpha_value);
0496 MB_DT_Get_grid_values(by, p_By, q_By, 0, N_By, By_value);
0497 MB_DT_Get_grid_values(bz, p_Bz, q_Bz, 0, N_Bz, Bz_value);
0498
0499 if (alpha < 0) {
0500 *p_alpha = N_alpha - 1 - *p_alpha;
0501 *q_alpha = N_alpha - 1 - *q_alpha;
0502 }
0503 }
0504
0505
0506
0507 inline double THIS_CLASS::MB_DT_MLInterpolation(double *al, double *by, double *bz, double *f) const {
0508 double q1, q2, q3, p1, p2, p3;
0509 double fx11, fx21, fxy1, fx12, fx22, fxy2, fxyz;
0510
0511 q1 = (al[1] != al[2]) ? (al[0] - al[1]) / (al[2] - al[1]) : 0;
0512 q2 = (by[1] != by[2]) ? (by[0] - by[1]) / (by[2] - by[1]) : 0;
0513 q3 = (bz[1] != bz[2]) ? (bz[0] - bz[1]) / (bz[2] - bz[1]) : 0;
0514
0515 p1 = 1 - q1;
0516 p2 = 1 - q2;
0517 p3 = 1 - q3;
0518
0519 fx11 = p1 * f[0] + q1 * f[4];
0520 fx21 = p1 * f[2] + q1 * f[6];
0521 fxy1 = p2 * fx11 + q2 * fx21;
0522
0523 fx12 = p1 * f[1] + q1 * f[5];
0524 fx22 = p1 * f[3] + q1 * f[7];
0525 fxy2 = p2 * fx12 + q2 * fx22;
0526
0527 fxyz = p3 * fxy1 + q3 * fxy2;
0528
0529 return (fxyz);
0530 }
0531
0532 inline double THIS_CLASS::MB_DT_sigma_t_m(double dist, double *par) const {
0533 double x = fabs(dist);
0534
0535 if (x > 20.5)
0536 x = 20.5;
0537
0538 return (par[6] * x);
0539 }
0540
0541 inline double THIS_CLASS::MB_DT_sigma_t_p(double dist, double *par) const {
0542 double x2, x = fabs(dist);
0543
0544 if (x > 20.5)
0545 x = 20.5;
0546
0547 x2 = x * x;
0548
0549 if (x <= par[5]) {
0550 return (par[0] + par[1] * x + par[2] * x2);
0551 }
0552 return (par[3] + par[4] * x);
0553 }