Geant4-11
|
#include <G4GSMottCorrection.hh>
Data Structures | |
struct | DataPerDelta |
struct | DataPerEkin |
struct | DataPerMaterial |
Public Member Functions | |
G4GSMottCorrection (G4bool iselectron=true) | |
void | GetMottCorrectionFactors (G4double logekin, G4double beta2, G4int matindx, G4double &mcToScr, G4double &mcToQ1, G4double &mcToG2PerG1) |
G4double | GetMottRejectionValue (G4double logekin, G4double G4beta2, G4double q1, G4double cost, G4int matindx, G4int &ekindx, G4int &deltindx) |
void | Initialise () |
~G4GSMottCorrection () | |
Static Public Member Functions | |
static G4int | GetMaxZet () |
Private Member Functions | |
void | AllocateDataPerMaterial (DataPerMaterial *) |
void | ClearMCDataPerElement () |
void | ClearMCDataPerMaterial () |
void | DeAllocateDataPerMaterial (DataPerMaterial *) |
void | InitMCDataMaterial (const G4Material *) |
void | InitMCDataPerElement () |
void | InitMCDataPerMaterials () |
void | LoadMCDataElement (const G4Element *) |
void | ReadCompressedFile (std::string fname, std::istringstream &iss) |
Private Attributes | |
G4double | fInvDelAngle |
G4double | fInvDelBeta2 |
G4double | fInvDelDelta |
G4double | fInvLogDelEkin |
G4bool | fIsElectron |
G4double | fLogMinEkin |
G4double | fMaxEkin |
std::vector< DataPerMaterial * > | fMCDataPerElement |
std::vector< DataPerMaterial * > | fMCDataPerMaterial |
G4double | fMinBeta2 |
Static Private Attributes | |
static const std::string | gElemSymbols [] |
static constexpr G4double | gMaxBeta2 = 0.9999 |
static constexpr G4double | gMaxDelta = 0.9 |
static constexpr G4int | gMaxZet = 98 |
static constexpr G4double | gMidEkin = 100.*CLHEP::keV |
static constexpr G4double | gMinEkin = 1.*CLHEP::keV |
static constexpr G4int | gNumAngle = 32 |
static constexpr G4int | gNumBeta2 = 16 |
static constexpr G4int | gNumDelta = 28 |
static constexpr G4int | gNumEkin = 31 |
Definition at line 87 of file G4GSMottCorrection.hh.
G4GSMottCorrection::G4GSMottCorrection | ( | G4bool | iselectron = true | ) |
Definition at line 71 of file G4GSMottCorrection.cc.
References CLHEP::electron_mass_c2, fInvDelAngle, fInvDelBeta2, fInvDelDelta, fInvLogDelEkin, fLogMinEkin, fMaxEkin, fMinBeta2, G4Log(), gMaxBeta2, gMaxDelta, gMidEkin, gMinEkin, gNumAngle, gNumBeta2, gNumDelta, and gNumEkin.
G4GSMottCorrection::~G4GSMottCorrection | ( | ) |
Definition at line 84 of file G4GSMottCorrection.cc.
References ClearMCDataPerElement(), and ClearMCDataPerMaterial().
|
private |
Definition at line 506 of file G4GSMottCorrection.cc.
References G4GSMottCorrection::DataPerEkin::fDataPerDelta, G4GSMottCorrection::DataPerMaterial::fDataPerEkin, G4GSMottCorrection::DataPerDelta::fRejFuntion, gNumAngle, gNumDelta, and gNumEkin.
Referenced by InitMCDataMaterial(), and LoadMCDataElement().
|
private |
Definition at line 535 of file G4GSMottCorrection.cc.
References DeAllocateDataPerMaterial(), and fMCDataPerElement.
Referenced by ~G4GSMottCorrection().
|
private |
Definition at line 545 of file G4GSMottCorrection.cc.
References DeAllocateDataPerMaterial(), and fMCDataPerMaterial.
Referenced by Initialise(), and ~G4GSMottCorrection().
|
private |
Definition at line 520 of file G4GSMottCorrection.cc.
References G4GSMottCorrection::DataPerEkin::fDataPerDelta, G4GSMottCorrection::DataPerMaterial::fDataPerEkin, G4GSMottCorrection::DataPerDelta::fRejFuntion, gNumDelta, and gNumEkin.
Referenced by ClearMCDataPerElement(), and ClearMCDataPerMaterial().
|
inlinestatic |
Definition at line 101 of file G4GSMottCorrection.hh.
References gMaxZet.
Referenced by G4GoudsmitSaundersonTable::InitMoliereMSCParams().
void G4GSMottCorrection::GetMottCorrectionFactors | ( | G4double | logekin, |
G4double | beta2, | ||
G4int | matindx, | ||
G4double & | mcToScr, | ||
G4double & | mcToQ1, | ||
G4double & | mcToG2PerG1 | ||
) |
Definition at line 90 of file G4GSMottCorrection.cc.
References fInvDelBeta2, fInvLogDelEkin, fLogMinEkin, fMCDataPerMaterial, G4GSMottCorrection::DataPerEkin::fMCFirstMoment, G4GSMottCorrection::DataPerEkin::fMCScreening, G4GSMottCorrection::DataPerEkin::fMCSecondMoment, fMinBeta2, gMaxBeta2, gNumBeta2, and gNumEkin.
double G4GSMottCorrection::GetMottRejectionValue | ( | G4double | logekin, |
G4double | G4beta2, | ||
G4double | q1, | ||
G4double | cost, | ||
G4int | matindx, | ||
G4int & | ekindx, | ||
G4int & | deltindx | ||
) |
Definition at line 122 of file G4GSMottCorrection.cc.
References fInvDelAngle, fInvDelBeta2, fInvDelDelta, fInvLogDelEkin, fLogMinEkin, fMCDataPerMaterial, fMinBeta2, G4GSMottCorrection::DataPerDelta::fRejFuntion, G4GSMottCorrection::DataPerDelta::fSA, G4GSMottCorrection::DataPerDelta::fSB, G4GSMottCorrection::DataPerDelta::fSC, G4GSMottCorrection::DataPerDelta::fSD, G4UniformRand, gMaxBeta2, gMaxDelta, gNumAngle, gNumBeta2, and gNumEkin.
void G4GSMottCorrection::Initialise | ( | ) |
Definition at line 189 of file G4GSMottCorrection.cc.
References ClearMCDataPerMaterial(), InitMCDataPerElement(), and InitMCDataPerMaterials().
|
private |
Definition at line 349 of file G4GSMottCorrection.cc.
References AllocateDataPerMaterial(), CLHEP::cm, CLHEP::cm3, CLHEP::electron_mass_c2, elem, G4GSMottCorrection::DataPerEkin::fDataPerDelta, G4GSMottCorrection::DataPerMaterial::fDataPerEkin, CLHEP::fine_structure_const, fInvDelBeta2, fInvLogDelEkin, fLogMinEkin, fMCDataPerElement, fMCDataPerMaterial, G4GSMottCorrection::DataPerEkin::fMCFirstMoment, G4GSMottCorrection::DataPerEkin::fMCScreening, G4GSMottCorrection::DataPerEkin::fMCSecondMoment, fMinBeta2, G4GSMottCorrection::DataPerDelta::fRejFuntion, G4GSMottCorrection::DataPerDelta::fSA, G4GSMottCorrection::DataPerDelta::fSB, G4GSMottCorrection::DataPerDelta::fSC, G4GSMottCorrection::DataPerDelta::fSD, CLHEP::g, G4Exp(), G4Log(), G4lrint(), G4Material::GetDensity(), G4Material::GetElementVector(), G4Material::GetIndex(), G4Material::GetNumberOfElements(), G4Material::GetTotNbOfAtomsPerVolume(), G4Material::GetVecNbOfAtomsPerVolume(), gMaxZet, gMidEkin, gNumAngle, gNumBeta2, gNumDelta, gNumEkin, and CLHEP::MeV.
Referenced by InitMCDataPerMaterials().
|
private |
Definition at line 199 of file G4GSMottCorrection.cc.
References elem, fMCDataPerElement, G4lrint(), G4Material::GetElementVector(), G4MaterialCutsCouple::GetMaterial(), G4ProductionCutsTable::GetMaterialCutsCouple(), G4ProductionCutsTable::GetProductionCutsTable(), G4ProductionCutsTable::GetTableSize(), gMaxZet, G4MaterialCutsCouple::IsUsed(), and LoadMCDataElement().
Referenced by Initialise().
|
private |
Definition at line 231 of file G4GSMottCorrection.cc.
References fMCDataPerMaterial, G4Material::GetIndex(), G4MaterialCutsCouple::GetMaterial(), G4ProductionCutsTable::GetMaterialCutsCouple(), G4Material::GetNumberOfMaterials(), G4ProductionCutsTable::GetProductionCutsTable(), G4ProductionCutsTable::GetTableSize(), InitMCDataMaterial(), and G4MaterialCutsCouple::IsUsed().
Referenced by Initialise().
|
private |
Definition at line 254 of file G4GSMottCorrection.cc.
References AllocateDataPerMaterial(), elem, FatalException, G4GSMottCorrection::DataPerEkin::fDataPerDelta, G4GSMottCorrection::DataPerMaterial::fDataPerEkin, fIsElectron, fMCDataPerElement, G4GSMottCorrection::DataPerEkin::fMCFirstMoment, G4GSMottCorrection::DataPerEkin::fMCScreening, G4GSMottCorrection::DataPerEkin::fMCSecondMoment, test::fname, G4GSMottCorrection::DataPerDelta::fRejFuntion, G4GSMottCorrection::DataPerDelta::fSA, G4GSMottCorrection::DataPerDelta::fSB, G4GSMottCorrection::DataPerDelta::fSC, G4GSMottCorrection::DataPerDelta::fSD, G4Exception(), gElemSymbols, gMaxZet, gNumAngle, gNumDelta, gNumEkin, and ReadCompressedFile().
Referenced by InitMCDataPerElement().
|
private |
Definition at line 305 of file G4GSMottCorrection.cc.
References FatalException, test::fname, G4Exception(), uncompress(), and Z_OK.
Referenced by LoadMCDataElement().
|
private |
Definition at line 176 of file G4GSMottCorrection.hh.
Referenced by G4GSMottCorrection(), and GetMottRejectionValue().
|
private |
Definition at line 174 of file G4GSMottCorrection.hh.
Referenced by G4GSMottCorrection(), GetMottCorrectionFactors(), GetMottRejectionValue(), and InitMCDataMaterial().
|
private |
Definition at line 175 of file G4GSMottCorrection.hh.
Referenced by G4GSMottCorrection(), and GetMottRejectionValue().
|
private |
Definition at line 172 of file G4GSMottCorrection.hh.
Referenced by G4GSMottCorrection(), GetMottCorrectionFactors(), GetMottRejectionValue(), and InitMCDataMaterial().
|
private |
Definition at line 159 of file G4GSMottCorrection.hh.
Referenced by LoadMCDataElement().
|
private |
Definition at line 171 of file G4GSMottCorrection.hh.
Referenced by G4GSMottCorrection(), GetMottCorrectionFactors(), GetMottRejectionValue(), and InitMCDataMaterial().
|
private |
Definition at line 170 of file G4GSMottCorrection.hh.
Referenced by G4GSMottCorrection().
|
private |
Definition at line 180 of file G4GSMottCorrection.hh.
Referenced by ClearMCDataPerElement(), InitMCDataMaterial(), InitMCDataPerElement(), and LoadMCDataElement().
|
private |
Definition at line 181 of file G4GSMottCorrection.hh.
Referenced by ClearMCDataPerMaterial(), GetMottCorrectionFactors(), GetMottRejectionValue(), InitMCDataMaterial(), and InitMCDataPerMaterials().
|
private |
Definition at line 173 of file G4GSMottCorrection.hh.
Referenced by G4GSMottCorrection(), GetMottCorrectionFactors(), GetMottRejectionValue(), and InitMCDataMaterial().
|
staticprivate |
Definition at line 178 of file G4GSMottCorrection.hh.
Referenced by LoadMCDataElement().
|
staticconstexprprivate |
Definition at line 167 of file G4GSMottCorrection.hh.
Referenced by G4GSMottCorrection(), GetMottCorrectionFactors(), and GetMottRejectionValue().
|
staticconstexprprivate |
Definition at line 168 of file G4GSMottCorrection.hh.
Referenced by G4GSMottCorrection(), and GetMottRejectionValue().
|
staticconstexprprivate |
Definition at line 164 of file G4GSMottCorrection.hh.
Referenced by GetMaxZet(), InitMCDataMaterial(), InitMCDataPerElement(), and LoadMCDataElement().
|
staticconstexprprivate |
Definition at line 166 of file G4GSMottCorrection.hh.
Referenced by G4GSMottCorrection(), and InitMCDataMaterial().
|
staticconstexprprivate |
Definition at line 165 of file G4GSMottCorrection.hh.
Referenced by G4GSMottCorrection().
|
staticconstexprprivate |
Definition at line 163 of file G4GSMottCorrection.hh.
Referenced by AllocateDataPerMaterial(), G4GSMottCorrection(), GetMottRejectionValue(), InitMCDataMaterial(), and LoadMCDataElement().
|
staticconstexprprivate |
Definition at line 161 of file G4GSMottCorrection.hh.
Referenced by G4GSMottCorrection(), GetMottCorrectionFactors(), GetMottRejectionValue(), and InitMCDataMaterial().
|
staticconstexprprivate |
Definition at line 162 of file G4GSMottCorrection.hh.
Referenced by AllocateDataPerMaterial(), DeAllocateDataPerMaterial(), G4GSMottCorrection(), InitMCDataMaterial(), and LoadMCDataElement().
|
staticconstexprprivate |
Definition at line 160 of file G4GSMottCorrection.hh.
Referenced by AllocateDataPerMaterial(), DeAllocateDataPerMaterial(), G4GSMottCorrection(), GetMottCorrectionFactors(), GetMottRejectionValue(), InitMCDataMaterial(), and LoadMCDataElement().