Classes | Public Types | Public Member Functions | Protected Attributes | List of all members
gar::detinfo::GArPropertiesStandard Class Reference

Properties related to liquid argon environment in the detector. More...

#include <GArPropertiesStandard.h>

Inheritance diagram for gar::detinfo::GArPropertiesStandard:
gar::detinfo::GArProperties

Classes

struct  Configuration_t
 structure with all configuration parameters More...
 

Public Types

using ConfigurationParameters_t = Configuration_t
 

Public Member Functions

 GArPropertiesStandard ()
 
 GArPropertiesStandard (fhicl::ParameterSet const &pset, std::set< std::string > ignore_params={})
 
 GArPropertiesStandard (GArPropertiesStandard const &)=delete
 
virtual ~GArPropertiesStandard ()=default
 
bool Configure (fhicl::ParameterSet const &pset, std::set< std::string > ignore_params={})
 Configures the provider. More...
 
bool Update (uint64_t ts=0)
 
virtual double RadiationLength () const override
 g/cm^2 More...
 
virtual double AtomicNumber () const override
 Ar atomic number. More...
 
virtual double AtomicMass () const override
 Ar atomic mass (g/mol) More...
 
virtual double ExcitationEnergy () const override
 Ar mean excitation energy (eV) More...
 
virtual double FanoFactor () const override
 Fano factor. More...
 
virtual double LongitudinalDiffusion () const override
 Diffusion constants. More...
 
virtual double TransverseDiffusion () const override
 
void SetRadiationLength (double rl)
 
void SetAtomicNumber (double z)
 
void SetAtomicMass (double a)
 
void SetMeanExcitationEnergy (double e)
 
void SetFanoFactor (double f)
 
void SetLongitudinalDiffusion (double ld)
 
void SetTransverseDiffusion (double td)
 
- Public Member Functions inherited from gar::detinfo::GArProperties
 GArProperties (const GArProperties &)=delete
 
 GArProperties (GArProperties &&)=delete
 
GArPropertiesoperator= (const GArProperties &)=delete
 
GArPropertiesoperator= (GArProperties &&)=delete
 
virtual ~GArProperties ()=default
 

Protected Attributes

bool fIsConfigured
 
double fRadiationLength
 g/cm^2 More...
 
double fZ
 Ar atomic number. More...
 
double fA
 Ar atomic mass (g/mol) More...
 
double fI
 Ar mean excitation energy (eV) More...
 
double fF
 Ar Fano factor. More...
 
double fLongDiff
 longitudinal diffusion in cm^2/ns More...
 
double fTransDiff
 transverse diffusion in cm^2/ns More...
 

Additional Inherited Members

- Protected Member Functions inherited from gar::detinfo::GArProperties
 GArProperties ()=default
 

Detailed Description

Properties related to liquid argon environment in the detector.

This class can access databases via DatabaseUtil service.

Note
Some of the database connection properties are established before the beginning of the job and if they change this service will not be aware of it. These properties petrain, so far, only the connection mode and not any content of the databases themselves.
2: the database connection features for this base class have been removed

Definition at line 46 of file GArPropertiesStandard.h.

Member Typedef Documentation

Definition at line 124 of file GArPropertiesStandard.h.

Constructor & Destructor Documentation

gar::detinfo::GArPropertiesStandard::GArPropertiesStandard ( )

Definition at line 24 of file GArPropertiesStandard.cxx.

gar::detinfo::GArPropertiesStandard::GArPropertiesStandard ( fhicl::ParameterSet const &  pset,
std::set< std::string ignore_params = {} 
)
explicit

Definition at line 30 of file GArPropertiesStandard.cxx.

33 {
34  this->Configure(pset, ignore_params);
35 }
bool Configure(fhicl::ParameterSet const &pset, std::set< std::string > ignore_params={})
Configures the provider.
gar::detinfo::GArPropertiesStandard::GArPropertiesStandard ( GArPropertiesStandard const &  )
delete
virtual gar::detinfo::GArPropertiesStandard::~GArPropertiesStandard ( )
virtualdefault

Member Function Documentation

virtual double gar::detinfo::GArPropertiesStandard::AtomicMass ( ) const
inlineoverridevirtual

Ar atomic mass (g/mol)

Implements gar::detinfo::GArProperties.

Definition at line 73 of file GArPropertiesStandard.h.

73 { return fA; }
double fA
Ar atomic mass (g/mol)
virtual double gar::detinfo::GArPropertiesStandard::AtomicNumber ( ) const
inlineoverridevirtual

Ar atomic number.

Implements gar::detinfo::GArProperties.

Definition at line 70 of file GArPropertiesStandard.h.

70 { return fZ; }
bool gar::detinfo::GArPropertiesStandard::Configure ( fhicl::ParameterSet const &  pset,
std::set< std::string ignore_params = {} 
)

Configures the provider.

Parameters
pconfiguration parameter set
ignore_paramsparameters 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 51 of file GArPropertiesStandard.cxx.

