ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
G4PenelopeBremsstrahlungFS Class Reference

#include <geant4/tree/geant4-10.6-release/source/processes/electromagnetic/lowenergy/include/G4PenelopeBremsstrahlungFS.hh>

+ Collaboration diagram for G4PenelopeBremsstrahlungFS:

Public Member Functions

 G4PenelopeBremsstrahlungFS (G4int verbosity=0)
 Only master models are supposed to create instances.
 
 ~G4PenelopeBremsstrahlungFS ()
 
G4double GetEffectiveZSquared (const G4Material *mat) const
 
size_t GetNBinsX () const
 
G4double GetMomentumIntegral (G4double *y, G4double up, G4int momOrder) const
 
const G4PhysicsTableGetScaledXSTable (const G4Material *, const G4double cut) const
 
G4double SampleGammaEnergy (G4double energy, const G4Material *, const G4double cut) const
 
void ClearTables (G4bool isMaster=true)
 Reserved for the master model: they build and handle tables.
 
void BuildScaledXSTable (const G4Material *material, G4double cut, G4bool isMaster)
 
void SetVerbosity (G4int ver)
 
G4int GetVerbosity ()
 

Private Member Functions

G4PenelopeBremsstrahlungFSoperator= (const G4PenelopeBremsstrahlungFS &right)
 
 G4PenelopeBremsstrahlungFS (const G4PenelopeBremsstrahlungFS &)
 
void ReadDataFile (G4int Z)
 
void InitializeEnergySampling (const G4Material *, G4double cut)
 

Private Attributes

std::map< std::pair< const
G4Material *, G4double >
, G4PhysicsTable * > * 
theReducedXSTable
 
std::map< const G4Material
*, G4double > * 
theEffectiveZSq
 
G4double theXGrid [nBinsX]
 
G4double theEGrid [nBinsE]
 
std::map< G4int, G4DataVector * > * theElementData
 
std::map< std::pair< const
G4Material *, G4double >
, G4PhysicsTable * > * 
theSamplingTable
 
std::map< std::pair< const
G4Material *, G4double >
, G4PhysicsFreeVector * > * 
thePBcut
 
G4Cache< G4PhysicsFreeVector * > fCache
 
G4int fVerbosity
 

Static Private Attributes

static const size_t nBinsE = 57
 
static const size_t nBinsX = 32
 

Detailed Description

Definition at line 60 of file G4PenelopeBremsstrahlungFS.hh.

View newest version in sPHENIX GitHub at line 60 of file G4PenelopeBremsstrahlungFS.hh

Constructor & Destructor Documentation

G4PenelopeBremsstrahlungFS::G4PenelopeBremsstrahlungFS ( G4int  verbosity = 0)

Only master models are supposed to create instances.

Definition at line 52 of file G4PenelopeBremsstrahlungFS.cc.

View newest version in sPHENIX GitHub at line 52 of file G4PenelopeBremsstrahlungFS.cc

References fCache, nBinsE, nBinsX, G4Cache< VALTYPE >::Put(), theEGrid, theElementData, and theXGrid.

+ Here is the call graph for this function:

G4PenelopeBremsstrahlungFS::~G4PenelopeBremsstrahlungFS ( )

Definition at line 74 of file G4PenelopeBremsstrahlungFS.cc.

View newest version in sPHENIX GitHub at line 74 of file G4PenelopeBremsstrahlungFS.cc

References ClearTables(), and theElementData.

+ Here is the call graph for this function:

G4PenelopeBremsstrahlungFS::G4PenelopeBremsstrahlungFS ( const G4PenelopeBremsstrahlungFS )
private

Member Function Documentation

void G4PenelopeBremsstrahlungFS::BuildScaledXSTable ( const G4Material material,
G4double  cut,
G4bool  isMaster 
)
void G4PenelopeBremsstrahlungFS::ClearTables ( G4bool  isMaster = true)

Reserved for the master model: they build and handle tables.

Definition at line 95 of file G4PenelopeBremsstrahlungFS.cc.

View newest version in sPHENIX GitHub at line 95 of file G4PenelopeBremsstrahlungFS.cc

References FatalException, G4Exception(), theEffectiveZSq, thePBcut, theReducedXSTable, and theSamplingTable.

Referenced by G4PenelopeBremsstrahlungModel::ClearTables(), and ~G4PenelopeBremsstrahlungFS().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4PenelopeBremsstrahlungFS::GetEffectiveZSquared ( const G4Material mat) const

Master and workers (do not touch tables) All of them are const

Definition at line 149 of file G4PenelopeBremsstrahlungFS.cc.

View newest version in sPHENIX GitHub at line 149 of file G4PenelopeBremsstrahlungFS.cc

