Belle II Software  release-08-01-10
GammaLeptoNuclearPhysics.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 GAMMALEPTONUCLEARPHYSICS_H
10 #define GAMMALEPTONUCLEARPHYSICS_H
11 
12 #include "G4VPhysicsConstructor.hh"
13 #include "G4GammaParticipants.hh"
14 #include "G4QGSModel.hh"
15 
16 class G4TheoFSGenerator;
17 class G4ExcitedStringDecay;
18 class G4QGSMFragmentation;
19 class G4GeneratorPrecompoundInterface;
20 
21 namespace Belle2 {
27  namespace Simulation {
28 
33  class GammaLeptoNuclearPhysics: public G4VPhysicsConstructor {
34  public:
36  GammaLeptoNuclearPhysics(const G4int verbosityLevel = 0);
39 
41  virtual void ConstructProcess() override;
42 
44  virtual void ConstructParticle() override;
45 
46  private:
48  G4TheoFSGenerator* m_qgsp;
49 
51  G4QGSModel<G4GammaParticipants>* m_stringModel;
52 
54  G4ExcitedStringDecay* m_stringDecay;
55 
57  G4QGSMFragmentation* m_fragModel;
58 
60  G4GeneratorPrecompoundInterface* m_preCompoundModel;
61 
64 
65  };
66 
67  } // end of namespace Simulation
68 
70 } // end of namespace Belle2
71 
72 #endif // GAMMALEPTONUCLEARPHYSICS_H
Gamma-nuclear, electro-nuclear and muon-nuclear physics constructor for Belle II physics list.
G4TheoFSGenerator * m_qgsp
Final state generator for QCD string models.
G4QGSModel< G4GammaParticipants > * m_stringModel
Quark Gluon String model.
virtual void ConstructParticle() override
Build all particle types used in physics list (empty in this class)
G4QGSMFragmentation * m_fragModel
Quark Gluon String fragmentation model.
G4bool m_useGammaNuclearXS
Switch between GammaNuclearXS and PhotoNuclearXS.
G4GeneratorPrecompoundInterface * m_preCompoundModel
Precompound model to deexcite post-collision nucleus.
G4ExcitedStringDecay * m_stringDecay
Model to decay strings into hadrons.
GammaLeptoNuclearPhysics(const G4int verbosityLevel=0)
Constructor.
virtual void ConstructProcess() override
Build processes, models, cross sections used in physics list.
Abstract base class for different kinds of events.