ATLAS Offline Software
RHadronsPhysicsTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef RHADRONS_RHADRONSPHYSICSTOOL_H
6 #define RHADRONS_RHADRONSPHYSICSTOOL_H
7 
8 // Include files
9 #include <vector>
10 
15 
24  : public extends<AthAlgTool, IPhysicsOptionTool> {
25  public:
27  RHadronsPhysicsTool( const std::string& type , const std::string& name,
28  const IInterface* parent ) ;
29 
30  virtual ~RHadronsPhysicsTool( );
31 
33  virtual StatusCode initialize();
34 
38  virtual UPPhysicsConstructor GetPhysicsOption();
39 
41  public:
42  PhysicsConstructor(const std::string& name, MSG::Level level,
43  const std::vector<int>& standardpdgidtodecay)
45  m_standardpdgidtodecay(standardpdgidtodecay) {}
46  virtual void ConstructParticle() override;
47  virtual void ConstructProcess() override;
48 
49  private:
50  std::vector<int> m_standardpdgidtodecay;
51  };
52 
53 private:
54  // 521 B+ 5279.17 (MeV/c) meson B 0
55  // -521 B- 5279.17 (MeV/c) meson B 0
56  // 511 B0 5279.5 (MeV/c) meson B 0
57  // -511 anti_B0 5279.5 (MeV/c) meson B 0
58  // 531 Bs0 5366.3 (MeV/c) meson Bs 0
59  // -531 anti_Bs0 5366.3 (MeV/c) meson Bs 0
60  // 541 Bc+ 6277 (MeV/c) meson Bc 0
61  // -541 Bc- 6277 (MeV/c) meson Bc 0
62  // 553 Upsilon 9460.3 (MeV/c) meson Upsilon 0
63 
64  // 411 D+ 1869.57 (MeV/c) meson D 0
65  // -411 D- 1869.57 (MeV/c) meson D 0
66  // 421 D0 1864.8 (MeV/c) meson D 0
67  // -421 anti_D0 1864.8 (MeV/c) meson D 0
68  // 431 Ds+ 1968.45 (MeV/c) meson Ds 0
69  // -431 Ds- 1968.45 (MeV/c) meson Ds 0
70  // 441 etac 2980.3 (MeV/c) meson etac 0
71  // 443 J/psi 3096.92 (MeV/c) meson J/psi 0
72 
73  // 4122 lambda_c+ 2286.46 (MeV/c) baryon lambda_c 0
74  // 4222 sigma_c++ 2454.02 (MeV/c) baryon sigma_c 0
75  // 4212 sigma_c+ 2452.9 (MeV/c) baryon sigma_c 0
76  // 4112 sigma_c0 2453.76 (MeV/c) baryon sigma_c 0
77  // 4232 xi_c+ 2467.8 (MeV/c) baryon xi_c 0
78  // 4132 xi_c0 2470.88 (MeV/c) baryon xi_c 0
79  // 4332 omega_c0 2695.2 (MeV/c) baryon omega_c 0
80 
81  // 5122 lambda_b 5620.2 (MeV/c) baryon lambda_b 0
82  // 5222 sigma_b+ 5807.8 (MeV/c) baryon sigma_b 0
83  // 5212 sigma_b0 5807.8 (MeV/c) baryon sigma_b 0
84  // 5112 sigma_b- 5815.2 (MeV/c) baryon sigma_b 0
85  // 5232 xi_b0 5790.5 (MeV/c) baryon xi_b 0
86  // 5132 xi_b- 5790.5 (MeV/c) baryon xi_b 0
87  // 5332 omega_b- 6071 (MeV/c) baryon omega_b 0
88 
89  IntegerArrayProperty m_standardpdgidtodecay{this, "StandardParticlesToDecay",
90  {
91  4122, 4222, 4212, 4112, 4232, 4132, 4332, 5122, 5222, 5212, 5112, 5232, 5132, 5332,
92  -4122, -4222, -4212, -4112, -4232, -4132, -4332, -5122, -5222, -5212, -5112, -5232, -5132, -5332,
93  411, -411, 421, -421, 431, -431, 441, 443, 521,
94  -521, 511, -511, 531, -531, 541, -541, 553
95  },
96  "Particles which are known to Geant4"};
97  // IntegerArrayProperty m_extrapdgidtodecay{this, "ExtraParticlesToDecay",
98  // {
99  // // Unknown to Geant4, so removed for the time being
100  // // 423, -423, 433, -433, 513, -513, 523, -523, 551, -551
101  // },
102  // "Particles which are added to Geant4 by quasi-stable particle simulation."};
103 };
104 
105 #endif
RHadronsPhysicsTool::PhysicsConstructor::PhysicsConstructor
PhysicsConstructor(const std::string &name, MSG::Level level, const std::vector< int > &standardpdgidtodecay)
Definition: RHadronsPhysicsTool.h:42
ATLAS_NOT_THREAD_SAFE
#define ATLAS_NOT_THREAD_SAFE
getNoisyStrip() Find noisy strips from hitmaps and write out into xml/db formats
Definition: checker_macros.h:212
initialize
void initialize()
Definition: run_EoverP.cxx:894
python.CaloAddPedShiftConfig.type
type
Definition: CaloAddPedShiftConfig.py:42
python.iconfTool.models.loaders.level
level
Definition: loaders.py:20
TrigConf::MSGTC::Level
Level
Definition: Trigger/TrigConfiguration/TrigConfBase/TrigConfBase/MsgStream.h:21
IPhysicsOptionTool.h
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
AthAlgTool.h
test_pyathena.parent
parent
Definition: test_pyathena.py:15
RHadronsPhysicsTool
Definition: RHadronsPhysicsTool.h:24
RHadronsPhysicsTool::PhysicsConstructor
Definition: RHadronsPhysicsTool.h:40
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:240
IPhysicsConstructor.h
RHadronsPhysicsTool::PhysicsConstructor::m_standardpdgidtodecay
std::vector< int > m_standardpdgidtodecay
Definition: RHadronsPhysicsTool.h:50
checker_macros.h
Define macros for attributes used to control the static checker.
IPhysicsContructor
Definition: IPhysicsConstructor.h:41