Import Geant4 8.3.0 source tree
This commit is contained in:
@@ -23,8 +23,8 @@
|
||||
// * acceptance of all terms of the Geant4 Software license. *
|
||||
// ********************************************************************
|
||||
//
|
||||
// $Id: HistoManager.cc,v 1.3 2006/06/29 16:43:09 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
// $Id: HistoManager.cc,v 1.4 2007/04/27 10:38:11 maire Exp $
|
||||
// GEANT4 tag $Name: geant4-08-03 $
|
||||
//
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
@@ -65,7 +65,7 @@ HistoManager::HistoManager()
|
||||
|
||||
histoMessenger = new HistoMessenger(this);
|
||||
|
||||
csdaRange = 1*mm;
|
||||
csdaRange = 0.;
|
||||
stepMax = DBL_MAX;
|
||||
}
|
||||
|
||||
@@ -82,7 +82,7 @@ HistoManager::~HistoManager()
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
void HistoManager::book()
|
||||
void HistoManager::book(G4double range)
|
||||
{
|
||||
#ifdef G4ANALYSIS_USE
|
||||
if(!af) return;
|
||||
@@ -121,6 +121,8 @@ void HistoManager::book()
|
||||
if (factoryOn)
|
||||
G4cout << "\n----> Histogram Tree is opened in " << fileName[1] << G4endl;
|
||||
#endif
|
||||
|
||||
if (csdaRange == 0.) csdaRange = range;
|
||||
}
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
@@ -209,7 +211,7 @@ void HistoManager::SetHisto(G4int ih,
|
||||
G4cout << " stepMax = " << G4BestUnit(stepMax,"Length") << G4endl;
|
||||
}
|
||||
|
||||
if (ih == 8) {
|
||||
if ((ih == 8)&&(csdaRange>0.)) {
|
||||
stepMax = std::min(stepMax,frac*Width[ih]*csdaRange);
|
||||
G4cout << " stepMax = " << G4BestUnit(stepMax,"Length") << G4endl;
|
||||
}
|
||||
|
||||
@@ -24,8 +24,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: PhysListEmLivermore.cc,v 1.2 2006/06/29 16:43:19 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
// $Id: PhysListEmLivermore.cc,v 1.3 2007/01/08 16:33:52 vnivanch Exp $
|
||||
// GEANT4 tag $Name: geant4-08-03 $
|
||||
//
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
@@ -108,8 +108,8 @@ void PhysListEmLivermore::ConstructProcess()
|
||||
(particle->GetPDGCharge() != 0.0) &&
|
||||
(particle->GetParticleName() != "chargedgeantino")) {
|
||||
//all others charged particles except geantino
|
||||
///pmanager->AddProcess(new G4MultipleScattering, -1, 1, 1);
|
||||
///pmanager->AddProcess(new G4hLowEnergyIonisation, -1, 2, 2);
|
||||
pmanager->AddProcess(new G4MultipleScattering, -1, 1, 1);
|
||||
pmanager->AddProcess(new G4hLowEnergyIonisation, -1, 2, 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -23,8 +23,8 @@
|
||||
// * acceptance of all terms of the Geant4 Software license. *
|
||||
// ********************************************************************
|
||||
//
|
||||
// $Id: RunAction.cc,v 1.6 2006/06/29 16:43:36 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
// $Id: RunAction.cc,v 1.7 2007/04/27 10:38:11 maire Exp $
|
||||
// GEANT4 tag $Name: geant4-08-03 $
|
||||
//
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
@@ -81,15 +81,26 @@ void RunAction::BeginOfRunAction(const G4Run* aRun)
|
||||
//initialize mean step size
|
||||
//
|
||||
nbOfSteps = nbOfSteps2 = 0; stepSize = stepSize2 = 0.;
|
||||
|
||||
|
||||
//get csdaRange from EmCalculator
|
||||
//
|
||||
G4EmCalculator emCalculator;
|
||||
G4Material* material = detector->GetAbsorMaterial();
|
||||
G4ParticleDefinition* particle = kinematic->GetParticleGun()
|
||||
->GetParticleDefinition();
|
||||
G4double energy = kinematic->GetParticleGun()->GetParticleEnergy();
|
||||
csdaRange = 0.;
|
||||
if (particle->GetPDGCharge() != 0.)
|
||||
csdaRange = emCalculator.GetCSDARange(energy,particle,material);
|
||||
|
||||
//histograms
|
||||
//
|
||||
histoManager->book();
|
||||
histoManager->book(csdaRange);
|
||||
|
||||
//set StepMax from histos
|
||||
//
|
||||
G4double stepMax = histoManager->GetStepMax();
|
||||
physics->GetStepMaxProcess()->SetMaxStep(stepMax);
|
||||
physics->GetStepMaxProcess()->SetMaxStep(stepMax);
|
||||
}
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
@@ -150,10 +161,10 @@ void RunAction::EndOfRunAction(const G4Run* aRun)
|
||||
|
||||
//compare with csda range
|
||||
//
|
||||
G4EmCalculator emCalculator;
|
||||
G4double csdaRange = 0.;
|
||||
if (particle->GetPDGCharge() != 0.)
|
||||
csdaRange = emCalculator.GetCSDARange(energy,particle,material);
|
||||
//G4EmCalculator emCalculator;
|
||||
//G4double csdaRange = 0.;
|
||||
//if (particle->GetPDGCharge() != 0.)
|
||||
// csdaRange = emCalculator.GetCSDARange(energy,particle,material);
|
||||
G4cout
|
||||
<< "\n Range from EmCalculator = " << G4BestUnit(csdaRange,"Length")
|
||||
<< " (from full dE/dx)" << G4endl;
|
||||
|
||||
@@ -23,8 +23,8 @@
|
||||
// * acceptance of all terms of the Geant4 Software license. *
|
||||
// ********************************************************************
|
||||
//
|
||||
// $Id: SteppingAction.cc,v 1.3 2006/06/29 16:43:43 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
// $Id: SteppingAction.cc,v 1.4 2007/04/27 10:38:11 maire Exp $
|
||||
// GEANT4 tag $Name: geant4-08-03 $
|
||||
//
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
@@ -70,7 +70,7 @@ void SteppingAction::UserSteppingAction(const G4Step* aStep)
|
||||
histoManager->FillHisto(1, r, edep);
|
||||
|
||||
G4double r0 = histoManager->GetcsdaRange();
|
||||
histoManager->FillHisto(8, r/r0, edep);
|
||||
if (r0 > 0.) histoManager->FillHisto(8, r/r0, edep);
|
||||
|
||||
//step size of primary particle or charged secondaries
|
||||
//
|
||||
|
||||
Reference in New Issue
Block a user