ECCE @ EIC Software
Reference for
ECCE @ EIC
simulation and reconstruction software on GitHub
Home page
Related Pages
Modules
Namespaces
Classes
Files
External Links
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
G4QMDReaction.hh
Go to the documentation of this file.
Or view
the newest version in sPHENIX GitHub for file G4QMDReaction.hh
1
//
2
// ********************************************************************
3
// * License and Disclaimer *
4
// * *
5
// * The Geant4 software is copyright of the Copyright Holders of *
6
// * the Geant4 Collaboration. It is provided under the terms and *
7
// * conditions of the Geant4 Software License, included in the file *
8
// * LICENSE and available at http://cern.ch/geant4/license . These *
9
// * include a list of copyright holders. *
10
// * *
11
// * Neither the authors of this software system, nor their employing *
12
// * institutes,nor the agencies providing financial support for this *
13
// * work make any representation or warranty, express or implied, *
14
// * regarding this software system or assume any liability for its *
15
// * use. Please see the license in the file LICENSE and URL above *
16
// * for the full disclaimer and the limitation of liability. *
17
// * *
18
// * This code implementation is the result of the scientific and *
19
// * technical work of the GEANT4 collaboration. *
20
// * By using, copying, modifying or distributing the software (or *
21
// * any work based on the software) you agree to acknowledge its *
22
// * use in resulting scientific publications, and indicate your *
23
// * acceptance of all terms of the Geant4 Software license. *
24
// ********************************************************************
25
//
26
// -------------------------------------------------------------------
27
// GEANT4 Class file
28
//
29
//
30
// File name: G4QMDReaction.hh
31
//
32
// Author: Koi, Tatsumi (tkoi@slac.stanford.edu)
33
//
34
// Creation date: 02 April 2007
35
// -----------------------------------------------------------------------------
36
//
37
// 081107 Add UnUseGEM (then use the default channel of G4Evaporation)
38
// UseFrag (chage criterion of a inelastic reaction)
39
// 090331 Change member shenXS and genspaXS object to pointer
40
//
41
42
#ifndef G4QMDReaction_hh
43
#define G4QMDReaction_hh
44
45
#include "
G4QMDSystem.hh
"
46
#include "
G4QMDCollision.hh
"
47
#include "
G4QMDMeanField.hh
"
48
#include "
G4QMDParticipant.hh
"
49
50
#include "
G4IonsShenCrossSection.hh
"
51
//#include "G4GeneralSpaceNNCrossSection.hh"
52
#include "
G4PiNuclearCrossSection.hh
"
53
54
#include "
G4HadronicInteraction.hh
"
55
56
#include "
G4Evaporation.hh
"
57
#include "
G4ExcitationHandler.hh
"
58
//#include "G4PreCompoundModel.hh"
59
60
class
G4QMDReaction
:
public
G4HadronicInteraction
61
{
62
public
:
63
G4QMDReaction
();
64
~G4QMDReaction
();
65
66
std::vector< G4QMDSystem* >
GetFinalStates
();
67
68
G4HadFinalState
*
ApplyYourself
(
const
G4HadProjectile
&aTrack,
G4Nucleus
& targetNucleus );
69
70
G4ExcitationHandler
*
GetExcitationHandler
(){
return
excitationHandler
; };
71
72
void
UnUseGEM
(){
gem
=
false
;
setEvaporationCh
(); };
73
void
UseFRAG
(){
frag
=
true
; };
74
75
void
SetTMAX
(
G4int
i ){
maxTime
= i; };
76
void
SetDT
(
G4double
t
){
deltaT
=
t
; };
77
void
SetEF
(
G4double
x
){
envelopF
=
x
; };
78
79
virtual
void
ModelDescription
(std::ostream& outFile)
const
;
80
81
private
:
82
//copy is unexpeced
83
void
operator =
(
const
G4QMDReaction
& ){};
84
G4QMDReaction
(
const
G4QMDReaction
& ):
G4HadronicInteraction
(
"QMDModel"
){};
85
86
void
setEvaporationCh
();
87
void
setHighEnergyModel
();
88
89
G4QMDMeanField
*
meanField
;
90
91
G4QMDCollision
*
collision
;
92
93
void
doCollision
();
94
std::vector< G4QMDSystem* >
doClusterJudgment
();
95
96
G4QMDSystem
*
system
;
97
G4double
deltaT
;
98
G4int
maxTime
;
99
G4double
envelopF
;
100
101
G4Evaporation
*
evaporation
;
102
G4ExcitationHandler
*
excitationHandler
;
103
104
// G4VPreCompoundModel* preco;
105
106
107
// b pd_proj pd_targ z_p a_p z_t a_t plab elab
108
// G4double offSetOfCollision( G4double , G4ParticleDefinition* , G4ParticleDefinition* , G4int , G4int , G4int , G4int , G4double , G4double );
109
// b pd_proj pd_targ plab elab bmax boostToCM
110
void
calcOffSetOfCollision
(
G4double
,
const
G4ParticleDefinition
* ,
const
G4ParticleDefinition
* ,
G4double
,
G4double
,
G4double
,
G4ThreeVector
);
111
G4double
coulomb_collision_gamma_proj
;
112
G4double
coulomb_collision_rx_proj
;
113
G4double
coulomb_collision_rz_proj
;
114
G4double
coulomb_collision_px_proj
;
115
G4double
coulomb_collision_pz_proj
;
116
117
G4double
coulomb_collision_gamma_targ
;
118
G4double
coulomb_collision_rx_targ
;
119
G4double
coulomb_collision_rz_targ
;
120
G4double
coulomb_collision_px_targ
;
121
G4double
coulomb_collision_pz_targ
;
122
123
//090331
124
G4IonsShenCrossSection
*
shenXS
;
125
//G4GeneralSpaceNNCrossSection* genspaXS;
126
127
G4PiNuclearCrossSection
*
piNucXS
;
128
129
G4bool
gem
;
130
G4bool
frag
;
131
132
};
133
134
#endif
geant4
tree
geant4-10.6-release
source
processes
hadronic
models
qmd
include
G4QMDReaction.hh
Built by
Jin Huang
. updated:
Wed Jun 29 2022 17:25:50
using
1.8.2 with
ECCE GitHub integration