Geant4  10.00.p03
G4NeutronCaptureXS Class Reference

#include <G4NeutronCaptureXS.hh>

+ Inheritance diagram for G4NeutronCaptureXS:
+ Collaboration diagram for G4NeutronCaptureXS:

Public Member Functions

 G4NeutronCaptureXS ()
 
virtual ~G4NeutronCaptureXS ()
 
virtual G4bool IsElementApplicable (const G4DynamicParticle *, G4int Z, const G4Material *)
 
virtual G4bool IsIsoApplicable (const G4DynamicParticle *, G4int Z, G4int A, const G4Element *, const G4Material *)
 
virtual G4double GetElementCrossSection (const G4DynamicParticle *, G4int Z, const G4Material *mat=0)
 
virtual G4double GetIsoCrossSection (const G4DynamicParticle *, G4int Z, G4int A, const G4Isotope *iso, const G4Element *elm, const G4Material *mat)
 
virtual G4Isotope * SelectIsotope (const G4Element *, G4double kinEnergy)
 
virtual void BuildPhysicsTable (const G4ParticleDefinition &)
 
virtual void CrossSectionDescription (std::ostream &) const
 
- Public Member Functions inherited from G4VCrossSectionDataSet
 G4VCrossSectionDataSet (const G4String &nam="")
 
virtual ~G4VCrossSectionDataSet ()
 
G4double GetCrossSection (const G4DynamicParticle *, const G4Element *, const G4Material *mat=0)
 
G4double ComputeCrossSection (const G4DynamicParticle *, const G4Element *, const G4Material *mat=0)
 
virtual void DumpPhysicsTable (const G4ParticleDefinition &)
 
virtual G4int GetVerboseLevel () const
 
virtual void SetVerboseLevel (G4int value)
 
G4double GetMinKinEnergy () const
 
void SetMinKinEnergy (G4double value)
 
G4double GetMaxKinEnergy () const
 
void SetMaxKinEnergy (G4double value)
 
const G4String & GetName () const
 

Private Member Functions

void Initialise (G4int Z, const char *=0)
 
G4PhysicsVector * RetrieveVector (std::ostringstream &in, G4bool warn)
 
G4double IsoCrossSection (G4double ekin, G4int Z, G4int A)
 
G4NeutronCaptureXS & operator= (const G4NeutronCaptureXS &right)
 
 G4NeutronCaptureXS (const G4NeutronCaptureXS &)
 

Private Attributes

G4double emax
 
G4double elimit
 
G4bool isInitialized
 
G4ElementData data
 
std::vector< G4PhysicsVector * > work
 
std::vector< G4double > temp
 

Static Private Attributes

static const G4int amin [MAXZCAPTURE]
 
static const G4int amax [MAXZCAPTURE]
 

Additional Inherited Members

- Protected Member Functions inherited from G4VCrossSectionDataSet
void SetName (const G4String &)
 
- Protected Attributes inherited from G4VCrossSectionDataSet
G4int verboseLevel
 

Detailed Description

Definition at line 61 of file G4NeutronCaptureXS.hh.

Constructor & Destructor Documentation

G4NeutronCaptureXS::G4NeutronCaptureXS ( )

Definition at line 77 of file G4NeutronCaptureXS.cc.

References data, G4cout, G4endl, isInitialized, MAXZCAPTURE, G4ElementData::SetName(), temp, G4VCrossSectionDataSet::verboseLevel, and work.

+ Here is the call graph for this function:

G4NeutronCaptureXS::~G4NeutronCaptureXS ( )
virtual

Definition at line 92 of file G4NeutronCaptureXS.cc.

G4NeutronCaptureXS::G4NeutronCaptureXS ( const G4NeutronCaptureXS &  )
private

Member Function Documentation

void G4NeutronCaptureXS::BuildPhysicsTable ( const G4ParticleDefinition &  p)
virtual

Reimplemented from G4VCrossSectionDataSet.

Definition at line 235 of file G4NeutronCaptureXS.cc.

References data, FatalException, G4cout, G4endl, G4Exception(), G4ElementData::GetElementData(), G4Element::GetElementTable(), G4Element::GetNumberOfElements(), G4ParticleDefinition::GetParticleName(), Initialise(), isInitialized, MAXZCAPTURE, and G4VCrossSectionDataSet::verboseLevel.

+ Here is the call graph for this function:

void G4NeutronCaptureXS::CrossSectionDescription ( std::ostream &  outFile) const
virtual

Reimplemented from G4VCrossSectionDataSet.

Definition at line 95 of file G4NeutronCaptureXS.cc.

G4double G4NeutronCaptureXS::GetElementCrossSection ( const G4DynamicParticle *  aParticle,
G4int  Z,
const G4Material *  mat = 0 
)
virtual

Reimplemented from G4VCrossSectionDataSet.

Definition at line 120 of file G4NeutronCaptureXS.cc.

References data, e1, elimit, emax, G4PhysicsVector::Energy(), G4cout, G4endl, G4ElementData::GetElementData(), G4DynamicParticle::GetKineticEnergy(), Initialise(), MAXZCAPTURE, G4PhysicsVector::Value(), and G4VCrossSectionDataSet::verboseLevel.

+ Here is the call graph for this function:

G4double G4NeutronCaptureXS::GetIsoCrossSection ( const G4DynamicParticle *  aParticle,
G4int  Z,
G4int  A,
const G4Isotope *  iso,
const G4Element *  elm,
const G4Material *  mat 
)
virtual

Reimplemented from G4VCrossSectionDataSet.