References FatalException, G4endl, G4Exception(), G4Material::GetName(), and theEffectiveZSq.

Referenced by G4PenelopeBremsstrahlungModel::BuildXSTable(), and G4PenelopeBremsstrahlungModel::GetPositronXSCorrection().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4PenelopeBremsstrahlungFS::GetMomentumIntegral ( G4double y,
G4double  up,
G4int  momOrder 
) const

Definition at line 440 of file G4PenelopeBremsstrahlungFS.cc.

View newest version in sPHENIX GitHub at line 440 of file G4PenelopeBremsstrahlungFS.cc

References a, b, dx, dy, e, eps, FatalException, G4endl, G4Exception(), max, min, x1, x2, y, y1, and y2.

Referenced by BuildScaledXSTable(), G4PenelopeBremsstrahlungModel::BuildXSTable(), and InitializeEnergySampling().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

size_t G4PenelopeBremsstrahlungFS::GetNBinsX ( ) const
inline

Definition at line 72 of file G4PenelopeBremsstrahlungFS.hh.

View newest version in sPHENIX GitHub at line 72 of file G4PenelopeBremsstrahlungFS.hh

References nBinsX.

Referenced by G4PenelopeBremsstrahlungModel::BuildXSTable().

+ Here is the caller graph for this function:

const G4PhysicsTable * G4PenelopeBremsstrahlungFS::GetScaledXSTable ( const G4Material mat,
const G4double  cut 
) const

Definition at line 516 of file G4PenelopeBremsstrahlungFS.cc.

View newest version in sPHENIX GitHub at line 516 of file G4PenelopeBremsstrahlungFS.cc

References FatalException, G4Exception(), and theReducedXSTable.

Referenced by G4PenelopeBremsstrahlungModel::BuildXSTable().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4int G4PenelopeBremsstrahlungFS::GetVerbosity ( )
inline

Definition at line 86 of file G4PenelopeBremsstrahlungFS.hh.

View newest version in sPHENIX GitHub at line 86 of file G4PenelopeBremsstrahlungFS.hh

References fVerbosity.

void G4PenelopeBremsstrahlungFS::InitializeEnergySampling ( const G4Material material,
G4double  cut 
)
private

Definition at line 533 of file G4PenelopeBremsstrahlungFS.cc.

View newest version in sPHENIX GitHub at line 533 of file G4PenelopeBremsstrahlungFS.cc

References A(), B(), e, FatalException, fVerbosity, G4cout, G4endl, G4Exception(), G4Exp(), GetMomentumIntegral(), G4Material::GetName(), max, nBinsE, nBinsX, G4PhysicsTable::push_back(), G4PhysicsFreeVector::PutValue(), theEGrid, thePBcut, theReducedXSTable, theSamplingTable, theXGrid, v1, v2, x1, x2, y1, and y2.

Referenced by BuildScaledXSTable().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4PenelopeBremsstrahlungFS& G4PenelopeBremsstrahlungFS::operator= ( const G4PenelopeBremsstrahlungFS right)
private
void G4PenelopeBremsstrahlungFS::ReadDataFile ( G4int  Z)
private

Definition at line 371 of file G4PenelopeBremsstrahlungFS.cc.

View newest version in sPHENIX GitHub at line 371 of file G4PenelopeBremsstrahlungFS.cc

References eV, FatalException, file, G4endl, G4Exception(), millibarn, nBinsE, nBinsX, theEGrid, and theElementData.

Referenced by BuildScaledXSTable().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4PenelopeBremsstrahlungFS::SampleGammaEnergy ( G4double  energy,
const G4Material mat,
const G4double  cut 
) const

Definition at line 609 of file G4PenelopeBremsstrahlungFS.cc.

View newest version in sPHENIX GitHub at line 609 of file G4PenelopeBremsstrahlungFS.cc

References A(), B(), Acts::Test::delta, e, Acts::eGamma, energy, FatalException, fCache, fVerbosity, G4cout, G4endl, G4Exception(), G4Exp(), G4UniformRand, G4Cache< VALTYPE >::Get(), G4Material::GetName(), JustWarning, k, keV, max, nBinsE, nBinsX, pt, G4Cache< VALTYPE >::Put(), G4PhysicsFreeVector::PutValue(), G4AutoDelete::Register(), theEGrid, thePBcut, theReducedXSTable, theSamplingTable, theXGrid, v1, and v2.

Referenced by G4PenelopeBremsstrahlungModel::SampleSecondaries().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4PenelopeBremsstrahlungFS::SetVerbosity ( G4int  ver)
inline

Definition at line 85 of file G4PenelopeBremsstrahlungFS.hh.

