Belle II Software development
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#pragma once
10
11#include "G4VPhysicsConstructor.hh"
12
13class G4TheoFSGenerator;
14class G4FTFModel;
15class G4ExcitedStringDecay;
16class G4LundStringFragmentation;
17class G4GeneratorPrecompoundInterface;
18class G4VComponentCrossSection;
19class G4ComponentGGNuclNuclXsc;
20
21namespace Belle2 {
26
27 namespace Simulation {
28
32 class IonPhysics: public G4VPhysicsConstructor {
33 public:
34 IonPhysics();
35 ~IonPhysics();
36
38 virtual void ConstructParticle() override;
39
41 virtual void ConstructProcess() override;
42
43 private:
45 G4TheoFSGenerator* m_ftfp;
46
48 G4FTFModel* m_stringModel;
49
51 G4ExcitedStringDecay* m_stringDecay;
52
54 G4LundStringFragmentation* m_fragModel;
55
57 G4GeneratorPrecompoundInterface* m_preCompoundModel;
58
60 G4VComponentCrossSection* m_theGGNuclNuclXS;
61
63 G4ComponentGGNuclNuclXsc* m_ionGGXS;
64 };
65
66 } // end of namespace Simulation
67
69} // end of namespace Belle2
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:60
G4GeneratorPrecompoundInterface * m_preCompoundModel
Precompound model to deexcite post-collision nucleus.
Definition IonPhysics.h:57
G4TheoFSGenerator * m_ftfp
Final state generator for QCD string models.
Definition IonPhysics.h:45
G4FTFModel * m_stringModel
Fritiof string model.
Definition IonPhysics.h:48
G4ExcitedStringDecay * m_stringDecay
Model to decay strings into hadrons.
Definition IonPhysics.h:51
G4ComponentGGNuclNuclXsc * m_ionGGXS
Cross section set for elastic nucleus-nucleus collisions.
Definition IonPhysics.h:63
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:54
Abstract base class for different kinds of events.