Geant4.10
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Types | Public Member Functions | Protected Member Functions
G4ExcitedNucleonConstructor Class Reference

#include <G4ExcitedNucleonConstructor.hh>

Inheritance diagram for G4ExcitedNucleonConstructor:
G4ExcitedBaryonConstructor

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)
 

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
Enumerator
NStates 

Definition at line 91 of file G4ExcitedNucleonConstructor.hh.

anonymous enum
Enumerator
NumberOfDecayModes 

Definition at line 104 of file G4ExcitedNucleonConstructor.hh.

Constructor & Destructor Documentation

G4ExcitedNucleonConstructor::G4ExcitedNucleonConstructor ( )

Definition at line 47 of file G4ExcitedNucleonConstructor.cc.

47  :
48  G4ExcitedBaryonConstructor(NStates, NucleonIsoSpin)
49 {
50 
51 }
G4ExcitedBaryonConstructor(G4int nStates=0, G4int isoSpin=0)
G4ExcitedNucleonConstructor::~G4ExcitedNucleonConstructor ( )
virtual

Definition at line 53 of file G4ExcitedNucleonConstructor.cc.

54 {
55 }

Member Function Documentation

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

Implements G4ExcitedBaryonConstructor.

Definition at line 86 of file G4ExcitedNucleonConstructor.cc.

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

Implements G4ExcitedBaryonConstructor.

Definition at line 56 of file G4ExcitedNucleonConstructor.hh.

56 {return true;}
G4int G4ExcitedNucleonConstructor::GetEncoding ( G4int  iIsoSpin3,
G4int  idxState 
)
protectedvirtual

Reimplemented from G4ExcitedBaryonConstructor.

Definition at line 57 of file G4ExcitedNucleonConstructor.cc.

References encoding, G4ExcitedBaryonConstructor::GetEncoding(), GetEncodingOffset(), GetiSpin(), and GetQuarkContents().

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

Implements G4ExcitedBaryonConstructor.

Definition at line 137 of file G4ExcitedNucleonConstructor.hh.

Referenced by GetEncoding().

138 {
139  return encodingOffset[iState];
140 }
G4int G4ExcitedNucleonConstructor::GetiParity ( G4int  iState)
inlineprotectedvirtual

Implements G4ExcitedBaryonConstructor.

Definition at line 131 of file G4ExcitedNucleonConstructor.hh.

132 {
133  return iParity[iState];
134 }
G4int G4ExcitedNucleonConstructor::GetiSpin ( G4int  iState)
inlineprotectedvirtual

Implements G4ExcitedBaryonConstructor.

Definition at line 125 of file G4ExcitedNucleonConstructor.hh.

Referenced by GetEncoding().

126 {
127  return iSpin[iState];
128 }
G4double G4ExcitedNucleonConstructor::GetMass ( G4int  state,
G4int  iso 
)
inlineprotectedvirtual

Implements G4ExcitedBaryonConstructor.

Definition at line 113 of file G4ExcitedNucleonConstructor.hh.

114 {
115  return mass[iState];
116 }
G4String G4ExcitedNucleonConstructor::GetMultipletName ( G4int  iState)
inlineprotectedvirtual

Implements G4ExcitedBaryonConstructor.

Definition at line 168 of file G4ExcitedNucleonConstructor.hh.

169 {
170  return name[iState];
171 }
const XML_Char * name
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 }
const XML_Char * name
G4int G4ExcitedNucleonConstructor::GetQuarkContents ( G4int  iQ,
G4int  iIso3 
)
inlineprotectedvirtual

Implements G4ExcitedBaryonConstructor.

Definition at line 143 of file G4ExcitedNucleonConstructor.hh.

Referenced by GetEncoding().

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 }
int G4int
Definition: G4Types.hh:78
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: