Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-30 10:30:21

0001 // SPDX-License-Identifier: LGPL-3.0-or-later
0002 // Copyright (C) 2022 Sylvester Joosten
0003 
0004 #include "ParticleSvc.h"
0005 
0006 // NOLINTNEXTLINE(cppcoreguidelines-avoid-non-const-global-variables)
0007 DECLARE_COMPONENT(ParticleSvc)
0008 
0009 namespace {
0010 const IParticleSvc::ParticleMap kParticleMap = {
0011     {           0, {           0,   0,   0.0            }},  // unknown
0012     {          11, {          11,  -1,   0.000510998928 }},  // e-
0013     {         -11, {         -11,   1,   0.000510998928 }},  // e+
0014     {          13, {          13,  -1,   0.105658357    }},  // mu-
0015     {         -13, {         -13,   1,   0.105658357    }},  // mu+
0016     {          22, {          22,   0,   0.0            }},  // gamma
0017     {         111, {         111,   0,   0.1349766      }},  // p0
0018     {         113, {         111,   0,   0.76850        }},  // rho(770)^0
0019     {         115, {         115,   0,   1.31800        }},  // a_2(1320)^0
0020     {         211, {         211,   1,   0.1395701      }},  // pi+
0021     {        -211, {        -211,  -1,   0.1395701      }},  // pi-
0022     {         213, {         213,   1,   0.76690        }},  // rho+
0023     {        -213, {        -213,  -1,   0.76690        }},  // rho-
0024     {         215, {         215,   1,   1.31800        }},  // a_2(1320)+
0025     {        -215, {        -215,  -1,   1.31800        }},  // a_2(1320)-
0026     {         221, {         221,   0,   0.54745        }},  // eta
0027     {         223, {         223,   0,   0.78194        }},  // omega
0028     {         225, {         225,   0,   1.27500        }},  // f_2(1270)
0029     {         130, {         130,   0,   0.49767        }},  // KL_0
0030     {         310, {         310,   0,   0.49767        }},  // KS_0
0031     {         311, {         311,   0,   0.49767        }},  // K^0
0032     {        -311, {        -311,   0,   0.49767        }},  // K~^0
0033     {         313, {         313,   0,   0.89610        }},  // K*(892)^0
0034     {        -313, {        -313,   0,   0.89610        }},  // K*(892)~^0
0035     {         315, {         315,   0,   1.43200        }},  // K*_2(1430)^0
0036     {        -315, {        -315,   0,   1.43200        }},  // K*_2(1430)~^0
0037     {         321, {         321,   1,   0.49360        }},  // K^+
0038     {        -321, {        -321,  -1,   0.49360        }},  // K^-
0039     {         323, {         323,   1,   0.89160        }},  // K*(892)^+
0040     {        -323, {        -323,  -1,   0.89160        }},  // K*(892)^-
0041     {         325, {         325,   1,   1.42500        }},  // K*_2(1430)^+
0042     {        -325, {        -325,  -1,   1.42500        }},  // K*_2(1430)^-
0043     {         331, {         331,   0,   0.95777        }},  // eta'(958)
0044     {         333, {         333,   0,   1.01940        }},  // phi(1020)
0045     {         335, {         335,   0,   1.52500        }},  // f'_2(1525)
0046     {         411, {         411,   1,   1.86930        }},  // D+
0047     {        -411, {         411,  -1,   1.86930        }},  // D-
0048     {         413, {         413,   1,   2.01000        }},  // D*(2010)^+
0049     {        -413, {        -413,  -1,   2.01000        }},  // D*(2010)^-
0050     {         415, {         415,   1,   2.46000        }},  // D*_2(2460)^+
0051     {        -415, {        -415,  -1,   2.46000        }},  // D*_2(2460)^-
0052     {         421, {         421,   0,   1.86450        }},  // D^0
0053     {        -421, {        -421,   0,   1.86450        }},  // D~^0
0054     {         423, {         423,   0,   2.00670        }},  // D*(2007)^0
0055     {        -423, {        -423,   0,   2.00670        }},  // D*(2007)~^0
0056     {         425, {         425,   0,   2.46000        }},  // D*_2(2460)^0
0057     {        -425, {        -425,   0,   2.46000        }},  // D*_2(2460)~^0
0058     {         431, {         431,   1,   1.96850        }},  // D_s^+
0059     {        -431, {        -431,  -1,   1.96850        }},  // D_s^-
0060     {         433, {         433,   1,   2.11240        }},  // D*_s^+
0061     {        -433, {        -433,  -1,   2.11240        }},  // D*_s^-
0062     {         435, {         435,   1,   2.57350        }},  // D*_s2(2573)^+
0063     {        -435, {        -435,  -1,   2.57350        }},  // D*_s2(2573)^-
0064     {         441, {         441,   0,   2.97980        }},  // eta_c(1S)
0065     {         443, {         443,   0,   3.09688        }},  // J/psi(1S)
0066     {         445, {         445,   0,   3.55620        }},  // chi_c2(1P)
0067     {         511, {         511,   0,   5.27920        }},  // B^0
0068     {        -511, {        -511,   0,   5.27920        }},  // B~^0
0069     {         513, {         513,   0,   5.32480        }},  // B*^0
0070     {        -513, {        -513,   0,   5.32480        }},  // B*~^0
0071     {         515, {         515,   0,   5.83000        }},  // B*_2^0
0072     {        -515, {        -515,   0,   5.83000        }},  // B*_2~^0
0073     {         521, {         521,   1,   5.27890        }},  // B^+
0074     {        -521, {        -521,  -1,   5.27890        }},  // B^-
0075     {         523, {         523,   1,   5.32480        }},  // B*^+
0076     {        -523, {        -523,  -1,   5.32480        }},  // B*^-
0077     {         525, {         525,   1,   5.83000        }},  // B*_2^+
0078     {        -525, {        -525,  -1,   5.83000        }},  // B*_2^-
0079     {         531, {         531,   0,   5.36930        }},  // B_s^0
0080     {        -531, {        -531,   0,   5.36930        }},  // B_s~^0
0081     {         533, {         533,   0,   5.41630        }},  // B*_s^0
0082     {        -533, {        -533,   0,   5.41630        }},  // B*_s~^0
0083     {         535, {         535,   0,   6.07000        }},  // B*_s2^0
0084     {        -535, {        -535,   0,   6.07000        }},  // B*_s2~^0
0085     {         541, {         541,   1,   6.59400        }},  // B_c^+
0086     {        -541, {        -541,  -1,   6.59400        }},  // B_c^-
0087     {         543, {         543,   1,   6.60200        }},  // B*_c^+
0088     {        -543, {        -543,  -1,   6.60200        }},  // B*_c^-
0089     {         545, {         545,   1,   7.35000        }},  // B*_c2^+
0090     {        -545, {        -545,  -1,   7.35000        }},  // B*_c2^-
0091     {         551, {         551,   0,   9.40000        }},  // eta_b(1S)
0092     {         553, {         553,   0,   9.46030        }},  // Upsilon(1S)
0093     {         555, {         555,   0,   9.91320        }},  // chi_b2(1P)
0094     {         990, {         990,   0,   0.00000        }},  // pomeron
0095     {        1114, {        1114,  -1,   1.23400        }},  // Delta^-
0096     {       -1114, {       -1114,   1,   1.23400        }},  // Delta~^+
0097     {        2112, {        2112,   0,   0.93957        }},  // n
0098     {       -2112, {       -2112,   0,   0.93957        }},  // n~^0
0099     {        2114, {        2114,   0,   1.23300        }},  // Delta^0
0100     {       -2114, {       -2114,   0,   1.23300        }},  // Delta~^0
0101     {        2212, {        2212,   1,   0.93827        }},  // p^+
0102     {       -2212, {       -2212,  -1,   0.93827        }},  // p~^-
0103     {        2214, {        2214,   1,   1.23200        }},  // Delta^+
0104     {       -2214, {       -2214,  -1,   1.23200        }},  // Delta~^-
0105     {        2224, {        2224,   2,   1.23100        }},  // Delta^++
0106     {       -2224, {       -2224,  -2,   1.23100        }},  // Delta~^--
0107     {        3112, {        3112,  -1,   1.19744        }},  // Sigma^-
0108     {       -3112, {       -3112,   1,   1.19744        }},  // Sigma~^+
0109     {        3114, {        3114,  -1,   1.38720        }},  // Sigma*^-
0110     {       -3114, {       -3114,   1,   1.38720        }},  // Sigma*~^+
0111     {        3122, {        3122,   0,   1.11568        }},  // Lambda^0
0112     {       -3122, {       -3122,   0,   1.11568        }},  // Lambda~^0
0113     {        3212, {        3212,   0,   1.19255        }},  // Sigma^0
0114     {       -3212, {       -3212,   0,   1.19255        }},  // Sigma~^0
0115     {        3214, {        3214,   0,   1.38370        }},  // Sigma*^0
0116     {       -3214, {       -3214,   0,   1.38370        }},  // Sigma*~^0
0117     {        3222, {        3222,   1,   1.18937        }},  // Sigma^+
0118     {       -3222, {       -3222,  -1,   1.18937        }},  // Sigma~^-
0119     {        3224, {        3224,   1,   1.38280        }},  // Sigma*^+
0120     {       -3224, {       -3224,  -1,   1.38280        }},  // Sigma*~^-
0121     {        3312, {        3312,  -1,   1.32130        }},  // Xi^-
0122     {       -3312, {       -3312,   1,   1.32130        }},  // Xi~^+
0123     {        3314, {        3314,  -1,   1.53500        }},  // Xi*^-
0124     {       -3314, {       -3314,   1,   1.53500        }},  // Xi*~^+
0125     {        3322, {        3322,   0,   1.31490        }},  // Xi^0
0126     {       -3322, {       -3322,   0,   1.31490        }},  // Xi~^0
0127     {        3324, {        3324,   0,   1.53180        }},  // Xi*^0
0128     {       -3324, {       -3324,   0,   1.53180        }},  // Xi*~^0
0129     {        3334, {        3334,  -1,   1.67245        }},  // Omega^-
0130     {       -3334, {       -3334,   1,   1.67245        }},  // Omega~^+
0131     {        4112, {        4112,   0,   2.45210        }},  // Sigma_c^0
0132     {       -4112, {       -4112,   0,   2.45210        }},  // Sigma_c~^0
0133     {        4114, {        4114,   0,   2.50000        }},  // Sigma*_c^0
0134     {       -4114, {       -4114,   0,   2.50000        }},  // Sigma*_c~^0
0135     {        4122, {        4122,   1,   2.28490        }},  // Lambda_c^+
0136     {       -4122, {       -4122,  -1,   2.28490        }},  // Lambda_c~^-
0137     {        4132, {        4132,   0,   2.47030        }},  // Xi_c^0
0138     {       -4132, {       -4132,   0,   2.47030        }},  // Xi_c~^0
0139     {        4212, {        4212,   1,   2.45350        }},  // Sigma_c^+
0140     {       -4212, {       -4212,  -1,   2.45350        }},  // Sigma_c~^-
0141     {        4214, {        4214,   1,   2.50000        }},  // Sigma*_c^+
0142     {       -4214, {       -4214,  -1,   2.50000        }},  // Sigma*_c~^-
0143     {        4222, {        4222,   2,   2.45290        }},  // Sigma_c^++
0144     {       -4222, {       -4222,  -2,   2.45290        }},  // Sigma_c~^--
0145     {        4224, {        4224,   2,   2.50000        }},  // Sigma*_c^++
0146     {       -4224, {       -4224,  -2,   2.50000        }},  // Sigma*_c~^--
0147     {        4232, {        4232,   1,   2.46560        }},  // Xi_c^+
0148     {       -4232, {       -4232,  -1,   2.46560        }},  // Xi_c~^-
0149     {        4312, {        4312,   0,   2.55000        }},  // Xi'_c^0
0150     {       -4312, {       -4312,   0,   2.55000        }},  // Xi'_c~^0
0151     {        4314, {        4314,   0,   2.63000        }},  // Xi*_c^0
0152     {       -4314, {       -4314,   0,   2.63000        }},  // Xi*_c~^0
0153     {        4322, {        4322,   1,   2.55000        }},  // Xi'_c^+
0154     {       -4322, {       -4322,  -1,   2.55000        }},  // Xi'_c~^-
0155     {        4324, {        4324,   1,   2.63000        }},  // Xi*_c^+
0156     {       -4324, {       -4324,  -1,   2.63000        }},  // Xi*_c~^-
0157     {        4332, {        4332,   0,   2.70400        }},  // Omega_c^0
0158     {       -4332, {       -4332,   0,   2.70400        }},  // Omega_c~^0
0159     {        4334, {        4334,   0,   2.80000        }},  // Omega*_c^0
0160     {       -4334, {       -4334,   0,   2.80000        }},  // Omega*_c~^0
0161     {        4412, {        4412,   1,   3.59798        }},  // Xi_cc^+
0162     {       -4412, {       -4412,  -1,   3.59798        }},  // Xi_cc~^-
0163     {        4414, {        4414,   1,   3.65648        }},  // Xi*_cc^+
0164     {       -4414, {       -4414,  -1,   3.65648        }},  // Xi*_cc~^-
0165     {        4422, {        4422,   2,   3.59798        }},  // Xi_cc^++
0166     {       -4422, {       -4422,  -2,   3.59798        }},  // Xi_cc~^--
0167     {        4424, {        4424,   2,   3.65648        }},  // Xi*_cc^++
0168     {       -4424, {       -4424,  -2,   3.65648        }},  // Xi*_cc~^--
0169     {        4432, {        4432,   1,   3.78663        }},  // Omega_cc^+
0170     {       -4432, {       -4432,  -1,   3.78663        }},  // Omega_cc~^-
0171     {        4434, {        4434,   1,   3.82466        }},  // Omega*_cc^+
0172     {       -4434, {       -4434,  -1,   3.82466        }},  // Omega*_cc~^-
0173     {        4444, {        4444,   2,   4.91594        }},  // Omega*_ccc^++
0174     {       -4444, {       -4444,  -2,   4.91594        }},  // Omega*_ccc~^--
0175     {        5112, {        5112,  -1,   5.80000        }},  // Sigma_b^-
0176     {       -5112, {       -5112,   1,   5.80000        }},  // Sigma_b~^+
0177     {        5114, {        5114,  -1,   5.81000        }},  // Sigma*_b^-
0178     {       -5114, {       -5114,   1,   5.81000        }},  // Sigma*_b~^+
0179     {        5122, {        5122,   0,   5.64100        }},  // Lambda_b^0
0180     {       -5122, {       -5122,   0,   5.64100        }},  // Lambda_b~^0
0181     {        5132, {        5132,  -1,   5.84000        }},  // Xi_b^-
0182     {       -5132, {       -5132,   1,   5.84000        }},  // Xi_b~^+
0183     {        5142, {        5142,   0,   7.00575        }},  // Xi_bc^0
0184     {       -5142, {       -5142,   0,   7.00575        }},  // Xi_bc~^0
0185     {        5212, {        5212,   0,   5.80000        }},  // Sigma_b^0
0186     {       -5212, {       -5212,   0,   5.80000        }},  // Sigma_b~^0
0187     {        5214, {        5214,   0,   5.81000        }},  // Sigma*_b^0
0188     {       -5214, {       -5214,   0,   5.81000        }},  // Sigma*_b~^0
0189     {        5222, {        5222,   1,   5.80000        }},  // Sigma_b^+
0190     {       -5222, {       -5222,  -1,   5.80000        }},  // Sigma_b~^-
0191     {        5224, {        5224,   1,   5.81000        }},  // Sigma*_b^+
0192     {       -5224, {       -5224,  -1,   5.81000        }},  // Sigma*_b~^-
0193     {        5232, {        5232,   0,   5.84000        }},  // Xi_b^0
0194     {       -5232, {       -5232,   0,   5.84000        }},  // Xi_b~^0
0195     {        5242, {        5242,   1,   7.00575        }},  // Xi_bc^+
0196     {       -5242, {       -5242,  -1,   7.00575        }},  // Xi_bc~^-
0197     {        5312, {        5312,  -1,   5.96000        }},  // Xi'_b^-
0198     {       -5312, {       -5312,   1,   5.96000        }},  // Xi'_b~^+
0199     {        5314, {        5314,  -1,   5.97000        }},  // Xi*_b^-
0200     {       -5314, {       -5314,   1,   5.97000        }},  // Xi*_b~^+
0201     {        5322, {        5322,   0,   5.96000        }},  // Xi'_b^0
0202     {       -5322, {       -5322,   0,   5.96000        }},  // Xi'_b~^0
0203     {        5324, {        5324,   0,   5.97000        }},  // Xi*_b^0
0204     {       -5324, {       -5324,   0,   5.97000        }},  // Xi*_b~^0
0205     {        5332, {        5332,  -1,   6.12000        }},  // Omega_b^-
0206     {       -5332, {       -5332,   1,   6.12000        }},  // Omega_b~^+
0207     {        5334, {        5334,  -1,   6.13000        }},  // Omega*_b^-
0208     {       -5334, {       -5334,   1,   6.13000        }},  // Omega*_b~^+
0209     {        5342, {        5342,   0,   7.19099        }},  // Omega_bc^0
0210     {       -5342, {       -5342,   0,   7.19099        }},  // Omega_bc~^0
0211     {        5412, {        5412,   0,   7.03724        }},  // Xi'_bc^0
0212     {       -5412, {       -5412,   0,   7.03724        }},  // Xi'_bc~^0
0213     {        5414, {        5414,   0,   7.04850        }},  // Xi*_bc^0
0214     {       -5414, {       -5414,   0,   7.04850        }},  // Xi*_bc~^0
0215     {        5422, {        5422,   1,   7.03724        }},  // Xi'_bc^+
0216     {       -5422, {       -5422,  -1,   7.03724        }},  // Xi'_bc~^-
0217     {        5424, {        5424,   1,   7.04850        }},  // Xi*_bc^+
0218     {       -5424, {       -5424,  -1,   7.04850        }},  // Xi*_bc~^-
0219     {        5432, {        5432,   0,   7.21101        }},  // Omega'_bc^0
0220     {       -5432, {       -5432,   0,   7.21101        }},  // Omega'_bc~^0
0221     {        5434, {        5434,   0,   7.21900        }},  // Omega*_bc^0
0222     {       -5434, {       -5434,   0,   7.21900        }},  // Omega*_bc~^0
0223     {        5442, {        5442,   1,   8.30945        }},  // Omega_bcc^+
0224     {       -5442, {       -5442,  -1,   8.30945        }},  // Omega_bcc~^-
0225     {        5444, {        5444,   1,   8.31325        }},  // Omega*_bcc^+
0226     {       -5444, {       -5444,  -1,   8.31325        }},  // Omega*_bcc~^-
0227     {        5512, {        5512,  -1,   10.42272       }},  // Xi_bb^-
0228     {       -5512, {       -5512,   1,   10.42272       }},  // Xi_bb~^+
0229     {        5514, {        5514,  -1,   10.44144       }},  // Xi*_bb^-
0230     {       -5514, {       -5514,   1,   10.44144       }},  // Xi*_bb~^+
0231     {        5522, {        5522,   0,   10.42272       }},  // Xi_bb^0
0232     {       -5522, {       -5522,   0,   10.42272       }},  // Xi_bb~^0
0233     {        5524, {        5524,   0,   10.44144       }},  // Xi*_bb^0
0234     {       -5524, {       -5524,   0,   10.44144       }},  // Xi*_bb~^0
0235     {        5532, {        5532,  -1,   10.60209       }},  // Omega_bb^-
0236     {       -5532, {       -5532,   1,   10.60209       }},  // Omega_bb~^+
0237     {        5534, {        5534,  -1,   10.61426       }},  // Omega*_bb^-
0238     {       -5534, {       -5534,   1,   10.61426       }},  // Omega*_bb~^+
0239     {        5542, {        5542,   0,   11.70767       }},  // Omega_bbc^0
0240     {       -5542, {       -5542,   0,   11.70767       }},  // Omega_bbc~^0
0241     {        5544, {        5544,   0,   11.71147       }},  // Omega*_bbc^0
0242     {       -5544, {       -5544,   0,   11.71147       }},  // Omega*_bbc~^0
0243     {        5554, {        5554,  -1,   15.11061       }},  // Omega*_bbb^-
0244     {       -5554, {       -5554,   1,   15.11061       }},  // Omega*_bbb~^+
0245     {  1000010020, {  1000010020,   1,   1.87561        }},  // Deuterium
0246     {  1000010030, {  1000010030,   1,   2.80925        }},  // Tritium
0247     {  1000020030, {  1000020030,   2,   2.80923        }},  // He-3
0248     {  1000020040, {  1000020040,   2,   3.72742        }},  // Alpha
0249 };
0250 }
0251 
0252 ParticleSvc::ParticleSvc(const std::string& name, ISvcLocator* svc)
0253     : base_class(name, svc), m_particleMap{kParticleMap} {}
0254 
0255 ParticleSvc::~ParticleSvc() = default;
0256 
0257 StatusCode ParticleSvc::initialize()
0258 {
0259   StatusCode sc = Service::initialize();
0260   if (!sc.isSuccess())
0261   {
0262     fatal() << "Error initializing ParticleSvc" << endmsg;
0263     return sc;
0264   }
0265   info() << "ParticleSvc initialized successfully" << endmsg;
0266   return StatusCode::SUCCESS;
0267 }