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

#include <G4ExcitedDeltaConstructor.hh>

+ Inheritance diagram for G4ExcitedDeltaConstructor:

Public Types

enum  { NStates = 9 }
 
enum  { NumberOfDecayModes = 5 }
 

Public Member Functions

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

Protected Member Functions

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

Additional Inherited Members

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

Detailed Description

Definition at line 38 of file G4ExcitedDeltaConstructor.hh.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
NStates 

Definition at line 43 of file G4ExcitedDeltaConstructor.hh.

◆ anonymous enum

anonymous enum
Enumerator
NumberOfDecayModes 

Definition at line 48 of file G4ExcitedDeltaConstructor.hh.

Constructor & Destructor Documentation

◆ G4ExcitedDeltaConstructor()

G4ExcitedDeltaConstructor::G4ExcitedDeltaConstructor ( )

Definition at line 43 of file G4ExcitedDeltaConstructor.cc.

44 : G4ExcitedBaryonConstructor(NStates, DeltaIsoSpin)
45{}
G4ExcitedBaryonConstructor(G4int nStates=0, G4int isoSpin=0)

◆ ~G4ExcitedDeltaConstructor()

G4ExcitedDeltaConstructor::~G4ExcitedDeltaConstructor ( )
overridedefault

Member Function Documentation

◆ CreateDecayTable()

G4DecayTable * G4ExcitedDeltaConstructor::CreateDecayTable ( const G4String & name,
G4int iIso3,
G4int iState,
G4bool fAnti = false )
overrideprotectedvirtual

Implements G4ExcitedBaryonConstructor.

Definition at line 79 of file G4ExcitedDeltaConstructor.cc.

81{
82 // create decay table
83 auto decayTable = new G4DecayTable();
84
85 G4double br;
86 if ((br = bRatio[iState][NGamma]) > 0.0) {
87 AddNGammaMode(decayTable, parentName, br, iIso3, fAnti);
88 }
89
90 if ((br = bRatio[iState][NPi]) > 0.0) {
91 AddNPiMode(decayTable, parentName, br, iIso3, fAnti);
92 }
93
94 if ((br = bRatio[iState][NRho]) > 0.0) {
95 AddNRhoMode(decayTable, parentName, br, iIso3, fAnti);
96 }
97
98 if ((br = bRatio[iState][DeltaPi]) > 0.0) {
99 AddDeltaPiMode(decayTable, parentName, br, iIso3, fAnti);
100 }
101
102 if ((br = bRatio[iState][NStarPi]) > 0.0) {
103 AddNStarPiMode(decayTable, parentName, br, iIso3, fAnti);
104 }
105
106 return decayTable;
107}
double G4double
Definition G4Types.hh:83

◆ Exist()

G4bool G4ExcitedDeltaConstructor::Exist ( G4int )
inlineoverrideprotectedvirtual

Implements G4ExcitedBaryonConstructor.

Definition at line 60 of file G4ExcitedDeltaConstructor.hh.

60{ return true; }

◆ GetEncoding()

G4int G4ExcitedDeltaConstructor::GetEncoding ( G4int iIsoSpin3,
G4int idxState )
overrideprotectedvirtual

Reimplemented from G4ExcitedBaryonConstructor.

Definition at line 47 of file G4ExcitedDeltaConstructor.cc.

48{
50 // Delta has exceptinal encoding
51 if ((idxState == 1) || (idxState == 3) || (idxState == 4) || (idxState == 5) || (idxState == 7)) {
52 encoding = GetEncodingOffset(idxState);
53 if ((iIsoSpin3 == 3) || (iIsoSpin3 == -3)) {
54 // normal encoding
55 encoding += 1000 * GetQuarkContents(0, iIsoSpin3);
56 encoding += 100 * GetQuarkContents(1, iIsoSpin3);
57 encoding += 10 * GetQuarkContents(2, iIsoSpin3);
58 }
59 else if (iIsoSpin3 == +1) {
60 // 1st <--> 2nd quark
61 encoding += 1000 * GetQuarkContents(0, iIsoSpin3);
62 encoding += 10 * GetQuarkContents(1, iIsoSpin3);
63 encoding += 100 * GetQuarkContents(2, iIsoSpin3);
64 }
65 else if (iIsoSpin3 == -1) {
66 // 1st <--> 0th quark
67 encoding += 100 * GetQuarkContents(0, iIsoSpin3);
68 encoding += 1000 * GetQuarkContents(1, iIsoSpin3);
69 encoding += 10 * GetQuarkContents(2, iIsoSpin3);
70 }
71 encoding += GetiSpin(idxState) + 1;
72 }
73 else {
75 }
76 return encoding;
77}
int G4int
Definition G4Types.hh:85
virtual G4int GetEncoding(G4int iIsoSpin3, G4int idxState)
G4int GetiSpin(G4int iState) override
G4int GetEncodingOffset(G4int iState) override
G4int GetQuarkContents(G4int, G4int) override

