Belle II Software development
NeutronPhysics.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;
18
19namespace Belle2 {
24
25 namespace Simulation {
26
30 class NeutronPhysics: public G4VPhysicsConstructor {
31 public:
32 NeutronPhysics();
33 ~NeutronPhysics();
34
36 virtual void ConstructParticle() override;
37
39 virtual void ConstructProcess() override;
40
41 private:
43 G4TheoFSGenerator* m_ftfp;
44
46 G4FTFModel* m_stringModel;
47
49 G4ExcitedStringDecay* m_stringDecay;
50
52 G4LundStringFragmentation* m_fragModel;
53
55 G4GeneratorPrecompoundInterface* m_preCompoundModel;
56 };
57
58 } // end of namespace Simulation
59
61} // end of namespace Belle2
virtual void ConstructParticle() override
Build processes, models, cross sections used in physics list.
G4GeneratorPrecompoundInterface * m_preCompoundModel
Precompound model to deexcite post-collision nucleus.
G4TheoFSGenerator * m_ftfp
Final state generator for QCD string models.
G4FTFModel * m_stringModel
Fritiof string model.
G4ExcitedStringDecay * m_stringDecay
Model to decay strings into hadrons.
virtual void ConstructProcess() override
Build all particle types used in physics list (empty in this class)
G4LundStringFragmentation * m_fragModel
Lund string fragmentation model.
Abstract base class for different kinds of events.