Belle II Software  release-08-01-10
IonPhysics.h
1 /**************************************************************************
2  * basf2 (Belle II Analysis Software Framework) *
3  * Author: The Belle II Collaboration *
4  * *
5  * See git log for contributors and copyright holders. *
6  * This file is licensed under LGPL-3.0, see LICENSE.md. *
7  **************************************************************************/
8 
9 #ifndef IONPHYSICS_H
10 #define IONPHYSICS_H
11 
12 #include "G4VPhysicsConstructor.hh"
13 
14 class G4TheoFSGenerator;
15 class G4FTFModel;
16 class G4ExcitedStringDecay;
17 class G4LundStringFragmentation;
18 class G4GeneratorPrecompoundInterface;
19 class G4VComponentCrossSection;
20 class G4ComponentGGNuclNuclXsc;
21 
22 namespace Belle2 {
28  namespace Simulation {
29 
33  class IonPhysics: public G4VPhysicsConstructor {
34  public:
35  IonPhysics();
36  ~IonPhysics();
37 
39  virtual void ConstructParticle() override;
40 
42  virtual void ConstructProcess() override;
43 
44  private:
46  G4TheoFSGenerator* m_ftfp;
47 
49  G4FTFModel* m_stringModel;
50 
52  G4ExcitedStringDecay* m_stringDecay;
53 
55  G4LundStringFragmentation* m_fragModel;
56 
58  G4GeneratorPrecompoundInterface* m_preCompoundModel;
59 
61  G4VComponentCrossSection* m_theGGNuclNuclXS;
62 
64  G4ComponentGGNuclNuclXsc* m_ionGGXS;
65  };
66 
67  } // end of namespace Simulation
68 
70 } // end of namespace Belle2
71 
72 #endif // IONPHYSICS_H
Ion hadronic physics constructor for Belle II physics list.
Definition: IonPhysics.h:33
virtual void ConstructParticle() override
Build processes, models, cross sections used in physics list.
Definition: IonPhysics.cc:53
G4VComponentCrossSection * m_theGGNuclNuclXS
Cross section set for inelastic nucleus-nucleus collisions.
Definition: IonPhysics.h:61
G4GeneratorPrecompoundInterface * m_preCompoundModel
Precompound model to deexcite post-collision nucleus.
Definition: IonPhysics.h:58
G4TheoFSGenerator * m_ftfp
Final state generator for QCD string models.
Definition: IonPhysics.h:46
G4FTFModel * m_stringModel
Fritiof string model.
Definition: IonPhysics.h:49
G4ExcitedStringDecay * m_stringDecay
Model to decay strings into hadrons.
Definition: IonPhysics.h:52
G4ComponentGGNuclNuclXsc * m_ionGGXS
Cross section set for elastic nucleus-nucleus collisions.
Definition: IonPhysics.h:64
virtual void ConstructProcess() override
Build all particle types used in physics list (empty in this class)
Definition: IonPhysics.cc:57
G4LundStringFragmentation * m_fragModel
Lund string fragmentation model.
Definition: IonPhysics.h:55
Abstract base class for different kinds of events.