#include <DetectorPropertiesStandard.h>
Classes | |
struct | Configuration_t |
Structure for configuration parameters. More... | |
struct | SternheimerParameters_t |
Parameters for Sternheimer density effect corrections. More... | |
Public Types | |
using | providers_type = gar::ProviderPack< geo::GeometryCore, detinfo::GArProperties, detinfo::ECALProperties, detinfo::DetectorClocks > |
List of service providers we depend on. More... | |
Public Member Functions | |
DetectorPropertiesStandard () | |
DetectorPropertiesStandard (fhicl::ParameterSet const &pset, const geo::GeometryCore *geo, const detinfo::GArProperties *gp, const detinfo::ECALProperties *ecalp, const detinfo::DetectorClocks *c, std::set< std::string > const &ignore_params={}) | |
DetectorPropertiesStandard (fhicl::ParameterSet const &pset, providers_type providers, std::set< std::string > const &ignore_params={}) | |
Constructs the provider and sets up the dependencies. More... | |
DetectorPropertiesStandard (DetectorPropertiesStandard const &)=delete | |
virtual | ~DetectorPropertiesStandard ()=default |
void | ValidateAndConfigure (fhicl::ParameterSet const &p, std::set< std::string > const &ignore_params={}) |
Configures the provider, first validating the configuration. More... | |
void | Configure (Configuration_t const &config) |
Extracts the relevant configuration from the specified object. More... | |
Configuration_t | ValidateConfiguration (fhicl::ParameterSet const &p, std::set< std::string > const &ignore_params={}) |
Validates the specified configuration. More... | |
bool | Update (uint64_t ts) |
bool | UpdateClocks (const detinfo::DetectorClocks *clks) |
void | Setup (providers_type providers) |
Sets all the providers at once. More... | |
void | SetGeometry (const geo::GeometryCore *g) |
void | SetGArProperties (const detinfo::GArProperties *gp) |
void | SetECALProperties (const detinfo::ECALProperties *ecalp) |
void | SetDetectorClocks (const detinfo::DetectorClocks *clks) |
void | SetNumberTimeSamples (unsigned int nsamp) |
virtual double | Efield (unsigned int planegap=0) const override |
kV/cm More... | |
virtual double | DriftVelocity (double efield=0., double temperature=0., bool cmPerns=true) const override |
cm/ns if true, otherwise cm/us More... | |
virtual double | ElectronLifetime () const override |
dQ/dX in electrons/cm, returns dE/dX in MeV/cm. More... | |
virtual double | Density (double temperature) const override |
Returns argon density at a given temperature. More... | |
virtual double | Density () const override |
Returns argon density at the temperature from Temperature() More... | |
virtual double | Temperature () const override |
In kelvin. More... | |
virtual double | Eloss (double mom, double mass, double tcut) const override |
Restricted mean energy loss (dE/dx) More... | |
virtual double | ElossVar (double mom, double mass) const override |
Energy loss fluctuation ( ) More... | |
virtual double | SamplingRate () const override |
virtual double | ElectronsToADC () const override |
virtual unsigned int | NumberTimeSamples () const override |
virtual int | TriggerOffset () const override |
virtual double | ConvertXToTicks (double X) const override |
virtual double | ConvertTicksToX (double ticks) const override |
virtual double | ConvertTDCToTicks (double tdc) const override |
virtual double | ConvertTicksToTDC (double ticks) const override |
virtual double | EffectivePixel () const override |
virtual double | LightYield () const override |
virtual double | SiPMGain () const override |
virtual double | IntercalibrationFactor () const override |
virtual double | ADCSaturation () const override |
virtual double | TimeResolution () const override |
virtual double | MeVtoMIP () const override |
virtual double | NoisePx () const override |
void | CheckIfConfigured () const |
Public Member Functions inherited from gar::detinfo::DetectorProperties | |
DetectorProperties (const DetectorProperties &)=delete | |
DetectorProperties (DetectorProperties &&)=delete | |
DetectorProperties & | operator= (const DetectorProperties &)=delete |
DetectorProperties & | operator= (DetectorProperties &&)=delete |
virtual | ~DetectorProperties ()=default |
Protected Member Functions | |
void | CalculateXTicksParams () |
Protected Member Functions inherited from gar::detinfo::DetectorProperties | |
DetectorProperties ()=default | |
Protected Attributes | |
const detinfo::GArProperties * | fGP |
const detinfo::ECALProperties * | fECALP |
const detinfo::DetectorClocks * | fClocks |
const geo::GeometryCore * | fGeo |
std::vector< double > | fEfield |
kV/cm (per inter-plane volume) More... | |
double | fElectronlifetime |
microseconds More... | |
double | fTemperature |
kelvin More... | |
double | fDriftVelocity |
centimeters / microsecond More... | |
double | fSamplingRate |
in ns More... | |
double | fElectronsToADC |
conversion factor for # of ionization electrons to 1 ADC count More... | |
unsigned int | fNumberTimeSamples |
number of clock ticks per event (= readout window) More... | |
SternheimerParameters_t | fSternheimerParameters |
Sternheimer parameters. More... | |
double | fXTicksCoefficient |
Parameters for x<–>ticks. More... | |
detinfo::ElecClock | fTPCClock |
TPC electronics clock. More... | |
Definition at line 35 of file DetectorPropertiesStandard.h.
using gar::detinfo::DetectorPropertiesStandard::providers_type = gar::ProviderPack<geo::GeometryCore, detinfo::GArProperties, detinfo::ECALProperties, detinfo::DetectorClocks> |
List of service providers we depend on.
Definition at line 41 of file DetectorPropertiesStandard.h.
gar::detinfo::DetectorPropertiesStandard::DetectorPropertiesStandard | ( | ) |
Definition at line 35 of file DetectorPropertiesStandard.cxx.
gar::detinfo::DetectorPropertiesStandard::DetectorPropertiesStandard | ( | fhicl::ParameterSet const & | pset, |
const geo::GeometryCore * | geo, | ||
const detinfo::GArProperties * | gp, | ||
const detinfo::ECALProperties * | ecalp, | ||
const detinfo::DetectorClocks * | c, | ||
std::set< std::string > const & | ignore_params = {} |
||
) |
Definition at line 45 of file DetectorPropertiesStandard.cxx.
gar::detinfo::DetectorPropertiesStandard::DetectorPropertiesStandard | ( | fhicl::ParameterSet const & | pset, |
providers_type | providers, | ||
std::set< std::string > const & | ignore_params = {} |
||
) |
Constructs the provider and sets up the dependencies.
pset | FHiCL parameter set for provider configuration |
providers | pack of providers DetectorPropertiesStandard depends on |
Definition at line 79 of file DetectorPropertiesStandard.cxx.
|
delete |
|
virtualdefault |
|
inlineoverridevirtual |
Implements gar::detinfo::DetectorProperties.
Definition at line 244 of file DetectorPropertiesStandard.h.
|
protected |
Definition at line 361 of file DetectorPropertiesStandard.cxx.
void gar::detinfo::DetectorPropertiesStandard::CheckIfConfigured | ( | ) | const |
Verifies that the provider is in a fully configured status
cet::exception | (category DetectorPropertiesStandard) if not ok |
Definition at line 351 of file DetectorPropertiesStandard.cxx.
void gar::detinfo::DetectorPropertiesStandard::Configure | ( | Configuration_t const & | config | ) |
Extracts the relevant configuration from the specified object.
Definition at line 122 of file DetectorPropertiesStandard.cxx.
|
overridevirtual |
Implements gar::detinfo::DetectorProperties.
Definition at line 109 of file DetectorPropertiesStandard.cxx.
|
overridevirtual |
Implements gar::detinfo::DetectorProperties.
Definition at line 115 of file DetectorPropertiesStandard.cxx.
|
overridevirtual |
Implements gar::detinfo::DetectorProperties.
Definition at line 344 of file DetectorPropertiesStandard.cxx.
|
overridevirtual |
Implements gar::detinfo::DetectorProperties.
Definition at line 336 of file DetectorPropertiesStandard.cxx.
|
overridevirtual |
Returns argon density at a given temperature.
temperature | the temperature in kelvin |
Density is nearly a linear function of temperature. See the NIST tables for details Slope is between -6.2 and -6.1, intercept is 1928 kg/m^3. This parameterization will be good to better than 0.5%.g/cm^3
Implements gar::detinfo::DetectorProperties.
Definition at line 189 of file DetectorPropertiesStandard.cxx.
|
inlineoverridevirtual |
Returns argon density at the temperature from Temperature()
Reimplemented from gar::detinfo::DetectorProperties.
Definition at line 196 of file DetectorPropertiesStandard.h.
|
overridevirtual |
cm/ns if true, otherwise cm/us
Implements gar::detinfo::DetectorProperties.
Definition at line 292 of file DetectorPropertiesStandard.cxx.
|
inlineoverridevirtual |
Implements gar::detinfo::DetectorProperties.
Definition at line 240 of file DetectorPropertiesStandard.h.
|
overridevirtual |
kV/cm
Implements gar::detinfo::DetectorProperties.
Definition at line 178 of file DetectorPropertiesStandard.cxx.
|
inlineoverridevirtual |
dQ/dX in electrons/cm, returns dE/dX in MeV/cm.
Implements gar::detinfo::DetectorProperties.
Definition at line 181 of file DetectorPropertiesStandard.h.
|
inlineoverridevirtual |
Implements gar::detinfo::DetectorProperties.
Definition at line 227 of file DetectorPropertiesStandard.h.
|
overridevirtual |
Restricted mean energy loss (dE/dx)
mom | momentum of incident particle [GeV/c] |
mass | mass of incident particle [GeV/c^2] |
tcut | maximum kinetic energy of delta rays [MeV]; 0 for unlimited |
Returned value is always positive. For unrestricted mean energy loss, set tcut = 0 (special case), or tcut large.
Based on Bethe-Bloch formula as contained in particle data book. Material parameters are from the configuration.
Implements gar::detinfo::DetectorProperties.
Definition at line 218 of file DetectorPropertiesStandard.cxx.
|
overridevirtual |
Energy loss fluctuation ( )
mom | momentum of incident particle in [GeV/c] |
Based on Bichsel formula referred to but not given in pdg.
Implements gar::detinfo::DetectorProperties.
Definition at line 270 of file DetectorPropertiesStandard.cxx.
|
inlineoverridevirtual |
Implements gar::detinfo::DetectorProperties.
Definition at line 243 of file DetectorPropertiesStandard.h.
|
inlineoverridevirtual |
Implements gar::detinfo::DetectorProperties.
Definition at line 241 of file DetectorPropertiesStandard.h.
|
inlineoverridevirtual |
Implements gar::detinfo::DetectorProperties.
Definition at line 246 of file DetectorPropertiesStandard.h.
|
inlineoverridevirtual |
Implements gar::detinfo::DetectorProperties.
Definition at line 247 of file DetectorPropertiesStandard.h.
|
inlineoverridevirtual |
Implements gar::detinfo::DetectorProperties.
Definition at line 228 of file DetectorPropertiesStandard.h.
|
inlineoverridevirtual |
Implements gar::detinfo::DetectorProperties.
Definition at line 226 of file DetectorPropertiesStandard.h.
|
inline |
Definition at line 168 of file DetectorPropertiesStandard.h.
|
inline |
Definition at line 167 of file DetectorPropertiesStandard.h.
|
inline |
Definition at line 166 of file DetectorPropertiesStandard.h.
|
inline |
Definition at line 165 of file DetectorPropertiesStandard.h.
|
inline |
Definition at line 170 of file DetectorPropertiesStandard.h.
void gar::detinfo::DetectorPropertiesStandard::Setup | ( | providers_type | providers | ) |
Sets all the providers at once.
providers | the pack of service providers we depend on |
gar::DetectorPropertiesStandard::providers_type providers; providers.set(gar::providerFrom<geo::GeometryGAr>()); providers.set(gar::providerFrom<detinfo::GArPropertiesService>()); providers.set(gar::providerFrom<detinfo::DetectorClocksService>()); detprop->Setup(providers);
Definition at line 167 of file DetectorPropertiesStandard.cxx.
|
inlineoverridevirtual |
Implements gar::detinfo::DetectorProperties.
Definition at line 242 of file DetectorPropertiesStandard.h.
|
inlineoverridevirtual |
In kelvin.
Implements gar::detinfo::DetectorProperties.
Definition at line 199 of file DetectorPropertiesStandard.h.
|
inlineoverridevirtual |
Implements gar::detinfo::DetectorProperties.
Definition at line 245 of file DetectorPropertiesStandard.h.
|
overridevirtual |
Implements gar::detinfo::DetectorProperties.
Definition at line 327 of file DetectorPropertiesStandard.cxx.
bool gar::detinfo::DetectorPropertiesStandard::Update | ( | uint64_t | ts | ) |
Definition at line 91 of file DetectorPropertiesStandard.cxx.
bool gar::detinfo::DetectorPropertiesStandard::UpdateClocks | ( | const detinfo::DetectorClocks * | clks | ) |
Definition at line 99 of file DetectorPropertiesStandard.cxx.
void gar::detinfo::DetectorPropertiesStandard::ValidateAndConfigure | ( | fhicl::ParameterSet const & | p, |
std::set< std::string > const & | ignore_params = {} |
||
) |
Configures the provider, first validating the configuration.
p | configuration parameter set |
ignore_params | parameters to be ignored (optional) |
This method will validate the parameter set (except for the parameters it's explicitly told to ignore) and extract the useful information out of it.
Definition at line 159 of file DetectorPropertiesStandard.cxx.
DetectorPropertiesStandard::Configuration_t gar::detinfo::DetectorPropertiesStandard::ValidateConfiguration | ( | fhicl::ParameterSet const & | p, |
std::set< std::string > const & | ignore_params = {} |
||
) |
Validates the specified configuration.
p | configuration parameter set |
ignore_params | parameters to be ignored (optional) |
This method will validate the parameter set (except for the parameters it's explicitly told to ignore) and it returns an object ready to be used with Configure().
Definition at line 143 of file DetectorPropertiesStandard.cxx.
|
protected |
Definition at line 271 of file DetectorPropertiesStandard.h.
|
protected |
centimeters / microsecond
Definition at line 277 of file DetectorPropertiesStandard.h.
|
protected |
Definition at line 270 of file DetectorPropertiesStandard.h.
|
protected |
kV/cm (per inter-plane volume)
Definition at line 274 of file DetectorPropertiesStandard.h.
|
protected |
microseconds
Definition at line 275 of file DetectorPropertiesStandard.h.
|
protected |
conversion factor for # of ionization electrons to 1 ADC count
Definition at line 279 of file DetectorPropertiesStandard.h.
|
protected |
Definition at line 272 of file DetectorPropertiesStandard.h.
|
protected |
Definition at line 269 of file DetectorPropertiesStandard.h.
|
protected |
number of clock ticks per event (= readout window)
Definition at line 280 of file DetectorPropertiesStandard.h.
|
protected |
in ns
Definition at line 278 of file DetectorPropertiesStandard.h.
|
protected |
Sternheimer parameters.
Definition at line 282 of file DetectorPropertiesStandard.h.
|
protected |
kelvin
Definition at line 276 of file DetectorPropertiesStandard.h.
|
protected |
TPC electronics clock.
Definition at line 286 of file DetectorPropertiesStandard.h.
|
protected |
Parameters for x<–>ticks.
Definition at line 284 of file DetectorPropertiesStandard.h.