Geant4  10.01.p02
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 G4IsotopeSelectIsotope (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 G4StringGetName () const
 

Static Public Member Functions

static const char * Default_Name ()
 

Private Member Functions

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

Private Attributes

G4double emax
 
G4double elimit
 
G4bool isMaster
 
std::vector< G4PhysicsVector * > work
 
std::vector< G4doubletemp
 

Static Private Attributes

static G4ElementDatadata = 0
 
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 ( )
G4NeutronCaptureXS::~G4NeutronCaptureXS ( )
virtual

Definition at line 98 of file G4NeutronCaptureXS.cc.

References data, and isMaster.

G4NeutronCaptureXS::G4NeutronCaptureXS ( const G4NeutronCaptureXS )
private

Member Function Documentation

void G4NeutronCaptureXS::BuildPhysicsTable ( const G4ParticleDefinition p)
virtual

Reimplemented from G4VCrossSectionDataSet.

Definition at line 243 of file G4NeutronCaptureXS.cc.

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

+ Here is the call graph for this function:

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

Reimplemented from G4VCrossSectionDataSet.

Definition at line 103 of file G4NeutronCaptureXS.cc.

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

Reimplemented from G4VCrossSectionDataSet.

Definition at line 128 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 156 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 290 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 113 of file G4NeutronCaptureXS.cc.

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

Reimplemented from G4VCrossSectionDataSet.

Definition at line 120 of file G4NeutronCaptureXS.cc.

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

Definition at line 169 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 333 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 198 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 118 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 117 of file G4NeutronCaptureXS.hh.

Referenced by Initialise(), and SelectIsotope().

G4ElementData * G4NeutronCaptureXS::data = 0
staticprivate
G4double G4NeutronCaptureXS::elimit
private

Definition at line 108 of file G4NeutronCaptureXS.hh.

Referenced by GetElementCrossSection(), and IsoCrossSection().

G4double G4NeutronCaptureXS::emax
private

Definition at line 107 of file G4NeutronCaptureXS.hh.

Referenced by GetElementCrossSection().

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

Definition at line 115 of file G4NeutronCaptureXS.hh.

Referenced by BuildPhysicsTable(), and SelectIsotope().

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

Definition at line 114 of file G4NeutronCaptureXS.hh.

Referenced by BuildPhysicsTable(), and Initialise().


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