Geant4 9.6.0
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
G4ExcitedNucleonConstructor Class Reference

#include <G4ExcitedNucleonConstructor.hh>

+ Inheritance diagram for G4ExcitedNucleonConstructor:

Public Types

enum  { NStates = 15 }
 
enum  { NumberOfDecayModes = 9 }
 

Public Member Functions

 G4ExcitedNucleonConstructor ()
 
virtual ~G4ExcitedNucleonConstructor ()
 
- Public Member Functions inherited from G4ExcitedBaryonConstructor
 G4ExcitedBaryonConstructor (G4int nStates=0, G4int isoSpin=0)
 
virtual ~G4ExcitedBaryonConstructor ()
 
virtual void Construct (G4int indexOfState=-1)
 

Protected Member Functions

virtual G4int GetEncoding (G4int iIsoSpin3, G4int idxState)
 
virtual G4bool Exist (G4int)
 
virtual G4int GetQuarkContents (G4int, G4int)
 
virtual G4String GetName (G4int iIso3, G4int iState)
 
virtual G4String GetMultipletName (G4int iState)
 
virtual G4double GetMass (G4int state, G4int iso)
 
virtual G4double GetWidth (G4int state, G4int iso)
 
virtual G4int GetiSpin (G4int iState)
 
virtual G4int GetiParity (G4int iState)
 
virtual G4int GetEncodingOffset (G4int iState)
 
virtual G4DecayTableCreateDecayTable (const G4String &name, G4int iIso3, G4int iState, G4bool fAnti=false)
 
- Protected Member Functions inherited from G4ExcitedBaryonConstructor
virtual void ConstructParticle (G4int indexOfState)
 
virtual void ConstructAntiParticle (G4int indexOfState)
 
virtual G4double GetCharge (G4int iIsoSpin3)
 
virtual G4int GetEncoding (G4int iIsoSpin3, G4int idxState)
 
virtual G4bool Exist (G4int)=0
 
virtual G4int GetQuarkContents (G4int, G4int)=0
 
virtual G4String GetName (G4int, G4int)=0
 
virtual G4String GetMultipletName (G4int)=0
 
virtual G4double GetMass (G4int state, G4int iso)=0
 
virtual G4double GetWidth (G4int state, G4int iso)=0
 
virtual G4int GetiSpin (G4int)=0
 
virtual G4int GetiParity (G4int)=0
 
virtual G4int GetEncodingOffset (G4int)=0
 
virtual G4DecayTableCreateDecayTable (const G4String &, G4int, G4int, G4bool)=0
 

Additional Inherited Members

- Protected Attributes inherited from G4ExcitedBaryonConstructor
G4int NumberOfStates
 
G4int iIsoSpin
 
const G4String type
 
const G4int iConjugation
 
const G4int iGParity
 
const G4int leptonNumber
 
const G4int baryonNumber
 

Detailed Description

Definition at line 43 of file G4ExcitedNucleonConstructor.hh.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
NStates 

Definition at line 91 of file G4ExcitedNucleonConstructor.hh.

◆ anonymous enum

anonymous enum
Enumerator
NumberOfDecayModes 

Definition at line 104 of file G4ExcitedNucleonConstructor.hh.

Constructor & Destructor Documentation

◆ G4ExcitedNucleonConstructor()

G4ExcitedNucleonConstructor::G4ExcitedNucleonConstructor ( )

Definition at line 48 of file G4ExcitedNucleonConstructor.cc.

◆ ~G4ExcitedNucleonConstructor()

G4ExcitedNucleonConstructor::~G4ExcitedNucleonConstructor ( )
virtual

Definition at line 54 of file G4ExcitedNucleonConstructor.cc.

55{
56}

Member Function Documentation

◆ CreateDecayTable()

G4DecayTable * G4ExcitedNucleonConstructor::CreateDecayTable ( const G4String name,
G4int  iIso3,
G4int  iState,
G4bool  fAnti = false 
)
protectedvirtual

Implements G4ExcitedBaryonConstructor.

Definition at line 87 of file G4ExcitedNucleonConstructor.cc.

92{
93 // create decay table
94 G4DecayTable* decayTable = new G4DecayTable();
95
96 G4double br;
97 if ( (br=bRatio[iState][NGamma]) >0.0) {
98 AddNGammaMode( decayTable, parentName, br, iIso3, fAnti);
99 }
100
101 if ( (br=bRatio[iState][NPi]) >0.0) {
102 AddNPiMode( decayTable, parentName, br, iIso3, fAnti);
103 }
104
105 if ( (br=bRatio[iState][NEta]) >0.0) {
106 AddNEtaMode( decayTable, parentName, br, iIso3, fAnti);
107 }
108
109 if ( (br=bRatio[iState][NOmega]) >0.0) {
110 AddNOmegaMode( decayTable, parentName, br, iIso3, fAnti);
111 }
112
113 if ( (br=bRatio[iState][NRho]) >0.0) {
114 AddNRhoMode( decayTable, parentName, br, iIso3, fAnti);
115 }
116
117 if ( (br=bRatio[iState][N2Pi]) >0.0) {
118 AddN2PiMode( decayTable, parentName, br, iIso3, fAnti);
119 }
120
121 if ( (br=bRatio[iState][DeltaPi]) >0.0) {
122 AddDeltaPiMode( decayTable, parentName, br, iIso3, fAnti);
123 }
124
125 if ( (br=bRatio[iState][NStarPi]) >0.0) {
126 AddNStarPiMode( decayTable, parentName, br, iIso3, fAnti);
127 }
128
129 if ( (br=bRatio[iState][LambdaK]) >0.0) {
130 AddLambdaKMode( decayTable, parentName, br, iIso3, fAnti);
131 }
132
133 return decayTable;
134}
double G4double
Definition: G4Types.hh:64

◆ Exist()

virtual G4bool G4ExcitedNucleonConstructor::Exist ( G4int  )
inlineprotectedvirtual

Implements G4ExcitedBaryonConstructor.

Definition at line 56 of file G4ExcitedNucleonConstructor.hh.

56{return true;}

◆ GetEncoding()

G4int G4ExcitedNucleonConstructor::GetEncoding ( G4int  iIsoSpin3,
G4int  idxState 
)
protectedvirtual

Reimplemented from G4ExcitedBaryonConstructor.

Definition at line 58 of file G4ExcitedNucleonConstructor.cc.

59{
61 // Delta has exceptinal encoding
62 if ((idxState==1)||(idxState==6)||(idxState==8)||(idxState==9)||(idxState==12) ) {
63 encoding = GetEncodingOffset(idxState);
64 if ((iIsoSpin3==3)||(iIsoSpin3==-3)) {
65 // normal encoding
66 encoding += 1000*GetQuarkContents(0, iIsoSpin3);
67 encoding += 100*GetQuarkContents(1, iIsoSpin3);
68 encoding += 10*GetQuarkContents(2, iIsoSpin3);
69 } else if (iIsoSpin3== +1){
70 // 1st <--> 2nd quark
71 encoding += 1000*GetQuarkContents(0, iIsoSpin3);
72 encoding += 10*GetQuarkContents(1, iIsoSpin3);
73 encoding += 100*GetQuarkContents(2, iIsoSpin3);
74 } else if (iIsoSpin3== -1){
75 // 1st <--> 0th quark
76 encoding += 100*GetQuarkContents(0, iIsoSpin3);
77 encoding += 1000*GetQuarkContents(1, iIsoSpin3);
78 encoding += 10*GetQuarkContents(2, iIsoSpin3);
79 }
80 encoding += GetiSpin(idxState) +1;
81 } else {
83 }
84 return encoding;
85}
int G4int
Definition: G4Types.hh:66
virtual G4int GetEncoding(G4int iIsoSpin3, G4int idxState)
virtual G4int GetQuarkContents(G4int, G4int)
virtual G4int GetiSpin(G4int iState)
virtual G4int GetEncodingOffset(G4int iState)
#define encoding
Definition: xmlparse.cc:588

◆ GetEncodingOffset()

G4int G4ExcitedNucleonConstructor::GetEncodingOffset ( G4int  iState)
inlineprotectedvirtual

Implements G4ExcitedBaryonConstructor.

Definition at line 137 of file G4ExcitedNucleonConstructor.hh.

138{
139 return encodingOffset[iState];
140}

Referenced by GetEncoding().

◆ GetiParity()

G4int G4ExcitedNucleonConstructor::GetiParity ( G4int  iState)
inlineprotectedvirtual

Implements G4ExcitedBaryonConstructor.

Definition at line 131 of file G4ExcitedNucleonConstructor.hh.

132{
133 return iParity[iState];
134}

◆ GetiSpin()

G4int G4ExcitedNucleonConstructor::GetiSpin ( G4int  iState)
inlineprotectedvirtual

Implements G4ExcitedBaryonConstructor.

Definition at line 125 of file G4ExcitedNucleonConstructor.hh.

126{
127 return iSpin[iState];
128}

Referenced by GetEncoding().

◆ GetMass()

G4double G4ExcitedNucleonConstructor::GetMass ( G4int  state,
G4int  iso 
)
inlineprotectedvirtual

Implements G4ExcitedBaryonConstructor.

Definition at line 113 of file G4ExcitedNucleonConstructor.hh.

114{
115 return mass[iState];
116}

◆ GetMultipletName()

G4String G4ExcitedNucleonConstructor::GetMultipletName ( G4int  iState)
inlineprotectedvirtual

Implements G4ExcitedBaryonConstructor.

Definition at line 168 of file G4ExcitedNucleonConstructor.hh.

169{
170 return name[iState];
171}

◆ GetName()

G4String G4ExcitedNucleonConstructor::GetName ( G4int  iIso3,
G4int  iState 
)
inlineprotectedvirtual

Implements G4ExcitedBaryonConstructor.

Definition at line 174 of file G4ExcitedNucleonConstructor.hh.

175{
176 G4String particle = name[iState];
177 if ( iIso3 == -1 ){
178 particle += "0";
179 } else {
180 particle += "+";
181 }
182 return particle;
183}

◆ GetQuarkContents()

G4int G4ExcitedNucleonConstructor::GetQuarkContents ( G4int  iQ,
G4int  iIso3 
)
inlineprotectedvirtual

Implements G4ExcitedBaryonConstructor.

Definition at line 143 of file G4ExcitedNucleonConstructor.hh.

144{
145 // Quark contents
146 // iIso3 = -1 : udd
147 // iIso3 = +1 : uud
148 G4int quark=0;
149 if ( iQ == 0 ){
150 // u-quark
151 quark = 2;
152 } else if ( iQ == 2 ){
153 // d-quark
154 quark = 1;
155 } else {
156 if ( iIso3 == -1 ){
157 // d-quark
158 quark = 1;
159 } else {
160 // u-quark
161 quark = 2;
162 }
163 }
164 return quark;
165}

Referenced by GetEncoding().

◆ GetWidth()

G4double G4ExcitedNucleonConstructor::GetWidth ( G4int  state,
G4int  iso 
)
inlineprotectedvirtual

Implements G4ExcitedBaryonConstructor.

Definition at line 119 of file G4ExcitedNucleonConstructor.hh.

120{
121 return width[iState];
122}

The documentation for this class was generated from the following files: