LArSoft
v07_13_02
Liquid Argon Software toolkit - http://larsoft.org/
|
#include "ISCalcSeparate.h"
Public Member Functions | |
ISCalcSeparate () | |
virtual | ~ISCalcSeparate () |
void | Initialize (const detinfo::LArProperties *larp, const detinfo::DetectorProperties *detp, const sim::LArG4Parameters *lgp, const spacecharge::SpaceCharge *sce) |
void | Reset () |
void | CalculateIonizationAndScintillation (sim::SimEnergyDeposit const &edep) |
double | EnergyDeposit () const |
double | NumberIonizationElectrons () const |
double | NumberScintillationPhotons () const |
double | EFieldAtStep (double efield, sim::SimEnergyDeposit const &edep) |
Private Member Functions | |
double | EFieldAtStep (double efield, float x, float y, float z) |
void | CalculateIonization (float e, float ds, float x, float y, float z) |
void | CalculateIonization (sim::SimEnergyDeposit const &edep) |
void | CalculateScintillation (float e, int pdg) |
void | CalculateScintillation (sim::SimEnergyDeposit const &edep) |
Private Attributes | |
double | fRecombA |
from LArG4Parameters service More... | |
double | fRecombk |
from LArG4Parameters service More... | |
double | fModBoxA |
from LArG4Parameters service More... | |
double | fModBoxB |
from LArG4Parameters service More... | |
bool | fUseModBoxRecomb |
from LArG4Parameters service More... | |
double | fGeVToElectrons |
from LArG4Parameters service More... | |
double | fScintYieldFactor |
scintillation yield factor More... | |
double | fEnergyDeposit |
total energy deposited in the step More... | |
double | fNumIonElectrons |
number of ionization electrons for this step More... | |
double | fNumScintPhotons |
number of scintillation photons for this step More... | |
geo::Vector_t | fEfieldOffsets |
const detinfo::LArProperties * | fLArProp |
const spacecharge::SpaceCharge * | fSCE |
const detinfo::DetectorProperties * | fDetProp |
const sim::LArG4Parameters * | fLArG4Prop |
Definition at line 26 of file ISCalcSeparate.h.
larg4::ISCalcSeparate::ISCalcSeparate | ( | ) |
Definition at line 35 of file ISCalcSeparate.cxx.
|
virtual |
Definition at line 40 of file ISCalcSeparate.cxx.
|
private |
Definition at line 91 of file ISCalcSeparate.cxx.
References detinfo::DetectorProperties::Efield(), EFieldAtStep(), fDetProp, fEnergyDeposit, fGeVToElectrons, fModBoxA, fModBoxB, fNumIonElectrons, fRecombA, fRecombk, fUseModBoxRecomb, LOG_DEBUG, x, y, and z.
Referenced by CalculateIonization(), and CalculateIonizationAndScintillation().
|
private |
Definition at line 135 of file ISCalcSeparate.cxx.
References CalculateIonization(), sim::SimEnergyDeposit::Energy(), sim::SimEnergyDeposit::MidPointX(), sim::SimEnergyDeposit::MidPointY(), sim::SimEnergyDeposit::MidPointZ(), and sim::SimEnergyDeposit::StepLength().
void larg4::ISCalcSeparate::CalculateIonizationAndScintillation | ( | sim::SimEnergyDeposit const & | edep | ) |
Definition at line 192 of file ISCalcSeparate.cxx.
References CalculateIonization(), CalculateScintillation(), sim::SimEnergyDeposit::Energy(), and fEnergyDeposit.
Referenced by larg4::ISCalculationAna::analyze(), spacecharge::ShiftEdepSCE::produce(), detsim::SimDriftElectrons::produce(), and phot::PhotonLibraryPropagation::produce().
|
private |
Definition at line 141 of file ISCalcSeparate.cxx.
References detinfo::LArProperties::AlphaScintYield(), e, detinfo::LArProperties::ElectronScintYield(), fLArProp, fNumScintPhotons, fScintYieldFactor, detinfo::LArProperties::KaonScintYield(), LOG_DEBUG, detinfo::LArProperties::MuonScintYield(), detinfo::LArProperties::PionScintYield(), detinfo::LArProperties::ProtonScintYield(), detinfo::LArProperties::ScintByParticleType(), and detinfo::LArProperties::ScintYield().
Referenced by CalculateIonizationAndScintillation(), and CalculateScintillation().
|
private |
Definition at line 186 of file ISCalcSeparate.cxx.
References CalculateScintillation(), sim::SimEnergyDeposit::Energy(), and sim::SimEnergyDeposit::PdgCode().
double larg4::ISCalcSeparate::EFieldAtStep | ( | double | efield, |
sim::SimEnergyDeposit const & | edep | ||
) |
Definition at line 199 of file ISCalcSeparate.cxx.
References sim::SimEnergyDeposit::MidPointX(), sim::SimEnergyDeposit::MidPointY(), and sim::SimEnergyDeposit::MidPointZ().
Referenced by CalculateIonization().
|
private |
Definition at line 205 of file ISCalcSeparate.cxx.
References spacecharge::SpaceCharge::EnableSimEfieldSCE(), fEfieldOffsets, fSCE, spacecharge::SpaceCharge::GetEfieldOffsets(), x, and y.
|
inline |
Definition at line 39 of file ISCalcSeparate.h.
Referenced by larg4::ISCalculationAna::analyze().
void larg4::ISCalcSeparate::Initialize | ( | const detinfo::LArProperties * | larp, |
const detinfo::DetectorProperties * | detp, | ||
const sim::LArG4Parameters * | lgp, | ||
const spacecharge::SpaceCharge * | sce | ||
) |
Definition at line 45 of file ISCalcSeparate.cxx.
References detinfo::DetectorProperties::Density(), fDetProp, fGeVToElectrons, fLArG4Prop, fLArProp, fModBoxA, fModBoxB, fRecombA, fRecombk, fSCE, fScintYieldFactor, fUseModBoxRecomb, sim::LArG4Parameters::GeVToElectrons(), sim::LArG4Parameters::ModBoxA(), sim::LArG4Parameters::ModBoxB(), sim::LArG4Parameters::RecombA(), sim::LArG4Parameters::Recombk(), Reset(), detinfo::DetectorProperties::Temperature(), and sim::LArG4Parameters::UseModBoxRecomb().
Referenced by spacecharge::ShiftEdepSCE::beginJob(), larg4::ISCalculationAna::beginJob(), detsim::SimDriftElectrons::beginJob(), spacecharge::ShiftEdepSCE::produce(), and phot::PhotonLibraryPropagation::produce().
|
inline |
Definition at line 40 of file ISCalcSeparate.h.
Referenced by larg4::ISCalculationAna::analyze(), spacecharge::ShiftEdepSCE::produce(), and detsim::SimDriftElectrons::produce().
|
inline |
Definition at line 41 of file ISCalcSeparate.h.
Referenced by larg4::ISCalculationAna::analyze(), spacecharge::ShiftEdepSCE::produce(), and phot::PhotonLibraryPropagation::produce().
void larg4::ISCalcSeparate::Reset | ( | ) |
Definition at line 80 of file ISCalcSeparate.cxx.
References fEnergyDeposit, fNumIonElectrons, and fNumScintPhotons.
Referenced by larg4::ISCalculationAna::analyze(), Initialize(), spacecharge::ShiftEdepSCE::produce(), detsim::SimDriftElectrons::produce(), and phot::PhotonLibraryPropagation::produce().
|
private |
Definition at line 65 of file ISCalcSeparate.h.
Referenced by CalculateIonization(), and Initialize().
|
private |
Definition at line 60 of file ISCalcSeparate.h.
Referenced by EFieldAtStep().
|
private |
total energy deposited in the step
Definition at line 56 of file ISCalcSeparate.h.
Referenced by CalculateIonization(), CalculateIonizationAndScintillation(), and Reset().
|
private |
from LArG4Parameters service
Definition at line 52 of file ISCalcSeparate.h.
Referenced by CalculateIonization(), and Initialize().
|
private |
Definition at line 66 of file ISCalcSeparate.h.
Referenced by Initialize().
|
private |
Definition at line 63 of file ISCalcSeparate.h.
Referenced by CalculateScintillation(), and Initialize().
|
private |
from LArG4Parameters service
Definition at line 49 of file ISCalcSeparate.h.
Referenced by CalculateIonization(), and Initialize().
|
private |
from LArG4Parameters service
Definition at line 50 of file ISCalcSeparate.h.
Referenced by CalculateIonization(), and Initialize().
|
private |
number of ionization electrons for this step
Definition at line 57 of file ISCalcSeparate.h.
Referenced by CalculateIonization(), and Reset().
|
private |
number of scintillation photons for this step
Definition at line 58 of file ISCalcSeparate.h.
Referenced by CalculateScintillation(), and Reset().
|
private |
from LArG4Parameters service
Definition at line 47 of file ISCalcSeparate.h.
Referenced by CalculateIonization(), and Initialize().
|
private |
from LArG4Parameters service
Definition at line 48 of file ISCalcSeparate.h.
Referenced by CalculateIonization(), and Initialize().
|
private |
Definition at line 64 of file ISCalcSeparate.h.
Referenced by EFieldAtStep(), and Initialize().
|
private |
scintillation yield factor
Definition at line 54 of file ISCalcSeparate.h.
Referenced by CalculateScintillation(), and Initialize().
|
private |
from LArG4Parameters service
Definition at line 51 of file ISCalcSeparate.h.
Referenced by CalculateIonization(), and Initialize().