G4ExcitedBaryonConstructor Class Reference

#include <G4ExcitedBaryonConstructor.hh>

Inheritance diagram for G4ExcitedBaryonConstructor:

G4ExcitedDeltaConstructor G4ExcitedLambdaConstructor G4ExcitedNucleonConstructor G4ExcitedSigmaConstructor G4ExcitedXiConstructor

Public Member Functions

 G4ExcitedBaryonConstructor (G4int nStates=0, G4int isoSpin=0)
virtual ~G4ExcitedBaryonConstructor ()
virtual void Construct (G4int indexOfState=-1)

Protected Member Functions

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

Protected Attributes

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 G4ExcitedBaryonConstructor.hh.


Constructor & Destructor Documentation

G4ExcitedBaryonConstructor::G4ExcitedBaryonConstructor ( G4int  nStates = 0,
G4int  isoSpin = 0 
)

Definition at line 49 of file G4ExcitedBaryonConstructor.cc.

00051     :    NumberOfStates(nStates), iIsoSpin(isoSpin), type("baryon"),
00052          iConjugation(0), iGParity(0), leptonNumber(0), baryonNumber(1)
00053 {
00054 }

G4ExcitedBaryonConstructor::~G4ExcitedBaryonConstructor (  )  [virtual]

Definition at line 56 of file G4ExcitedBaryonConstructor.cc.

00057 {
00058 }


Member Function Documentation

void G4ExcitedBaryonConstructor::Construct ( G4int  indexOfState = -1  )  [virtual]

Definition at line 60 of file G4ExcitedBaryonConstructor.cc.

References ConstructAntiParticle(), ConstructParticle(), G4cerr, G4endl, G4ParticleTable::GetParticleTable(), and NumberOfStates.

Referenced by G4ShortLivedConstructor::ConstructResonances().

00061 {
00062   if (idx < 0 ) {
00063     for (G4int state=0; state< NumberOfStates; state +=1) {
00064        ConstructParticle(state);
00065        ConstructAntiParticle(state);
00066      }
00067   } else if (idx < NumberOfStates) {
00068     ConstructParticle(idx);
00069     ConstructAntiParticle(idx);
00070   } else {
00071 #ifdef G4VERBOSE
00072     if (G4ParticleTable::GetParticleTable()->GetVerboseLevel()>1) {
00073       G4cerr << "G4ExcitedBaryonConstructor::Construct()";
00074       G4cerr << "   illegal index os state = " << idx << G4endl;
00075     }
00076 #endif
00077   }
00078 }

void G4ExcitedBaryonConstructor::ConstructAntiParticle ( G4int  indexOfState  )  [protected, virtual]

Definition at line 114 of file G4ExcitedBaryonConstructor.cc.

References baryonNumber, CreateDecayTable(), Exist(), GetCharge(), GetEncoding(), GetiParity(), GetiSpin(), GetMass(), GetMultipletName(), GetName(), GetWidth(), iConjugation, iGParity, iIsoSpin, leptonNumber, G4ParticleDefinition::SetDecayTable(), and type.

Referenced by Construct().

00115 {
00116   if (!Exist(idx) ) return;
00117 
00118   //    Construct Resonace particles as dynamic object
00119   //    Arguments for constructor are as follows
00120   //               name             mass          width         charge
00121   //             2*spin           parity  C-conjugation
00122   //          2*Isospin       2*Isospin3       G-parity
00123   //               type    lepton number  baryon number   PDG encoding
00124   //             stable         lifetime    decay table 
00125   
00126   
00127   G4String name;
00128   G4ParticleDefinition* particle;
00129   
00130   for (G4int iIso3 = -1*iIsoSpin; iIso3 <= iIsoSpin; iIso3 +=2) {
00131     name = GetName(iIso3, idx);
00132     name = "anti_" + name;
00133 
00134     particle = new G4ExcitedBaryons(            
00135         name, GetMass(idx,iIso3), GetWidth(idx,iIso3), -1.0*GetCharge(iIso3), 
00136         GetiSpin(idx), GetiParity(idx),  iConjugation,       
00137              iIsoSpin,        -1*iIso3,      iGParity,
00138                  type,    leptonNumber, 
00139                                        -1*baryonNumber, 
00140                                                    -1*GetEncoding( iIso3,idx),
00141                 false,         0.0,   NULL
00142                                     );
00143 
00144     ((G4ExcitedBaryons*)(particle))->SetMultipletName(GetMultipletName(idx));
00145     particle->SetDecayTable(CreateDecayTable( name, iIso3, idx, true));
00146   }
00147    
00148 }

void G4ExcitedBaryonConstructor::ConstructParticle ( G4int  indexOfState  )  [protected, virtual]