◆ GetEncodingOffset()

G4int G4ExcitedDeltaConstructor::GetEncodingOffset ( G4int iState)
inlineoverrideprotectedvirtual

Implements G4ExcitedBaryonConstructor.

Definition at line 132 of file G4ExcitedDeltaConstructor.hh.

133{
134 return encodingOffset[iState];
135}

Referenced by GetEncoding().

◆ GetiParity()

G4int G4ExcitedDeltaConstructor::GetiParity ( G4int iState)
inlineoverrideprotectedvirtual

Implements G4ExcitedBaryonConstructor.

Definition at line 127 of file G4ExcitedDeltaConstructor.hh.

128{
129 return iParity[iState];
130}

◆ GetiSpin()

G4int G4ExcitedDeltaConstructor::GetiSpin ( G4int iState)
inlineoverrideprotectedvirtual

Implements G4ExcitedBaryonConstructor.

Definition at line 122 of file G4ExcitedDeltaConstructor.hh.

123{
124 return iSpin[iState];
125}

Referenced by GetEncoding().

◆ GetMass()

G4double G4ExcitedDeltaConstructor::GetMass ( G4int state,
G4int iso )
inlineoverrideprotectedvirtual

Implements G4ExcitedBaryonConstructor.

Definition at line 112 of file G4ExcitedDeltaConstructor.hh.

113{
114 return mass[iState];
115}

◆ GetMultipletName()

G4String G4ExcitedDeltaConstructor::GetMultipletName ( G4int iState)
inlineoverrideprotectedvirtual

Implements G4ExcitedBaryonConstructor.

Definition at line 178 of file G4ExcitedDeltaConstructor.hh.

179{
180 return name[iState];
181}

◆ GetName()

G4String G4ExcitedDeltaConstructor::GetName ( G4int iIso3,
G4int iState )
inlineoverrideprotectedvirtual

Implements G4ExcitedBaryonConstructor.

Definition at line 183 of file G4ExcitedDeltaConstructor.hh.

184{
185 G4String particle = name[iState];
186 if (iIso3 == -3) {
187 particle += "-";
188 }
189 else if (iIso3 == -1) {
190 particle += "0";
191 }
192 else if (iIso3 == +1) {
193 particle += "+";
194 }
195 else {
196 particle += "++";
197 }
198 return particle;
199}

◆ GetQuarkContents()

G4int G4ExcitedDeltaConstructor::GetQuarkContents ( G4int iQ,
G4int iIso3 )
inlineoverrideprotectedvirtual

Implements G4ExcitedBaryonConstructor.

Definition at line 137 of file G4ExcitedDeltaConstructor.hh.

138{
139 // Quark contents
140 // iIso3 = +3 : uuu
141 // iIso3 = +1 : uud
142 // iIso3 = -1 : udd
143 // iIso3 = -3 : ddd
144 G4int quark = 0;
145 if (iQ == 0) {
146 if (iIso3 == -3) {
147 // d-quark
148 quark = 1;
149 }
150 else {
151 // u-quark
152 quark = 2;
153 }
154 }
155 else if (iQ == 2) {
156 if (iIso3 == +3) {
157 // u-quark
158 quark = 2;
159 }
160 else {
161 // d-quark
162 quark = 1;
163 }
164 }
165 else {
166 if ((iIso3 == -1) || (iIso3 == -3)) {
167 // d-quark
168 quark = 1;
169 }
170 else {
171 // u-quark
172 quark = 2;
173 }
174 }
175 return quark;
176}

Referenced by GetEncoding().

◆ GetWidth()

G4double G4ExcitedDeltaConstructor::GetWidth ( G4int state,
G4int iso )
inlineoverrideprotectedvirtual

Implements G4ExcitedBaryonConstructor.

Definition at line 117 of file G4ExcitedDeltaConstructor.hh.

118{
119 return width[iState];
120}

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