Import Geant4 10.4.0 source tree
This commit is contained in:
@@ -23,7 +23,7 @@
|
||||
// * acceptance of all terms of the Geant4 Software license. *
|
||||
// ********************************************************************
|
||||
//
|
||||
// $Id: G4ionIonisation.cc 96934 2016-05-18 09:10:41Z gcosmo $
|
||||
// $Id: G4ionIonisation.cc 107058 2017-11-01 14:54:12Z gcosmo $
|
||||
//
|
||||
// -------------------------------------------------------------------
|
||||
//
|
||||
@@ -138,31 +138,31 @@ void G4ionIonisation::InitialiseEnergyLossProcess(
|
||||
|
||||
SetBaseParticle(theBaseParticle);
|
||||
|
||||
if (!EmModel(1)) { SetEmModel(new G4BraggIonModel(), 1); }
|
||||
if (!EmModel(0)) { SetEmModel(new G4BraggIonModel()); }
|
||||
|
||||
G4EmParameters* param = G4EmParameters::Instance();
|
||||
EmModel(1)->SetLowEnergyLimit(param->MinKinEnergy());
|
||||
EmModel(0)->SetLowEnergyLimit(param->MinKinEnergy());
|
||||
|
||||
// model limit defined for protons
|
||||
eth = (EmModel(1)->HighEnergyLimit())*part->GetPDGMass()/proton_mass_c2;
|
||||
EmModel(1)->SetHighEnergyLimit(eth);
|
||||
eth = (EmModel(0)->HighEnergyLimit())*part->GetPDGMass()/proton_mass_c2;
|
||||
EmModel(0)->SetHighEnergyLimit(eth);
|
||||
|
||||
if (!FluctModel()) { SetFluctModel(new G4IonFluctuations()); }
|
||||
AddEmModel(1, EmModel(1), FluctModel());
|
||||
AddEmModel(1, EmModel(0), FluctModel());
|
||||
|
||||
G4double emax = param->MaxKinEnergy();
|
||||
if(eth < emax) {
|
||||
if (!EmModel(2)) { SetEmModel(new G4BetheBlochModel(),2); }
|
||||
EmModel(2)->SetLowEnergyLimit(eth);
|
||||
EmModel(2)->SetHighEnergyLimit(emax);
|
||||
AddEmModel(2, EmModel(2), FluctModel());
|
||||
if (!EmModel(1)) { SetEmModel(new G4BetheBlochModel()); }
|
||||
EmModel(1)->SetLowEnergyLimit(eth);
|
||||
EmModel(1)->SetHighEnergyLimit(emax);
|
||||
AddEmModel(2, EmModel(1), FluctModel());
|
||||
|
||||
// Add ion stoping tables for Generic Ion if the default
|
||||
// model is used (with eth ~= 2 MeV)
|
||||
if(part == ion) {
|
||||
stopDataActive = true;
|
||||
G4WaterStopping ws(corr);
|
||||
corr->SetIonisationModels(EmModel(1),EmModel(2));
|
||||
corr->SetIonisationModels(EmModel(0),EmModel(1));
|
||||
}
|
||||
}
|
||||
isInitialised = true;
|
||||
@@ -173,13 +173,14 @@ void G4ionIonisation::InitialiseEnergyLossProcess(
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
|
||||
|
||||
void G4ionIonisation::PrintInfo()
|
||||
void G4ionIonisation::StreamProcessInfo(std::ostream& out,
|
||||
G4String endOfLine) const
|
||||
{
|
||||
if (stopDataActive && G4GenericIon::GenericIon() == theParticle) {
|
||||
G4cout << " Stopping Power data for "
|
||||
<< corr->GetNumberOfStoppingVectors()
|
||||
<< " ion/material pairs "
|
||||
<< G4endl;
|
||||
out << " Stopping Power data for "
|
||||
<< corr->GetNumberOfStoppingVectors()
|
||||
<< " ion/material pairs "
|
||||
<< endOfLine;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -193,3 +194,11 @@ void G4ionIonisation::AddStoppingData(G4int Z, G4int A,
|
||||
}
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
|
||||
|
||||
void G4ionIonisation::ProcessDescription(std::ostream& out) const
|
||||
{
|
||||
out << "<strong>Ion ionisation</strong>";
|
||||
G4VEnergyLossProcess::ProcessDescription(out);
|
||||
}
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
|
||||
|
||||
Reference in New Issue
Block a user