Geant4  10.00.p02
G4VRangeToEnergyConverter Class Referenceabstract

#include <G4VRangeToEnergyConverter.hh>

+ Inheritance diagram for G4VRangeToEnergyConverter:
+ Collaboration diagram for G4VRangeToEnergyConverter:

Public Member Functions

 G4VRangeToEnergyConverter ()
 
 G4VRangeToEnergyConverter (const G4VRangeToEnergyConverter &right)
 
G4VRangeToEnergyConverteroperator= (const G4VRangeToEnergyConverter &right)
 
virtual ~G4VRangeToEnergyConverter ()
 
G4int operator== (const G4VRangeToEnergyConverter &right) const
 
G4int operator!= (const G4VRangeToEnergyConverter &right) const
 
virtual G4double Convert (G4double rangeCut, const G4Material *material)
 
const G4ParticleDefinitionGetParticleType () const
 
const G4PhysicsTableGetLossTable () const
 
virtual void Reset ()
 
void SetVerboseLevel (G4int value)
 
G4int GetVerboseLevel () const
 

Static Public Member Functions

static void SetEnergyRange (G4double lowedge, G4double highedge)
 
static G4double GetLowEdgeEnergy ()
 
static G4double GetHighEdgeEnergy ()
 
static G4double GetMaxEnergyCut ()
 
static void SetMaxEnergyCut (G4double value)
 

Protected Types

typedef G4PhysicsTable G4LossTable
 
typedef G4PhysicsLogVector G4LossVector
 
typedef G4PhysicsLogVector G4RangeVector
 

Protected Member Functions

virtual void BuildLossTable ()
 
virtual G4double ComputeLoss (G4double AtomicNumber, G4double KineticEnergy)=0
 
virtual void BuildRangeVector (const G4Material *aMaterial, G4RangeVector *rangeVector)
 
G4double ConvertCutToKineticEnergy (G4RangeVector *theRangeVector, G4double theCutInLength, size_t materialIndex) const
 

Protected Attributes

G4double fMaxEnergyCut
 
const G4ParticleDefinitiontheParticle
 
G4LossTabletheLossTable
 
G4int NumberOfElements
 
const G4int TotBin
 
std::vector< G4RangeVector * > fRangeVectorStore
 

Static Protected Attributes

static G4double LowestEnergy = 0.99e-3*MeV
 
static G4double HighestEnergy = 100.0e6*MeV
 
static G4double MaxEnergyCut = 10.0*GeV
 

Private Attributes

G4int verboseLevel
 

Detailed Description

Definition at line 58 of file G4VRangeToEnergyConverter.hh.

Member Typedef Documentation

Constructor & Destructor Documentation

G4VRangeToEnergyConverter::G4VRangeToEnergyConverter ( )

Definition at line 48 of file G4VRangeToEnergyConverter.cc.

References fMaxEnergyCut.

G4VRangeToEnergyConverter::G4VRangeToEnergyConverter ( const G4VRangeToEnergyConverter right)

Definition at line 55 of file G4VRangeToEnergyConverter.cc.

References G4PhysicsTable::clearAndDestroy(), fMaxEnergyCut, right, and theLossTable.

+ Here is the call graph for this function:

G4VRangeToEnergyConverter::~G4VRangeToEnergyConverter ( )
virtual

Definition at line 117 of file G4VRangeToEnergyConverter.cc.

References fRangeVectorStore, NumberOfElements, and theLossTable.

Member Function Documentation

void G4VRangeToEnergyConverter::BuildLossTable ( )
protectedvirtual

Definition at line 293 of file G4VRangeToEnergyConverter.cc.

References ComputeLoss(), G4PhysicsVector::Energy(), G4cout, G4endl, G4Element::GetElementTable(), G4Element::GetNumberOfElements(), GetVerboseLevel(), G4PhysicsTable::insert(), LowestEnergy, MaxEnergyCut, NumberOfElements, G4PhysicsVector::PutValue(), Reset(), theLossTable, and TotBin.

