Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-10-29 06:08:13

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