Definition at line 83 of file G4ExcitedBaryonConstructor.cc.

References baryonNumber, CreateDecayTable(), Exist(), GetCharge(), GetEncoding(), GetiParity(), GetiSpin(), GetMass(), GetMultipletName(), GetName(), GetWidth(), iConjugation, iGParity, iIsoSpin, leptonNumber, G4ParticleDefinition::SetDecayTable(), and type.

Referenced by Construct().

00084 {
00085   if (!Exist(idx) ) return;
00086 
00087   //    Construct Resonace particles as dynamic object
00088   //    Arguments for constructor are as follows
00089   //               name             mass          width         charge
00090   //             2*spin           parity  C-conjugation
00091   //          2*Isospin       2*Isospin3       G-parity
00092   //               type    lepton number  baryon number   PDG encoding
00093   //             stable         lifetime    decay table 
00094   
00095   
00096   G4String name;
00097   G4ParticleDefinition* particle;
00098   
00099   for (G4int iIso3 = -1*iIsoSpin; iIso3 <= iIsoSpin; iIso3 +=2) {
00100     name= GetName(iIso3, idx);
00101 
00102     particle = new G4ExcitedBaryons(            
00103                  name, GetMass(idx,iIso3), GetWidth(idx,iIso3), GetCharge(iIso3), 
00104         GetiSpin(idx), GetiParity(idx),  iConjugation,       
00105              iIsoSpin,           iIso3,      iGParity,
00106                  type,    leptonNumber,  baryonNumber, GetEncoding( iIso3,idx),
00107                 false,             0.0,   NULL
00108                                     );
00109     ((G4ExcitedBaryons*)(particle))->SetMultipletName(GetMultipletName(idx));
00110     particle->SetDecayTable(CreateDecayTable( name, iIso3, idx, false));
00111   }
00112 }

virtual G4DecayTable* G4ExcitedBaryonConstructor::CreateDecayTable ( const G4String ,
G4int  ,
G4int  ,
G4bool   
) [protected, pure virtual]

Implemented in G4ExcitedDeltaConstructor, G4ExcitedLambdaConstructor, G4ExcitedNucleonConstructor, G4ExcitedSigmaConstructor, and G4ExcitedXiConstructor.

Referenced by ConstructAntiParticle(), and ConstructParticle().

virtual G4bool G4ExcitedBaryonConstructor::Exist ( G4int   )  [protected, pure virtual]

Implemented in G4ExcitedDeltaConstructor, G4ExcitedLambdaConstructor, G4ExcitedNucleonConstructor, G4ExcitedSigmaConstructor, and G4ExcitedXiConstructor.

Referenced by ConstructAntiParticle(), and ConstructParticle().

G4double G4ExcitedBaryonConstructor::GetCharge ( G4int  iIsoSpin3  )  [protected, virtual]

Definition at line 150 of file G4ExcitedBaryonConstructor.cc.

References GetQuarkContents().

Referenced by ConstructAntiParticle(), and ConstructParticle().

00151 {
00152   G4double charge = 0.0;
00153   static G4double quark_charge[7] = 
00154   {
00155     0., -1./3., +2./3., -1./3., +2./3., -1./3., +2./3.
00156   };
00157   
00158   for (G4int idx=0; idx<3; idx+=1){
00159     charge += quark_charge[GetQuarkContents(idx, iIsoSpin3)]*eplus;
00160   }
00161   return charge;
00162 }

G4int G4ExcitedBaryonConstructor::GetEncoding ( G4int  iIsoSpin3,
G4int  idxState 
) [protected, virtual]

Reimplemented in G4ExcitedDeltaConstructor, and G4ExcitedNucleonConstructor.

Definition at line 164 of file G4ExcitedBaryonConstructor.cc.

References encoding, GetEncodingOffset(), GetiSpin(), and GetQuarkContents().

Referenced by ConstructAntiParticle(), ConstructParticle(), G4ExcitedNucleonConstructor::GetEncoding(), and G4ExcitedDeltaConstructor::GetEncoding().

00165 {
00166   G4int encoding = GetEncodingOffset(idxState);
00167   encoding += 1000*GetQuarkContents(0, iIsoSpin3);
00168   encoding +=  100*GetQuarkContents(1, iIsoSpin3);
00169   encoding +=   10*GetQuarkContents(2, iIsoSpin3);
00170   if (GetiSpin(idxState) <9) {
00171     encoding += GetiSpin(idxState) +1;
00172   } else {
00173     encoding += (GetiSpin(idxState) +1)*10000000;
00174   }
00175   return encoding;
00176 }

virtual G4int G4ExcitedBaryonConstructor::GetEncodingOffset ( G4int   )  [protected, pure virtual]