Referenced by Convert().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4VRangeToEnergyConverter::BuildRangeVector ( const G4Material aMaterial,
G4RangeVector rangeVector 
)
protectedvirtual

Reimplemented in G4RToEConvForGamma.

Definition at line 331 of file G4VRangeToEnergyConverter.cc.

References G4Material::GetAtomicNumDensityVector(), G4Material::GetElementVector(), G4PhysicsVector::GetLowEdgeEnergy(), G4Material::GetNumberOfElements(), LowestEnergy, MaxEnergyCut, G4PhysicsVector::PutValue(), G4InuclParticleNames::s0, and TotBin.

Referenced by Convert().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

virtual G4double G4VRangeToEnergyConverter::ComputeLoss ( G4double  AtomicNumber,
G4double  KineticEnergy 
)
protectedpure virtual

Implemented in G4RToEConvForProton, G4RToEConvForGamma, G4RToEConvForElectron, and G4RToEConvForPositron.

Referenced by BuildLossTable().

+ Here is the caller graph for this function:

G4double G4VRangeToEnergyConverter::Convert ( G4double  rangeCut,
const G4Material material 
)
virtual

Reimplemented in G4RToEConvForProton.

Definition at line 148 of file G4VRangeToEnergyConverter.cc.

References BuildLossTable(), BuildRangeVector(), cm3, ConvertCutToKineticEnergy(), density, fMaxEnergyCut, fRangeVectorStore, g, G4cout, G4endl, G4Material::GetDensity(), G4Material::GetIndex(), G4Material::GetMaterialTable(), G4Material::GetName(), G4ParticleDefinition::GetParticleName(), GetVerboseLevel(), keV, LowestEnergy, MaxEnergyCut, mm, Reset(), theParticle, and TotBin.

Referenced by G4ProductionCutsTable::ConvertRangeToEnergy(), and G4ProductionCutsTable::UpdateCoupleTable().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4VRangeToEnergyConverter::ConvertCutToKineticEnergy ( G4RangeVector theRangeVector,
G4double  theCutInLength,
size_t  materialIndex 
) const
protected

Definition at line 379 of file G4VRangeToEnergyConverter.cc.

References G4cout, G4endl, G4PhysicsVector::GetLowEdgeEnergy(), G4ParticleDefinition::GetParticleName(), GetVerboseLevel(), LowestEnergy, MaxEnergyCut, mm, theParticle, TotBin, and G4PhysicsVector::Value().

Referenced by Convert().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4VRangeToEnergyConverter::GetHighEdgeEnergy ( )
static

Definition at line 249 of file G4VRangeToEnergyConverter.cc.

References HighestEnergy.

Referenced by G4ProductionCutsTable::GetHighEdgeEnergy().

+ Here is the caller graph for this function:

const G4PhysicsTable* G4VRangeToEnergyConverter::GetLossTable ( ) const
G4double G4VRangeToEnergyConverter::GetLowEdgeEnergy ( )
static

Definition at line 243 of file G4VRangeToEnergyConverter.cc.

References LowestEnergy.

Referenced by G4ProductionCutsTable::GetLowEdgeEnergy().

+ Here is the caller graph for this function:

G4double G4VRangeToEnergyConverter::GetMaxEnergyCut ( )
static

Definition at line 257 of file G4VRangeToEnergyConverter.cc.

References MaxEnergyCut.

Referenced by G4ProductionCutsTable::GetMaxEnergyCut().

+ Here is the caller graph for this function:

const G4ParticleDefinition * G4VRangeToEnergyConverter::GetParticleType ( ) const
inline

Definition at line 172 of file G4VRangeToEnergyConverter.hh.

References theParticle.

G4int G4VRangeToEnergyConverter::GetVerboseLevel ( ) const
inline

Definition at line 165 of file G4VRangeToEnergyConverter.hh.

References verboseLevel.