Definition at line 148 of file G4NeutronCaptureXS.cc.

References G4DynamicParticle::GetKineticEnergy(), IsoCrossSection(), and MAXZCAPTURE.

+ Here is the call graph for this function:

void G4NeutronCaptureXS::Initialise ( G4int  Z,
const char *  p = 0 
)
private

Definition at line 272 of file G4NeutronCaptureXS.cc.

References A, G4ElementData::AddComponent(), amax, amin, data, FatalException, G4Exception(), G4ElementData::GetElementData(), G4ElementData::InitialiseForComponent(), G4ElementData::InitialiseForElement(), n, nmax, RetrieveVector(), and work.

Referenced by BuildPhysicsTable(), GetElementCrossSection(), and IsoCrossSection().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4bool G4NeutronCaptureXS::IsElementApplicable ( const G4DynamicParticle *  ,
G4int  Z,
const G4Material *   
)
virtual

Reimplemented from G4VCrossSectionDataSet.

Definition at line 105 of file G4NeutronCaptureXS.cc.

G4bool G4NeutronCaptureXS::IsIsoApplicable ( const G4DynamicParticle *  ,
G4int  Z,
G4int  A,
const G4Element *  ,
const G4Material *   
)
virtual

Reimplemented from G4VCrossSectionDataSet.

Definition at line 112 of file G4NeutronCaptureXS.cc.

G4double G4NeutronCaptureXS::IsoCrossSection ( G4double  ekin,
G4int  Z,
G4int  A 
)
private

Definition at line 161 of file G4NeutronCaptureXS.cc.

References barn, data, e1, elimit, G4PhysicsVector::Energy(), G4cout, G4endl, G4ElementData::GetComponentDataByID(), G4ElementData::GetElementData(), G4PhysicsVector::GetVectorLength(), Initialise(), MeV, G4PhysicsVector::Value(), and G4VCrossSectionDataSet::verboseLevel.

Referenced by GetIsoCrossSection(), and SelectIsotope().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4NeutronCaptureXS& G4NeutronCaptureXS::operator= ( const G4NeutronCaptureXS &  right)
private
G4PhysicsVector * G4NeutronCaptureXS::RetrieveVector ( std::ostringstream &  in,
G4bool  warn 
)
private

Definition at line 315 of file G4NeutronCaptureXS.cc.

References FatalException, G4cout, G4endl, G4Exception(), G4PhysicsLogVector::Retrieve(), and G4VCrossSectionDataSet::verboseLevel.

Referenced by Initialise().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4Isotope * G4NeutronCaptureXS::SelectIsotope ( const G4Element *  anElement,
G4double  kinEnergy 
)
virtual

Reimplemented from G4VCrossSectionDataSet.

Definition at line 190 of file G4NeutronCaptureXS.cc.

References A, amin, data, G4lrint(), G4UniformRand, G4Element::GetIsotopeVector(), G4ElementData::GetNumberOfComponents(), G4Element::GetNumberOfIsotopes(), G4Element::GetRelativeAbundanceVector(), G4Element::GetZ(), IsoCrossSection(), MAXZCAPTURE, nmax, and temp.

+ Here is the call graph for this function:

Member Data Documentation

const G4int G4NeutronCaptureXS::amax
staticprivate
Initial value:
= {0,
0, 0, 7, 0,11,13,15,18, 0, 0,
0, 0, 0,30, 0, 0, 0,40, 0,48,
0, 0, 0, 0, 0,58, 0,64,65,70,
0,76, 0, 0, 0, 0, 0, 0, 0,96,
0, 0, 0, 0, 0, 0,109,116, 0,124,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0,186, 0, 0, 0, 0, 0, 0,
0,208, 0, 0, 0, 0, 0, 0, 0, 0,
0,238}

Definition at line 115 of file G4NeutronCaptureXS.hh.

Referenced by Initialise().

const G4int G4NeutronCaptureXS::amin
staticprivate
Initial value:
= {0,
0, 0, 6, 0,10,12,14,16, 0, 0,
0, 0, 0,28, 0, 0, 0,36, 0,40,
0, 0, 0, 0, 0,54, 0,58,63,64,
0,70, 0, 0, 0, 0, 0, 0, 0,90,
0, 0, 0, 0, 0, 0,107,106, 0,112,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0,180, 0, 0, 0, 0, 0, 0,
0,204, 0, 0, 0, 0, 0, 0, 0, 0,
0,235}

Definition at line 114 of file G4NeutronCaptureXS.hh.

Referenced by Initialise(), and SelectIsotope().

G4double G4NeutronCaptureXS::elimit
private

Definition at line 106 of file G4NeutronCaptureXS.hh.

Referenced by GetElementCrossSection(), and IsoCrossSection().

G4double G4NeutronCaptureXS::emax
private

Definition at line 105 of file G4NeutronCaptureXS.hh.

Referenced by GetElementCrossSection().

G4bool G4NeutronCaptureXS::isInitialized
private

Definition at line 107 of file G4NeutronCaptureXS.hh.

Referenced by BuildPhysicsTable(), and G4NeutronCaptureXS().

std::vector<G4double> G4NeutronCaptureXS::temp
private

Definition at line 112 of file G4NeutronCaptureXS.hh.

Referenced by G4NeutronCaptureXS(), and SelectIsotope().

std::vector<G4PhysicsVector*> G4NeutronCaptureXS::work
private

Definition at line 111 of file G4NeutronCaptureXS.hh.

Referenced by G4NeutronCaptureXS(), and Initialise().


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