90 if(edep <= 0.0) {
return 0.0; }
107 if(nloss < 0.0) nloss = 0.0;
111 if(2112 == pdgCode || eloss < 0.0 || length <= 0.0) {
117 if(eloss > 0.0) { eloss /= (1.0 + bfactor*eloss/length); }
124 nloss /= (1.0 + bfactor*nloss/range);
127 evis = eloss + nloss;
144 G4cout <<
"### G4EmSaturation::FindG4BirksCoefficient for "
196 G4cout <<
"### G4EmSaturation::FindBirksCoefficient fails "
197 " for material " << name <<
G4endl;
207 for (
size_t i=0; i<nelm; ++i) {
208 const G4Element* elm = (*theElementVector)[i];
210 G4double w = Z*Z*theAtomNumDensityVector[i];
225 G4cout <<
"### G4EmSaturation::FindBirksCoefficient Birks coefficient for "
236 G4cout <<
"### Birks coeffitients used in run time" <<
G4endl;
240 << br*
MeV/
mm <<
" mm/MeV" <<
" "
253 G4cout <<
"### Birks coeffitients for Geant4 materials" <<
G4endl;
std::vector< const G4Material * > matPointers
const G4ParticleDefinition * electron
G4IonisParamMat * GetIonisation() const
static G4LossTableManager * Instance()
std::vector< G4double > g4MatData
const G4ParticleDefinition * proton
std::vector< G4Element * > G4ElementVector
G4double FindBirksCoefficient(const G4Material *)
const G4String & GetName() const
G4double VisibleEnergyDeposition(const G4ParticleDefinition *, const G4MaterialCutsCouple *, G4double length, G4double edepTotal, G4double edepNIEL=0.0)
void SetBirksConstant(G4double value)
virtual ~G4EmSaturation()
const G4Material * curMaterial
std::vector< G4double > effCharges
std::vector< G4String > g4MatNames
G4int GetPDGEncoding() const
void DumpBirksCoefficients()
const G4ElementVector * GetElementVector() const
static G4NistManager * Instance()
G4double GetBirksConstant() const
const G4double * GetVecNbOfAtomsPerVolume() const
std::vector< G4String > matNames
G4GLOB_DLL std::ostream G4cout
G4double FindG4BirksCoefficient(const G4Material *)
static G4Proton * Proton()
std::vector< G4double > massFactors
void DumpG4BirksCoefficients()
G4LossTableManager * manager
G4double GetAtomicMassAmu(const G4String &symb) const
static G4Electron * Electron()
size_t GetNumberOfElements() const
G4double GetRange(const G4ParticleDefinition *aParticle, G4double kineticEnergy, const G4MaterialCutsCouple *couple)
const G4Material * GetMaterial() const