53 {
54  std::set<std::string> ignorable_keys = gar::IgnorableProviderConfigKeys();
55  ignorable_keys.insert(ignore_params.begin(), ignore_params.end());
56 
57  // validation happens here:
59  Configuration_t const& config = config_table();
60 
61  SetRadiationLength (config.RadiationLength() );
62  SetAtomicNumber (config.AtomicNumber() );
63  SetAtomicMass (config.AtomicMass() );
64  SetMeanExcitationEnergy (config.MeanExcitationEnergy() );
65  SetFanoFactor (config.FanoFactor() );
66  SetLongitudinalDiffusion(config.LongitudinalDiffusion());
67  SetTransverseDiffusion (config.TransverseDiffusion() );
68  fIsConfigured = true;
69 
70  return true;
71 }
static Config * config
Definition: config.cpp:1054
std::set< std::string > const & IgnorableProviderConfigKeys()
Returns a list of configuration keys that providers should ignore.
Definition: ProviderUtil.h:35
virtual double gar::detinfo::GArPropertiesStandard::ExcitationEnergy ( ) const
inlineoverridevirtual

Ar mean excitation energy (eV)

Implements gar::detinfo::GArProperties.

Definition at line 76 of file GArPropertiesStandard.h.

76 { return fI; }
double fI
Ar mean excitation energy (eV)
virtual double gar::detinfo::GArPropertiesStandard::FanoFactor ( ) const
inlineoverridevirtual

Fano factor.

Implements gar::detinfo::GArProperties.

Definition at line 79 of file GArPropertiesStandard.h.

79 { return fF; }
virtual double gar::detinfo::GArPropertiesStandard::LongitudinalDiffusion ( ) const
inlineoverridevirtual

Diffusion constants.

Implements gar::detinfo::GArProperties.

Definition at line 82 of file GArPropertiesStandard.h.

82 { return fLongDiff; }
double fLongDiff
longitudinal diffusion in cm^2/ns
virtual double gar::detinfo::GArPropertiesStandard::RadiationLength ( ) const
inlineoverridevirtual

g/cm^2

Implements gar::detinfo::GArProperties.

Definition at line 67 of file GArPropertiesStandard.h.

void gar::detinfo::GArPropertiesStandard::SetAtomicMass ( double  a)
inline

Definition at line 87 of file GArPropertiesStandard.h.

87 { fA = a; }
const double a
double fA
Ar atomic mass (g/mol)
void gar::detinfo::GArPropertiesStandard::SetAtomicNumber ( double  z)
inline

Definition at line 86 of file GArPropertiesStandard.h.

void gar::detinfo::GArPropertiesStandard::SetFanoFactor ( double  f)
inline

Definition at line 89 of file GArPropertiesStandard.h.

void gar::detinfo::GArPropertiesStandard::SetLongitudinalDiffusion ( double  ld)
inline

Definition at line 90 of file GArPropertiesStandard.h.

90 { fLongDiff = ld; }
double fLongDiff
longitudinal diffusion in cm^2/ns
void gar::detinfo::GArPropertiesStandard::SetMeanExcitationEnergy ( double  e)
inline

Definition at line 88 of file GArPropertiesStandard.h.

88 { fI = e; }
double fI
Ar mean excitation energy (eV)
const double e
void gar::detinfo::GArPropertiesStandard::SetRadiationLength ( double  rl)
inline

Definition at line 85 of file GArPropertiesStandard.h.

void gar::detinfo::GArPropertiesStandard::SetTransverseDiffusion ( double  td)
inline

Definition at line 91 of file GArPropertiesStandard.h.

91 { fTransDiff = td; }
double fTransDiff
transverse diffusion in cm^2/ns
virtual double gar::detinfo::GArPropertiesStandard::TransverseDiffusion ( ) const
inlineoverridevirtual

Implements gar::detinfo::GArProperties.

Definition at line 83 of file GArPropertiesStandard.h.

83 { return fTransDiff; }
double fTransDiff
transverse diffusion in cm^2/ns
bool gar::detinfo::GArPropertiesStandard::Update ( uint64_t  ts = 0)

Definition at line 74 of file GArPropertiesStandard.cxx.

75 {
76  if (ts == 0) return false;
77 
78  return true;
79 }

Member Data Documentation

double gar::detinfo::GArPropertiesStandard::fA
protected

Ar atomic mass (g/mol)

Definition at line 116 of file GArPropertiesStandard.h.

double gar::detinfo::GArPropertiesStandard::fF
protected

Ar Fano factor.

Definition at line 118 of file GArPropertiesStandard.h.

double gar::detinfo::GArPropertiesStandard::fI
protected

Ar mean excitation energy (eV)

Definition at line 117 of file GArPropertiesStandard.h.

bool gar::detinfo::GArPropertiesStandard::fIsConfigured
protected

Definition at line 112 of file GArPropertiesStandard.h.

double gar::detinfo::GArPropertiesStandard::fLongDiff
protected

longitudinal diffusion in cm^2/ns

Definition at line 119 of file GArPropertiesStandard.h.

double gar::detinfo::GArPropertiesStandard::fRadiationLength
protected

g/cm^2

Definition at line 114 of file GArPropertiesStandard.h.

double gar::detinfo::GArPropertiesStandard::fTransDiff
protected

transverse diffusion in cm^2/ns

Definition at line 120 of file GArPropertiesStandard.h.

double gar::detinfo::GArPropertiesStandard::fZ
protected

Ar atomic number.

Definition at line 115 of file GArPropertiesStandard.h.


The documentation for this class was generated from the following files: