Geant4
10.00.p03
|
#include <RMC01AnalysisManager.hh>
Public Member Functions | |
~RMC01AnalysisManager () | |
void | BeginOfRun (const G4Run *) |
void | EndOfRun (const G4Run *) |
void | BeginOfEvent (const G4Event *) |
void | EndOfEvent (const G4Event *) |
void | SetPrimaryExpSpectrumForAdjointSim (const G4String &particle_name, G4double fluence, G4double E0, G4double Emin, G4double Emax) |
void | SetPrimaryPowerLawSpectrumForAdjointSim (const G4String &particle_name, G4double fluence, G4double alpha, G4double Emin, G4double Emax) |
void | SetPrecision (G4double precision) |
void | book () |
void | save (G4double scaling_factor) |
Static Public Member Functions | |
static RMC01AnalysisManager * | GetInstance () |
Private Member Functions | |
RMC01AnalysisManager () | |
void | EndOfEventForForwardSimulation (const G4Event *anEvent) |
void | EndOfEventForAdjointSimulation (const G4Event *anEvent) |
G4double | PrimDiffAndDirFluxForAdjointSim (G4double prim_energy) |
void | ComputeMeanEdepAndError (const G4Event *anEvent, G4double &mean, G4double &error) |
Static Private Attributes | |
static RMC01AnalysisManager * | fInstance = 0 |
Definition at line 77 of file RMC01AnalysisManager.hh.
RMC01AnalysisManager::~RMC01AnalysisManager | ( | ) |
Definition at line 103 of file RMC01AnalysisManager.cc.
|
private |
Definition at line 61 of file RMC01AnalysisManager.cc.
References G4Electron::Electron(), fFileName, fMsg, fPrimPDG_ID, fTimer, and G4ParticleDefinition::GetPDGEncoding().
Referenced by GetInstance().
void RMC01AnalysisManager::BeginOfEvent | ( | const G4Event * | ) |
Definition at line 177 of file RMC01AnalysisManager.cc.
Referenced by RMC01EventAction::BeginOfEventAction().
void RMC01AnalysisManager::BeginOfRun | ( | const G4Run * | aRun | ) |
Definition at line 117 of file RMC01AnalysisManager.cc.
References book(), fAccumulated_edep, fAccumulated_edep2, fAdjoint_sim_mode, fConvergenceFileOutput, fElapsed_time, fError_mean_edep, fMean_edep, fNb_evt_per_adj_evt, fRelative_error, fTimer, G4AdjointSimManager::GetAdjointSimMode(), G4AdjointSimManager::GetInstance(), G4AdjointSimManager::GetNbEvtOfLastRun(), G4Run::GetNumberOfEventToBeProcessed(), and G4Timer::Start().
Referenced by RMC01RunAction::BeginOfRunAction().
void RMC01AnalysisManager::book | ( | ) |
Definition at line 580 of file RMC01AnalysisManager.cc.
References G4VAnalysisManager::CreateH1(), fAdjoint_sim_mode, fEdep_rmatrix_vs_electron_prim_energy, fEdep_rmatrix_vs_gamma_prim_energy, fEdep_rmatrix_vs_proton_prim_energy, fEdep_vs_prim_ekin, fElectron_current, fElectron_current_rmatrix_vs_electron_prim_energy, fElectron_current_rmatrix_vs_gamma_prim_energy, fElectron_current_rmatrix_vs_proton_prim_energy, fFactoryOn, fFileName, fGamma_current, fGamma_current_rmatrix_vs_electron_prim_energy, fGamma_current_rmatrix_vs_gamma_prim_energy, fGamma_current_rmatrix_vs_proton_prim_energy, fProton_current, fProton_current_rmatrix_vs_proton_prim_energy, G4cout, G4endl, G4VAnalysisManager::GetFileType(), G4RootAnalysisManager::GetH1(), G4RootAnalysisManager::GetH2(), GeV, keV, G4VAnalysisManager::OpenFile(), G4VAnalysisManager::SetFirstHistoId(), and G4VAnalysisManager::SetHistoDirectoryName().
Referenced by BeginOfRun().
|
private |
Definition at line 496 of file RMC01AnalysisManager.cc.
References fAccumulated_edep, fAccumulated_edep2, fAdjoint_sim_mode, fNb_evt_per_adj_evt, G4Event::GetEventID(), G4AdjointSimManager::GetInstance(), and G4AdjointSimManager::GetNbEvtOfLastRun().
Referenced by EndOfEventForAdjointSimulation(), and EndOfEventForForwardSimulation().
void RMC01AnalysisManager::EndOfEvent | ( | const G4Event * | anEvent | ) |
Definition at line 183 of file RMC01AnalysisManager.cc.
References G4RunManager::AbortRun(), EndOfEventForAdjointSimulation(), EndOfEventForForwardSimulation(), fAdjoint_sim_mode, fConvergenceFileOutput, fElapsed_time, fError_mean_edep, fMean_edep, fNb_evt_modulo_for_convergence_test, fNb_evt_per_adj_evt, fPrecision_to_reach, fRelative_error, fStop_run_if_precision_reached, fTimer, G4cout, G4Event::GetEventID(), G4Timer::GetRealElapsed(), G4RunManager::GetRunManager(), G4Timer::Start(), and G4Timer::Stop().
Referenced by RMC01EventAction::EndOfEventAction().
|
private |
Definition at line 290 of file RMC01AnalysisManager.cc.
References cm2, ComputeMeanEdepAndError(), G4Electron::Electron(), G4THitsCollection< T >::entries(), fAccumulated_edep, fAccumulated_edep2, fEdep_rmatrix_vs_electron_prim_energy, fEdep_rmatrix_vs_gamma_prim_energy, fEdep_rmatrix_vs_proton_prim_energy, fEdep_vs_prim_ekin, fElectron_current, fElectron_current_rmatrix_vs_electron_prim_energy, fElectron_current_rmatrix_vs_gamma_prim_energy, fElectron_current_rmatrix_vs_proton_prim_energy, fEmax_prim_spectrum, fEmin_prim_spectrum, fError_mean_edep, fGamma_current, fGamma_current_rmatrix_vs_electron_prim_energy, fGamma_current_rmatrix_vs_gamma_prim_energy, fGamma_current_rmatrix_vs_proton_prim_energy, fMean_edep, fPrimPDG_ID, fProton_current, fProton_current_rmatrix_vs_proton_prim_energy, fRelative_error, G4cout, G4Gamma::Gamma(), G4SDManager::GetCollectionID(), G4AdjointSimManager::GetEkinAtEndOfLastAdjointTrack(), G4AdjointSimManager::GetFwdParticlePDGEncodingAtEndOfLastAdjointTrack(), G4HCofThisEvent::GetHC(), G4Event::GetHCofThisEvent(), G4AdjointSimManager::GetInstance(), G4SDManager::GetSDMpointer(), G4AdjointSimManager::GetWeightAtEndOfLastAdjointTrack(), PrimDiffAndDirFluxForAdjointSim(), and G4Proton::Proton().
Referenced by EndOfEvent().
|
private |
Definition at line 223 of file RMC01AnalysisManager.cc.
References ComputeMeanEdepAndError(), G4THitsCollection< T >::entries(), fAccumulated_edep, fAccumulated_edep2, fEdep_vs_prim_ekin, fElectron_current, fError_mean_edep, fGamma_current, fMean_edep, fProton_current, fRelative_error, G4SDManager::GetCollectionID(), G4PrimaryParticle::GetG4code(), G4HCofThisEvent::GetHC(), G4Event::GetHCofThisEvent(), G4PrimaryParticle::GetMomentum(), G4ParticleDefinition::GetPDGMass(), G4PrimaryVertex::GetPrimary(), G4Event::GetPrimaryVertex(), and G4SDManager::GetSDMpointer().
Referenced by EndOfEvent().
void RMC01AnalysisManager::EndOfRun | ( | const G4Run * | aRun | ) |
Definition at line 154 of file RMC01AnalysisManager.cc.
References fAdjoint_sim_mode, fConvergenceFileOutput, fError_mean_edep, fMean_edep, fNb_evt_per_adj_evt, fTimer, G4cout, G4AdjointSimManager::GetInstance(), G4AdjointSimManager::GetNbEvtOfLastRun(), G4Run::GetNumberOfEvent(), save(), and G4Timer::Stop().
Referenced by RMC01RunAction::EndOfRunAction().
|
static |
Definition at line 109 of file RMC01AnalysisManager.cc.
References fInstance, and RMC01AnalysisManager().
Referenced by RMC01EventAction::BeginOfEventAction(), RMC01EventAction::EndOfEventAction(), and RMC01RunAction::RMC01RunAction().
Definition at line 445 of file RMC01AnalysisManager.cc.
References EXPO, fAlpha_or_E0, fAmplitude_prim_spectrum, and fPrimSpectrumType.
Referenced by EndOfEventForAdjointSimulation().
void RMC01AnalysisManager::save | ( | G4double | scaling_factor | ) |
Definition at line 748 of file RMC01AnalysisManager.cc.
References G4VAnalysisManager::CloseFile(), fFactoryOn, fFileName, G4cout, G4endl, G4VAnalysisManager::GetNofH1s(), G4VAnalysisManager::GetNofH2s(), G4VAnalysisManager::ScaleH1(), G4VAnalysisManager::ScaleH2(), G4VAnalysisManager::SetH1Ascii(), and G4VAnalysisManager::Write().
Referenced by EndOfRun().
|
inline |
Definition at line 97 of file RMC01AnalysisManager.hh.
References fPrecision_to_reach.
Referenced by RMC01AnalysisManagerMessenger::SetNewValue().
void RMC01AnalysisManager::SetPrimaryExpSpectrumForAdjointSim | ( | const G4String & | particle_name, |
G4double | fluence, | ||
G4double | E0, | ||
G4double | Emin, | ||
G4double | Emax | ||
) |
Definition at line 521 of file RMC01AnalysisManager.cc.
References G4Electron::Electron(), Emax, Emin, EXPO, fAlpha_or_E0, fAmplitude_prim_spectrum, fEmax_prim_spectrum, fEmin_prim_spectrum, fPrimPDG_ID, fPrimSpectrumType, G4cout, G4endl, G4Gamma::Gamma(), G4ParticleDefinition::GetPDGEncoding(), G4INCL::Math::pi, and G4Proton::Proton().
Referenced by RMC01AnalysisManagerMessenger::SetNewValue().
void RMC01AnalysisManager::SetPrimaryPowerLawSpectrumForAdjointSim | ( | const G4String & | particle_name, |
G4double | fluence, | ||
G4double | alpha, | ||
G4double | Emin, | ||
G4double | Emax | ||
) |
Definition at line 546 of file RMC01AnalysisManager.cc.
References alpha, G4Electron::Electron(), Emax, Emin, fAlpha_or_E0, fAmplitude_prim_spectrum, fEmax_prim_spectrum, fEmin_prim_spectrum, fPrimPDG_ID, fPrimSpectrumType, G4cout, G4endl, G4Gamma::Gamma(), G4ParticleDefinition::GetPDGEncoding(), G4INCL::Math::pi, POWER, and G4Proton::Proton().
Referenced by RMC01AnalysisManagerMessenger::SetNewValue().
|
private |
Definition at line 138 of file RMC01AnalysisManager.hh.
Referenced by BeginOfRun(), ComputeMeanEdepAndError(), EndOfEventForAdjointSimulation(), and EndOfEventForForwardSimulation().
|
private |
Definition at line 139 of file RMC01AnalysisManager.hh.
Referenced by BeginOfRun(), ComputeMeanEdepAndError(), EndOfEventForAdjointSimulation(), and EndOfEventForForwardSimulation().
|
private |
Definition at line 178 of file RMC01AnalysisManager.hh.
Referenced by BeginOfRun(), book(), ComputeMeanEdepAndError(), EndOfEvent(), and EndOfRun().
|
private |
Definition at line 174 of file RMC01AnalysisManager.hh.
Referenced by PrimDiffAndDirFluxForAdjointSim(), SetPrimaryExpSpectrumForAdjointSim(), and SetPrimaryPowerLawSpectrumForAdjointSim().
|
private |
Definition at line 175 of file RMC01AnalysisManager.hh.
Referenced by PrimDiffAndDirFluxForAdjointSim(), SetPrimaryExpSpectrumForAdjointSim(), and SetPrimaryPowerLawSpectrumForAdjointSim().
|
private |
Definition at line 184 of file RMC01AnalysisManager.hh.
Referenced by BeginOfRun(), EndOfEvent(), and EndOfRun().
|
private |
Definition at line 151 of file RMC01AnalysisManager.hh.
Referenced by book(), and EndOfEventForAdjointSimulation().
|
private |
Definition at line 155 of file RMC01AnalysisManager.hh.
Referenced by book(), and EndOfEventForAdjointSimulation().
|
private |
Definition at line 159 of file RMC01AnalysisManager.hh.
Referenced by book(), and EndOfEventForAdjointSimulation().
|
private |
Definition at line 126 of file RMC01AnalysisManager.hh.
Referenced by book(), EndOfEventForAdjointSimulation(), and EndOfEventForForwardSimulation().
|
private |
Definition at line 143 of file RMC01AnalysisManager.hh.
Referenced by BeginOfRun(), and EndOfEvent().
|
private |
Definition at line 127 of file RMC01AnalysisManager.hh.
Referenced by book(), EndOfEventForAdjointSimulation(), and EndOfEventForForwardSimulation().
|
private |
Definition at line 152 of file RMC01AnalysisManager.hh.
Referenced by book(), and EndOfEventForAdjointSimulation().
|
private |
Definition at line 156 of file RMC01AnalysisManager.hh.
Referenced by book(), and EndOfEventForAdjointSimulation().
|
private |
Definition at line 160 of file RMC01AnalysisManager.hh.
Referenced by book(), and EndOfEventForAdjointSimulation().
|
private |
Definition at line 177 of file RMC01AnalysisManager.hh.
Referenced by EndOfEventForAdjointSimulation(), SetPrimaryExpSpectrumForAdjointSim(), and SetPrimaryPowerLawSpectrumForAdjointSim().
|
private |
Definition at line 176 of file RMC01AnalysisManager.hh.
Referenced by EndOfEventForAdjointSimulation(), SetPrimaryExpSpectrumForAdjointSim(), and SetPrimaryPowerLawSpectrumForAdjointSim().
|
private |
Definition at line 141 of file RMC01AnalysisManager.hh.
Referenced by BeginOfRun(), EndOfEvent(), EndOfEventForAdjointSimulation(), EndOfEventForForwardSimulation(), and EndOfRun().
|
private |
Definition at line 165 of file RMC01AnalysisManager.hh.
|
private |
Definition at line 164 of file RMC01AnalysisManager.hh.
Referenced by book(), RMC01AnalysisManager(), and save().
|
private |
Definition at line 129 of file RMC01AnalysisManager.hh.
Referenced by book(), EndOfEventForAdjointSimulation(), and EndOfEventForForwardSimulation().
|
private |
Definition at line 153 of file RMC01AnalysisManager.hh.
Referenced by book(), and EndOfEventForAdjointSimulation().
|
private |
Definition at line 157 of file RMC01AnalysisManager.hh.
Referenced by book(), and EndOfEventForAdjointSimulation().
|
private |
Definition at line 162 of file RMC01AnalysisManager.hh.
Referenced by book(), and EndOfEventForAdjointSimulation().
|
staticprivate |
Definition at line 106 of file RMC01AnalysisManager.hh.
Referenced by GetInstance().
|
private |
Definition at line 140 of file RMC01AnalysisManager.hh.
Referenced by BeginOfRun(), EndOfEvent(), EndOfEventForAdjointSimulation(), EndOfEventForForwardSimulation(), and EndOfRun().
|
private |
Definition at line 122 of file RMC01AnalysisManager.hh.
Referenced by RMC01AnalysisManager().
|
private |
Definition at line 146 of file RMC01AnalysisManager.hh.
Referenced by EndOfEvent().
|
private |
Definition at line 179 of file RMC01AnalysisManager.hh.
Referenced by BeginOfRun(), ComputeMeanEdepAndError(), EndOfEvent(), and EndOfRun().
|
private |
Definition at line 144 of file RMC01AnalysisManager.hh.
Referenced by EndOfEvent(), and SetPrecision().
|
private |
Definition at line 173 of file RMC01AnalysisManager.hh.
Referenced by EndOfEventForAdjointSimulation(), RMC01AnalysisManager(), SetPrimaryExpSpectrumForAdjointSim(), and SetPrimaryPowerLawSpectrumForAdjointSim().
|
private |
Definition at line 172 of file RMC01AnalysisManager.hh.
Referenced by PrimDiffAndDirFluxForAdjointSim(), SetPrimaryExpSpectrumForAdjointSim(), and SetPrimaryPowerLawSpectrumForAdjointSim().
|
private |
Definition at line 128 of file RMC01AnalysisManager.hh.
Referenced by book(), EndOfEventForAdjointSimulation(), and EndOfEventForForwardSimulation().
|
private |
Definition at line 161 of file RMC01AnalysisManager.hh.
Referenced by book(), and EndOfEventForAdjointSimulation().
|
private |
Definition at line 142 of file RMC01AnalysisManager.hh.
Referenced by BeginOfRun(), EndOfEvent(), EndOfEventForAdjointSimulation(), and EndOfEventForForwardSimulation().
|
private |
Definition at line 145 of file RMC01AnalysisManager.hh.
Referenced by EndOfEvent().
|
private |
Definition at line 183 of file RMC01AnalysisManager.hh.
Referenced by BeginOfRun(), EndOfEvent(), EndOfRun(), and RMC01AnalysisManager().