All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
ISCalcSeparate.h
Go to the documentation of this file.
1 ////////////////////////////////////////////////////////////////////////
2 // Class: ISCalcSeparate
3 // Plugin Type: algorithm
4 // File: ISCalcSeparate.h and ISCalcSeparate.cxx
5 // Description:
6 // Interface to algorithm class for a specific calculation of ionization electrons and scintillation photons
7 // assuming there is no correlation between the two
8 // Input: 'sim::SimEnergyDeposit'
9 // Output: num of Photons and Electrons
10 // Sept.16 by Mu Wei
11 ////////////////////////////////////////////////////////////////////////
12 
13 #ifndef IS_ISCALCSEPARATE_H
14 #define IS_ISCALCSEPARATE_H
15 
17 
18 namespace spacecharge {
19  class SpaceCharge;
20 }
21 
22 #include <utility>
23 
24 namespace larg4 {
25  class ISCalcSeparate : public ISCalc {
26  public:
28  void Reset();
29 
30  double EFieldAtStep(double efield,
31  sim::SimEnergyDeposit const& edep)
32  override; //value of field with any corrections for this step
34  sim::SimEnergyDeposit const& edep) override;
35 
36  private:
37  double fGeVToElectrons; ///< from LArG4Parameters service
38  double fRecombA; ///< from LArG4Parameters service
39  double fRecombk; ///< from LArG4Parameters service
40  double fModBoxA; ///< from LArG4Parameters service
41  double fModBoxB; ///< from LArG4Parameters service
42  bool fUseModBoxRecomb; ///< from LArG4Parameters service
43 
45 
46  double CalcIon(detinfo::DetectorPropertiesData const& detProp,
47  sim::SimEnergyDeposit const& edep);
48  std::pair<double, double> CalcScint(sim::SimEnergyDeposit const& edep);
49  };
50 
51 }
52 #endif // LARG4_ISCALCULATIONSEPARATE_H
std::pair< double, double > CalcScint(sim::SimEnergyDeposit const &edep)
double fModBoxA
from LArG4Parameters service
ISCalcData CalcIonAndScint(detinfo::DetectorPropertiesData const &detProp, sim::SimEnergyDeposit const &edep) override
double fRecombk
from LArG4Parameters service
double CalcIon(detinfo::DetectorPropertiesData const &detProp, sim::SimEnergyDeposit const &edep)
double fRecombA
from LArG4Parameters service
double EFieldAtStep(double efield, sim::SimEnergyDeposit const &edep) override
const spacecharge::SpaceCharge * fSCE
Energy deposition in the active material.
double fGeVToElectrons
from LArG4Parameters service
double fModBoxB
from LArG4Parameters service
auto const detProp
bool fUseModBoxRecomb
from LArG4Parameters service