88 if(edep <= 0.0) {
return 0.0; }
92 if(length <= 0.0) {
return edep; }
102 evis /= (1.0 + bfactor*edep/
119 eloss /= (1.0 + bfactor*eloss/length);
134 nloss /= (1.0 + bfactor*nloss/range);
136 evis = eloss + nloss;
171 G4cout <<
"### G4EmSaturation::FindG4BirksCoefficient for "
189 G4Exception(
"G4EmSaturation::InitialiseBirksCoefficient",
"em0001",
200 if(curBirks == 0.0) {
210 if(curBirks == 0.0) {
return; }
219 for (
size_t i=0; i<nelm; ++i) {
220 const G4Element* elm = (*theElementVector)[i];
240 G4cout <<
"### Birks coefficients used in run time" <<
G4endl;
247 << br*
MeV/
mm <<
" mm/MeV" <<
" "
260 G4cout <<
"### Birks coefficients for Geant4 materials" <<
G4endl;
std::vector< const G4Element * > G4ElementVector
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *description)
std::vector< G4Material * > G4MaterialTable
static constexpr double cm2
static constexpr double mm
static constexpr double g
static constexpr double MeV
G4GLOB_DLL std::ostream G4cout
virtual ~G4EmSaturation()
void InitialiseG4materials()
const G4ParticleDefinition * electron
static std::vector< G4double > g4MatData
virtual G4double VisibleEnergyDeposition(const G4ParticleDefinition *, const G4MaterialCutsCouple *, G4double length, G4double edepTotal, G4double edepNIEL=0.0) const
G4double FindG4BirksCoefficient(const G4Material *)
void DumpBirksCoefficients()
static std::vector< G4String > g4MatNames
static std::vector< G4double > massFactors
void InitialiseG4Saturation()
void DumpG4BirksCoefficients()
G4EmSaturation(G4int verb)
const G4ParticleDefinition * proton
static std::vector< G4double > effCharges
void InitialiseBirksCoefficient(const G4Material *)
void SetBirksConstant(G4double value)
G4double GetBirksConstant() const
static G4LossTableManager * Instance()
G4double GetRange(const G4ParticleDefinition *aParticle, G4double kineticEnergy, const G4MaterialCutsCouple *couple)
const G4Material * GetMaterial() const
G4double GetDensity() const
const G4ElementVector * GetElementVector() const
static size_t GetNumberOfMaterials()
G4IonisParamMat * GetIonisation() const
size_t GetNumberOfElements() const
const G4double * GetVecNbOfAtomsPerVolume() const
static G4MaterialTable * GetMaterialTable()
const G4String & GetName() const
static G4NistManager * Instance()
G4double GetAtomicMassAmu(const G4String &symb) const
G4int GetPDGEncoding() const
G4double GetPDGCharge() const
G4ParticleDefinition * FindParticle(G4int PDGEncoding)
static G4ParticleTable * GetParticleTable()
T max(const T t1, const T t2)
brief Return the largest of the two arguments
const char * name(G4int ptype)