View newest version in sPHENIX GitHub at line 85 of file G4PenelopeBremsstrahlungFS.hh

References fVerbosity.

Member Data Documentation

G4Cache<G4PhysicsFreeVector*> G4PenelopeBremsstrahlungFS::fCache
private

Definition at line 132 of file G4PenelopeBremsstrahlungFS.hh.

View newest version in sPHENIX GitHub at line 132 of file G4PenelopeBremsstrahlungFS.hh

Referenced by G4PenelopeBremsstrahlungFS(), and SampleGammaEnergy().

G4int G4PenelopeBremsstrahlungFS::fVerbosity
private

Definition at line 134 of file G4PenelopeBremsstrahlungFS.hh.

View newest version in sPHENIX GitHub at line 134 of file G4PenelopeBremsstrahlungFS.hh

Referenced by BuildScaledXSTable(), GetVerbosity(), InitializeEnergySampling(), SampleGammaEnergy(), and SetVerbosity().

const size_t G4PenelopeBremsstrahlungFS::nBinsE = 57
staticprivate

Definition at line 104 of file G4PenelopeBremsstrahlungFS.hh.

View newest version in sPHENIX GitHub at line 104 of file G4PenelopeBremsstrahlungFS.hh

Referenced by BuildScaledXSTable(), G4PenelopeBremsstrahlungFS(), InitializeEnergySampling(), ReadDataFile(), and SampleGammaEnergy().

const size_t G4PenelopeBremsstrahlungFS::nBinsX = 32
staticprivate
std::map<const G4Material*,G4double>* G4PenelopeBremsstrahlungFS::theEffectiveZSq
private

Definition at line 100 of file G4PenelopeBremsstrahlungFS.hh.

View newest version in sPHENIX GitHub at line 100 of file G4PenelopeBremsstrahlungFS.hh

Referenced by BuildScaledXSTable(), ClearTables(), and GetEffectiveZSquared().

G4double G4PenelopeBremsstrahlungFS::theEGrid[nBinsE]
private

Definition at line 108 of file G4PenelopeBremsstrahlungFS.hh.

View newest version in sPHENIX GitHub at line 108 of file G4PenelopeBremsstrahlungFS.hh

Referenced by BuildScaledXSTable(), G4PenelopeBremsstrahlungFS(), InitializeEnergySampling(), ReadDataFile(), and SampleGammaEnergy().

std::map<G4int,G4DataVector*>* G4PenelopeBremsstrahlungFS::theElementData
private

Definition at line 116 of file G4PenelopeBremsstrahlungFS.hh.

View newest version in sPHENIX GitHub at line 116 of file G4PenelopeBremsstrahlungFS.hh

Referenced by BuildScaledXSTable(), G4PenelopeBremsstrahlungFS(), ReadDataFile(), and ~G4PenelopeBremsstrahlungFS().

std::map< std::pair<const G4Material*,G4double> , G4PhysicsFreeVector* >* G4PenelopeBremsstrahlungFS::thePBcut
private

Definition at line 126 of file G4PenelopeBremsstrahlungFS.hh.

View newest version in sPHENIX GitHub at line 126 of file G4PenelopeBremsstrahlungFS.hh

Referenced by BuildScaledXSTable(), ClearTables(), InitializeEnergySampling(), and SampleGammaEnergy().

std::map< std::pair<const G4Material*,G4double> , G4PhysicsTable*>* G4PenelopeBremsstrahlungFS::theReducedXSTable
private

Definition at line 98 of file G4PenelopeBremsstrahlungFS.hh.

View newest version in sPHENIX GitHub at line 98 of file G4PenelopeBremsstrahlungFS.hh

Referenced by BuildScaledXSTable(), ClearTables(), GetScaledXSTable(), InitializeEnergySampling(), and SampleGammaEnergy().

std::map< std::pair<const G4Material*,G4double> , G4PhysicsTable*>* G4PenelopeBremsstrahlungFS::theSamplingTable
private

Definition at line 124 of file G4PenelopeBremsstrahlungFS.hh.

View newest version in sPHENIX GitHub at line 124 of file G4PenelopeBremsstrahlungFS.hh

Referenced by BuildScaledXSTable(), ClearTables(), InitializeEnergySampling(), and SampleGammaEnergy().

G4double G4PenelopeBremsstrahlungFS::theXGrid[nBinsX]
private

Definition at line 107 of file G4PenelopeBremsstrahlungFS.hh.

View newest version in sPHENIX GitHub at line 107 of file G4PenelopeBremsstrahlungFS.hh

Referenced by G4PenelopeBremsstrahlungFS(), InitializeEnergySampling(), and SampleGammaEnergy().


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