Implemented in G4ExcitedDeltaConstructor, G4ExcitedLambdaConstructor, G4ExcitedNucleonConstructor, G4ExcitedSigmaConstructor, and G4ExcitedXiConstructor.

Referenced by GetEncoding().

virtual G4int G4ExcitedBaryonConstructor::GetiParity ( G4int   )  [protected, pure virtual]

Implemented in G4ExcitedDeltaConstructor, G4ExcitedLambdaConstructor, G4ExcitedNucleonConstructor, G4ExcitedSigmaConstructor, and G4ExcitedXiConstructor.

Referenced by ConstructAntiParticle(), and ConstructParticle().

virtual G4int G4ExcitedBaryonConstructor::GetiSpin ( G4int   )  [protected, pure virtual]

Implemented in G4ExcitedDeltaConstructor, G4ExcitedLambdaConstructor, G4ExcitedNucleonConstructor, G4ExcitedSigmaConstructor, and G4ExcitedXiConstructor.

Referenced by ConstructAntiParticle(), ConstructParticle(), and GetEncoding().

virtual G4double G4ExcitedBaryonConstructor::GetMass ( G4int  state,
G4int  iso 
) [protected, pure virtual]

Implemented in G4ExcitedDeltaConstructor, G4ExcitedLambdaConstructor, G4ExcitedNucleonConstructor, G4ExcitedSigmaConstructor, and G4ExcitedXiConstructor.

Referenced by ConstructAntiParticle(), and ConstructParticle().

virtual G4String G4ExcitedBaryonConstructor::GetMultipletName ( G4int   )  [protected, pure virtual]

Implemented in G4ExcitedDeltaConstructor, G4ExcitedLambdaConstructor, G4ExcitedNucleonConstructor, G4ExcitedSigmaConstructor, and G4ExcitedXiConstructor.

Referenced by ConstructAntiParticle(), and ConstructParticle().

virtual G4String G4ExcitedBaryonConstructor::GetName ( G4int  ,
G4int   
) [protected, pure virtual]

Implemented in G4ExcitedDeltaConstructor, G4ExcitedLambdaConstructor, G4ExcitedNucleonConstructor, G4ExcitedSigmaConstructor, and G4ExcitedXiConstructor.

Referenced by ConstructAntiParticle(), and ConstructParticle().

virtual G4int G4ExcitedBaryonConstructor::GetQuarkContents ( G4int  ,
G4int   
) [protected, pure virtual]

Implemented in G4ExcitedDeltaConstructor, G4ExcitedLambdaConstructor, G4ExcitedNucleonConstructor, G4ExcitedSigmaConstructor, and G4ExcitedXiConstructor.

Referenced by GetCharge(), and GetEncoding().

virtual G4double G4ExcitedBaryonConstructor::GetWidth ( G4int  state,
G4int  iso 
) [protected, pure virtual]

Implemented in G4ExcitedDeltaConstructor, G4ExcitedLambdaConstructor, G4ExcitedNucleonConstructor, G4ExcitedSigmaConstructor, and G4ExcitedXiConstructor.

Referenced by ConstructAntiParticle(), and ConstructParticle().


Field Documentation

const G4int G4ExcitedBaryonConstructor::baryonNumber [protected]

Definition at line 71 of file G4ExcitedBaryonConstructor.hh.

Referenced by ConstructAntiParticle(), and ConstructParticle().

const G4int G4ExcitedBaryonConstructor::iConjugation [protected]

Definition at line 68 of file G4ExcitedBaryonConstructor.hh.

Referenced by ConstructAntiParticle(), and ConstructParticle().

const G4int G4ExcitedBaryonConstructor::iGParity [protected]

Definition at line 69 of file G4ExcitedBaryonConstructor.hh.

Referenced by ConstructAntiParticle(), and ConstructParticle().

G4int G4ExcitedBaryonConstructor::iIsoSpin [protected]

Definition at line 65 of file G4ExcitedBaryonConstructor.hh.

Referenced by ConstructAntiParticle(), and ConstructParticle().

const G4int G4ExcitedBaryonConstructor::leptonNumber [protected]

Definition at line 70 of file G4ExcitedBaryonConstructor.hh.

Referenced by ConstructAntiParticle(), and ConstructParticle().

G4int G4ExcitedBaryonConstructor::NumberOfStates [protected]

Definition at line 64 of file G4ExcitedBaryonConstructor.hh.

Referenced by Construct().

const G4String G4ExcitedBaryonConstructor::type [protected]

Definition at line 67 of file G4ExcitedBaryonConstructor.hh.

Referenced by ConstructAntiParticle(), and ConstructParticle().


The documentation for this class was generated from the following files:
Generated on Mon May 27 17:51:57 2013 for Geant4 by  doxygen 1.4.7