LArSoft  v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
ISCalculationSeparate.h
Go to the documentation of this file.
1 #ifndef IS_ISCALCULATION_H
11 #define IS_ISCALCULATION_H
12 
14 
15 // forward declaration
16 namespace detinfo {
17  class LArProperties;
18  class DetectorProperties;
19 }
20 namespace fhicl {
21  class ParameterSet;
22 }
23 namespace sim {
24  class SimEnergyDeposit;
25  class LArG4Parameters;
26 }
27 namespace spacecharge {
28  class SpaceCharge;
29 }
30 
31 namespace detsim {
32 
34  public:
35  explicit ISCalculationSeparate(fhicl::ParameterSet const& pset);
36 
37  struct Data {
38  double energyDeposit;
39  double numElectrons;
40  double numPhotons;
41  };
42  Data CalculateIonizationAndScintillation(detinfo::DetectorPropertiesData const& detProp,
43  sim::SimEnergyDeposit const& edep) const;
44  double EFieldAtStep(double efield, sim::SimEnergyDeposit const& edep)
45  const; //value of field with any corrections for this step
46 
47  private:
48  double fRecombA;
49  double fRecombk;
50  double fModBoxA;
51  double fModBoxB;
53  double fGeVToElectrons;
54 
55  double EFieldAtStep(double efield, float x, float y, float z) const;
56 
59 
60  double CalculateIonization(detinfo::DetectorPropertiesData const& detProp,
61  sim::SimEnergyDeposit const& edep) const;
62  double CalculateScintillation(sim::SimEnergyDeposit const& edep) const;
63  };
64 }
65 #endif // LARG4_ISCALCULATION_H
Float_t x
Definition: compare.C:6
const detinfo::LArProperties * fLArProp
double fGeVToElectrons
from LArG4Parameters service
Float_t y
Definition: compare.C:6
Double_t z
Definition: plot.C:276
Detector simulation of raw signals on wires.
const spacecharge::SpaceCharge * fSCE
Definitions of geometry vector data types.
parameter set interface
General LArSoft Utilities.
Double_t edep
Definition: macro.C:13
Monte Carlo Simulation.
Energy deposition in the active material.