Geant4-11
|
#include <G4LossTableBuilder.hh>
Public Member Functions | |
void | BuildDEDXTable (G4PhysicsTable *dedxTable, const std::vector< G4PhysicsTable * > &) |
void | BuildInverseRangeTable (const G4PhysicsTable *rangeTable, G4PhysicsTable *invRangeTable) |
void | BuildRangeTable (const G4PhysicsTable *dedxTable, G4PhysicsTable *rangeTable) |
G4PhysicsTable * | BuildTableForModel (G4PhysicsTable *table, G4VEmModel *model, const G4ParticleDefinition *, G4double emin, G4double emax, G4bool spline) |
G4LossTableBuilder (const G4LossTableBuilder &)=delete | |
G4LossTableBuilder (G4bool master=true) | |
G4bool | GetBaseMaterialFlag () |
const std::vector< G4int > * | GetCoupleIndexes () const |
const std::vector< G4double > * | GetDensityFactors () const |
G4bool | GetFlag (size_t idx) |
void | InitialiseBaseMaterials (const G4PhysicsTable *table=nullptr) |
G4LossTableBuilder & | operator= (const G4LossTableBuilder &right)=delete |
void | SetBaseMaterialActive (G4bool flag) |
void | SetInitialisationFlag (G4bool flag) |
void | SetSplineFlag (G4bool flag) |
~G4LossTableBuilder () | |
Private Attributes | |
G4bool | baseMatFlag = false |
G4bool | isBaseMatActive = true |
G4bool | isInitialized = false |
G4bool | isMaster |
G4bool | splineFlag = true |
G4EmParameters * | theParameters |
Static Private Attributes | |
static std::vector< G4double > * | theDensityFactor = nullptr |
static std::vector< G4int > * | theDensityIdx = nullptr |
static std::vector< G4bool > * | theFlag = nullptr |
Definition at line 60 of file G4LossTableBuilder.hh.
G4LossTableBuilder::G4LossTableBuilder | ( | G4bool | master = true | ) |
Definition at line 78 of file G4LossTableBuilder.cc.
References G4Exception(), G4MUTEXLOCK, G4MUTEXUNLOCK, G4EmParameters::Instance(), isMaster, JustWarning, theDensityFactor, theDensityIdx, theFlag, and theParameters.
G4LossTableBuilder::~G4LossTableBuilder | ( | ) |
Definition at line 104 of file G4LossTableBuilder.cc.
References isMaster, theDensityFactor, theDensityIdx, and theFlag.
|
delete |
void G4LossTableBuilder::BuildDEDXTable | ( | G4PhysicsTable * | dedxTable, |
const std::vector< G4PhysicsTable * > & | list | ||
) |
Definition at line 149 of file G4LossTableBuilder.cc.
References G4PhysicsVector::FillSecondDerivatives(), G4PhysicsVector::GetVectorLength(), InitialiseBaseMaterials(), G4PhysicsVector::PutValue(), G4PhysicsTableHelper::SetPhysicsVector(), and splineFlag.
Referenced by G4LossTableManager::BuildTables().
void G4LossTableBuilder::BuildInverseRangeTable | ( | const G4PhysicsTable * | rangeTable, |
G4PhysicsTable * | invRangeTable | ||
) |
Definition at line 263 of file G4LossTableBuilder.cc.
References G4PhysicsVector::Energy(), G4PhysicsVector::FillSecondDerivatives(), G4PhysicsVector::GetVectorLength(), isBaseMatActive, G4PhysicsFreeVector::PutValues(), G4PhysicsTableHelper::SetPhysicsVector(), splineFlag, and theFlag.
Referenced by G4LossTableManager::BuildTables(), and G4TablesForExtrapolator::Initialisation().
void G4LossTableBuilder::BuildRangeTable | ( | const G4PhysicsTable * | dedxTable, |
G4PhysicsTable * | rangeTable | ||
) |
Definition at line 183 of file G4LossTableBuilder.cc.
References G4PhysicsVector::Energy(), G4INCL::KinematicsUtils::energy(), G4PhysicsVector::FillSecondDerivatives(), G4PhysicsVector::GetVectorLength(), isBaseMatActive, CLHEP::detail::n, G4PhysicsVector::PutValue(), G4PhysicsTableHelper::SetPhysicsVector(), splineFlag, and G4PhysicsVector::Value().
Referenced by G4LossTableManager::BuildTables(), and G4TablesForExtrapolator::Initialisation().
G4PhysicsTable * G4LossTableBuilder::BuildTableForModel | ( | G4PhysicsTable * | table, |
G4VEmModel * | model, | ||
const G4ParticleDefinition * | part, | ||
G4double | emin, | ||
G4double | emax, | ||
G4bool | spline | ||
) |
Definition at line 384 of file G4LossTableBuilder.cc.
References G4PhysicsTable::clearAndDestroy(), emax, G4PhysicsVector::Energy(), CLHEP::eV, G4PhysicsVector::FillSecondDerivatives(), G4lrint(), G4Material::GetMaterial(), G4ProductionCutsTable::GetMaterialCutsCouple(), G4ProductionCutsTable::GetProductionCutsTable(), G4ProductionCutsTable::GetTableSize(), InitialiseBaseMaterials(), G4INCL::Math::max(), G4VEmModel::MinPrimaryEnergy(), CLHEP::detail::n, G4EmParameters::NumberOfBinsPerDecade(), G4PhysicsTableHelper::PreparePhysicsTable(), G4PhysicsVector::PutValue(), G4PhysicsTableHelper::SetPhysicsVector(), theFlag, theParameters, and G4VEmModel::Value().
Referenced by G4VMscModel::GetParticleChangeForMSC().
G4bool G4LossTableBuilder::GetBaseMaterialFlag | ( | ) |
Definition at line 140 of file G4LossTableBuilder.cc.
References baseMatFlag, InitialiseBaseMaterials(), and theFlag.
Referenced by G4GammaGeneralProcess::PreparePhysicsTable(), G4VEmProcess::PreparePhysicsTable(), G4VEnergyLossProcess::PreparePhysicsTable(), and G4VMultipleScattering::PreparePhysicsTable().
const std::vector< G4int > * G4LossTableBuilder::GetCoupleIndexes | ( | ) | const |
Definition at line 118 of file G4LossTableBuilder.cc.
References theDensityIdx.
Referenced by G4VEmModel::G4VEmModel(), G4VEmProcess::G4VEmProcess(), G4VEnergyLossProcess::G4VEnergyLossProcess(), and G4VEnergyLossProcess::SetLambdaTable().
const std::vector< G4double > * G4LossTableBuilder::GetDensityFactors | ( | ) | const |
Definition at line 125 of file G4LossTableBuilder.cc.
References theDensityFactor.
Referenced by G4VEmModel::G4VEmModel(), G4VEmProcess::G4VEmProcess(), G4VEnergyLossProcess::G4VEnergyLossProcess(), and G4VEnergyLossProcess::SetLambdaTable().
G4bool G4LossTableBuilder::GetFlag | ( | size_t | idx | ) |
Definition at line 132 of file G4LossTableBuilder.cc.
References InitialiseBaseMaterials(), and theFlag.
Referenced by G4VEnergyLossProcess::BuildDEDXTable(), G4VEmProcess::BuildLambdaTable(), G4VEnergyLossProcess::BuildLambdaTable(), and G4GammaGeneralProcess::BuildPhysicsTable().
void G4LossTableBuilder::InitialiseBaseMaterials | ( | const G4PhysicsTable * | table = nullptr | ) |
Definition at line 293 of file G4LossTableBuilder.cc.
References baseMatFlag, G4Material::GetBaseMaterial(), G4PhysicsTable::GetFlag(), G4MaterialCutsCouple::GetMaterial(), G4ProductionCutsTable::GetMaterialCutsCouple(), G4MaterialCutsCouple::GetProductionCuts(), G4ProductionCutsTable::GetProductionCutsTable(), G4ProductionCutsTable::GetTableSize(), isBaseMatActive, isInitialized, isMaster, theDensityFactor, theDensityIdx, and theFlag.
Referenced by BuildDEDXTable(), BuildTableForModel(), GetBaseMaterialFlag(), GetFlag(), G4VEmProcess::PreparePhysicsTable(), and G4VEnergyLossProcess::PreparePhysicsTable().
|
delete |
|
inline |
Definition at line 137 of file G4LossTableBuilder.hh.
References baseMatFlag, isBaseMatActive, and isInitialized.
Referenced by G4TablesForExtrapolator::Initialisation().
|
inline |
Definition at line 132 of file G4LossTableBuilder.hh.
References isInitialized.
Referenced by G4LossTableManager::ResetParameters().
|
inline |
Definition at line 127 of file G4LossTableBuilder.hh.
References splineFlag.
|
private |
Definition at line 115 of file G4LossTableBuilder.hh.
Referenced by GetBaseMaterialFlag(), InitialiseBaseMaterials(), and SetBaseMaterialActive().
|
private |
Definition at line 116 of file G4LossTableBuilder.hh.
Referenced by BuildInverseRangeTable(), BuildRangeTable(), InitialiseBaseMaterials(), and SetBaseMaterialActive().
|
private |
Definition at line 114 of file G4LossTableBuilder.hh.
Referenced by InitialiseBaseMaterials(), SetBaseMaterialActive(), and SetInitialisationFlag().
|
private |
Definition at line 117 of file G4LossTableBuilder.hh.
Referenced by G4LossTableBuilder(), InitialiseBaseMaterials(), and ~G4LossTableBuilder().
|
private |
Definition at line 113 of file G4LossTableBuilder.hh.
Referenced by BuildDEDXTable(), BuildInverseRangeTable(), BuildRangeTable(), and SetSplineFlag().
|
staticprivate |
Definition at line 119 of file G4LossTableBuilder.hh.
Referenced by G4LossTableBuilder(), GetDensityFactors(), InitialiseBaseMaterials(), and ~G4LossTableBuilder().
|
staticprivate |
Definition at line 120 of file G4LossTableBuilder.hh.
Referenced by G4LossTableBuilder(), GetCoupleIndexes(), InitialiseBaseMaterials(), and ~G4LossTableBuilder().
|
staticprivate |
Definition at line 121 of file G4LossTableBuilder.hh.
Referenced by BuildInverseRangeTable(), BuildTableForModel(), G4LossTableBuilder(), GetBaseMaterialFlag(), GetFlag(), InitialiseBaseMaterials(), and ~G4LossTableBuilder().
|
private |
Definition at line 111 of file G4LossTableBuilder.hh.
Referenced by BuildTableForModel(), and G4LossTableBuilder().