Referenced by BuildLossTable(), Convert(), ConvertCutToKineticEnergy(), G4RToEConvForElectron::G4RToEConvForElectron(), G4RToEConvForGamma::G4RToEConvForGamma(), G4RToEConvForPositron::G4RToEConvForPositron(), and G4RToEConvForProton::G4RToEConvForProton().

+ Here is the caller graph for this function:

G4int G4VRangeToEnergyConverter::operator!= ( const G4VRangeToEnergyConverter right) const

Definition at line 139 of file G4VRangeToEnergyConverter.cc.

References right.

G4VRangeToEnergyConverter & G4VRangeToEnergyConverter::operator= ( const G4VRangeToEnergyConverter right)

Definition at line 66 of file G4VRangeToEnergyConverter.cc.

References G4PhysicsTable::clearAndDestroy(), fMaxEnergyCut, fRangeVectorStore, G4Element::GetNumberOfElements(), G4PhysicsTable::insert(), LowestEnergy, MaxEnergyCut, NumberOfElements, G4PhysicsVector::PutValue(), theLossTable, theParticle, TotBin, and verboseLevel.

+ Here is the call graph for this function:

G4int G4VRangeToEnergyConverter::operator== ( const G4VRangeToEnergyConverter right) const

Definition at line 134 of file G4VRangeToEnergyConverter.cc.

References right.

void G4VRangeToEnergyConverter::Reset ( )
virtual

Reimplemented in G4RToEConvForProton.

Definition at line 270 of file G4VRangeToEnergyConverter.cc.

References G4PhysicsTable::clearAndDestroy(), fRangeVectorStore, NumberOfElements, and theLossTable.

Referenced by BuildLossTable(), Convert(), and G4ProductionCutsTable::ResetConverters().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4VRangeToEnergyConverter::SetEnergyRange ( G4double  lowedge,
G4double  highedge 
)
static

Definition at line 223 of file G4VRangeToEnergyConverter.cc.

References G4cerr, G4endl, G4Exception(), GeV, HighestEnergy, JustWarning, and LowestEnergy.

Referenced by G4ProductionCutsTable::SetEnergyRange().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4VRangeToEnergyConverter::SetMaxEnergyCut ( G4double  value)
static

Definition at line 262 of file G4VRangeToEnergyConverter.cc.

References MaxEnergyCut.

Referenced by G4ProductionCutsTable::SetMaxEnergyCut().

+ Here is the caller graph for this function:

void G4VRangeToEnergyConverter::SetVerboseLevel ( G4int  value)
inline

Definition at line 159 of file G4VRangeToEnergyConverter.hh.

References verboseLevel.

Referenced by G4ProductionCutsTable::SetVerboseLevel(), and G4ProductionCutsTable::UpdateCoupleTable().

+ Here is the caller graph for this function:

Member Data Documentation

G4double G4VRangeToEnergyConverter::fMaxEnergyCut
protected

Definition at line 112 of file G4VRangeToEnergyConverter.hh.

Referenced by Convert(), G4VRangeToEnergyConverter(), and operator=().

std::vector< G4RangeVector* > G4VRangeToEnergyConverter::fRangeVectorStore
protected
G4double G4VRangeToEnergyConverter::HighestEnergy = 100.0e6*MeV
staticprotected

Definition at line 110 of file G4VRangeToEnergyConverter.hh.

Referenced by GetHighEdgeEnergy(), and SetEnergyRange().

G4double G4VRangeToEnergyConverter::LowestEnergy = 0.99e-3*MeV
staticprotected
G4double G4VRangeToEnergyConverter::MaxEnergyCut = 10.0*GeV
staticprotected
G4int G4VRangeToEnergyConverter::NumberOfElements
protected
const G4int G4VRangeToEnergyConverter::TotBin
protected
G4int G4VRangeToEnergyConverter::verboseLevel
private

Definition at line 154 of file G4VRangeToEnergyConverter.hh.

Referenced by GetVerboseLevel(), operator=(), and SetVerboseLevel().


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