LArSoft  v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
ISCalculationCorrelated.h
Go to the documentation of this file.
1 // \file ISCalculationCorrelated.h
3 // \brief Interface to algorithm class for a specific calculation of
4 // ionization electrons and scintillation photons, based on
5 // simple microphysics arguments to establish an anticorrelation
6 // between these two quantities.
7 //
8 // To enable this in simulation, change LArG4Parameters variable
9 // in your fhicl file:
10 //
11 // services.LArG4Parameters.IonAndScintCalculator: "Correlated"
12 //
13 // \author wforeman @ iit.edu
14 // Modified: Adding corrections for low electric field (LArQL model)
15 // Mar 2021 by L. Paulucci and F. Marinho
17 #ifndef LARG4_ISCALCULATIONCORRELATED_H
18 #define LARG4_ISCALCULATIONCORRELATED_H
19 
21 namespace detinfo {
22  class DetectorPropertiesData;
23 }
24 
25 // forward declarations
26 class G4Step;
27 
28 namespace larg4 {
29 
31  public:
33 
34  void Reset();
35  void CalculateIonizationAndScintillation(const G4Step* step);
36  double StepSizeLimit() const { return fStepSize; }
37 
38  private:
39  double fStepSize;
40  double fEfield;
41  double fWion;
42  double fWph;
43  double fScintPreScale;
44  double fRecombA;
45  double fRecombk;
46  double fModBoxA;
47  double fModBoxB;
48  double fLarqlChi0A;
49  double fLarqlChi0B;
50  double fLarqlChi0C;
51  double fLarqlChi0D;
52  double fLarqlAlpha;
53  double fLarqlBeta;
54  double fEllipsModBoxA;
55  double fEllipsModBoxB;
56  double fEllipsModBoxR;
60 
61  double EscapingEFraction(
62  double const dEdx); //LArQL chi0 function = fraction of escaping electrons
63  double FieldCorrection(
64  double const EF,
65  double const dEdx); //LArQL f_corr function = correction factor for electric field dependence
66  };
67 }
68 #endif // LARG4_ISCALCULATIONCORRELATED_H
double fWion
W_ion (23.6 eV) == 1/fGeVToElectrons.
double fModBoxA
from LArG4Parameters service
double fLarqlChi0D
from LArG4Parameters service
double fLarqlChi0B
from LArG4Parameters service
double fEllipsModBoxR
from LArG4Parameters service
Geant4 interface.
double fLarqlAlpha
from LArG4Parameters service
bool fUseModLarqlRecomb
from LArG4Parameters service
bool fUseEllipsModBoxRecomb
from LArG4Parameters service
double fLarqlChi0C
from LArG4Parameters service
ntupleExperimental Reset()
bool fUseModBoxRecomb
from LArG4Parameters service
General LArSoft Utilities.
Interface to algorithm class for a specific detector channel mapping.
float dEdx(detinfo::DetectorClocksData const &clockData, detinfo::DetectorPropertiesData const &detProp, const TCSlice &slc, TP3D &tp3d)
Definition: PFPUtils.cxx:2675
double fEllipsModBoxB
from LArG4Parameters service
double fStepSize
maximum step to take
double fScintPreScale
scintillation pre-scale from LArProperties service
double fEllipsModBoxA
from LArG4Parameters service
double fRecombA
from LArG4Parameters service
double fLarqlChi0A
from LArG4Parameters service
double fRecombk
from LArG4Parameters service
double fEfield
value of electric field from LArProperties service
double fModBoxB
from LArG4Parameters service
double fLarqlBeta
from LArG4Parameters service