LArSoft
v07_13_02
Liquid Argon Software toolkit - http://larsoft.org/
|
#include "PhotonVisibilityService.h"
Public Member Functions | |
~PhotonVisibilityService () | |
PhotonVisibilityService (fhicl::ParameterSet const &pset, art::ActivityRegistry ®) | |
void | reconfigure (fhicl::ParameterSet const &p) |
double | GetQuenchingFactor (double dQdx) const |
float | GetVisibility (double const *xyz, unsigned int OpChannel, bool wantReflected=false) const |
float const * | GetAllVisibilities (double const *xyz, bool wantReflected=false) const |
void | LoadLibrary () const |
void | StoreLibrary () |
void | StoreLightProd (int VoxID, double N) |
void | RetrieveLightProd (int &VoxID, double &N) const |
void | SetLibraryEntry (int VoxID, int OpChannel, float N, bool wantReflected=false) |
float | GetLibraryEntry (int VoxID, int OpChannel, bool wantReflected=false) const |
float const * | GetLibraryEntries (int VoxID, bool wantReflected=false) const |
float const * | GetReflT0s (double const *xyz) const |
void | SetLibraryReflT0Entry (int VoxID, int OpChannel, float value) |
float const * | GetLibraryReflT0Entries (int VoxID) const |
float | GetLibraryReflT0Entry (int VoxID, int Channel) const |
const std::vector< float > * | GetTimingPar (double const *xyz) const |
void | SetLibraryTimingParEntry (int VoxID, int OpChannel, float value, size_t parnum) |
const std::vector< float > * | GetLibraryTimingParEntries (int VoxID) const |
float | GetLibraryTimingParEntry (int VoxID, int Channel, size_t npar) const |
TF1 * | GetTimingTF1 (double const *xyz) const |
void | SetLibraryTimingTF1Entry (int VoxID, int OpChannel, TF1 func) |
TF1 * | GetLibraryTimingTF1Entries (int VoxID) const |
void | SetDirectLightPropFunctions (TF1 const *functions[8], double &d_break, double &d_max, double &tf1_sampling_factor) const |
void | SetReflectedCOLightPropFunctions (TF1 const *functions[5], double &t0_max, double &t0_break_point) const |
bool | IsBuildJob () const |
bool | UseParameterization () const |
bool | StoreReflected () const |
bool | StoreReflT0 () const |
bool | IncludeParPropTime () const |
size_t | ParPropTimeNpar () const |
std::string | ParPropTimeFormula () const |
bool | IncludePropTime () const |
const sim::PhotonVoxelDef & | GetVoxelDef () const |
size_t | NOpChannels () const |
Static Public Member Functions | |
static double | DistanceToOpDet (double const *xyz, unsigned int OpDet) |
static double | SolidAngleFactor (double const *xyz, unsigned int OpDet) |
Private Member Functions | |
const TVector3 | LibLocation (const double *xyz) const |
Definition at line 25 of file PhotonVisibilityService.h.
phot::PhotonVisibilityService::~PhotonVisibilityService | ( | ) |
Definition at line 44 of file PhotonVisibilityService_service.cc.
References fparsCte, fparsCte_far, fparsCte_refl, fparslogNorm, fparslogNorm_far, fparslogNorm_refl, fparsMPV, fparsMPV_far, fparsMPV_refl, fparsSlope, fparsSlope_refl, fparsWidth, fparsWidth_refl, and fTheLibrary.
phot::PhotonVisibilityService::PhotonVisibilityService | ( | fhicl::ParameterSet const & | pset, |
art::ActivityRegistry & | reg | ||
) |
Definition at line 63 of file PhotonVisibilityService_service.cc.
References reconfigure().
|
static |
Definition at line 373 of file PhotonVisibilityService_service.cc.
References geo::OpDetGeo::DistanceToPoint(), and geo::GeometryCore::OpDetGeoFromOpDet().
float const * phot::PhotonVisibilityService::GetAllVisibilities | ( | double const * | xyz, |
bool | wantReflected = false |
||
) | const |
Definition at line 355 of file PhotonVisibilityService_service.cc.
References fInterpolate, fVoxelDef, GetLibraryEntries(), GetVisibility(), sim::PhotonVoxelDef::GetVoxelID(), LibLocation(), and NOpChannels().
Referenced by cosmic::BeamFlashTrackMatchTaggerAlg::AddLightFromSegment(), opdet::FlashHypothesisCreator::CreateFlashHypothesesFromSegment(), larg4::OpFastScintillation::RecordPhotonsProduced(), and opdet::TrackTimeAssoc::ScanMIPHypotheses().
float const * phot::PhotonVisibilityService::GetLibraryEntries | ( | int | VoxID, |
bool | wantReflected = false |
||
) | const |
Definition at line 459 of file PhotonVisibilityService_service.cc.
References fTheLibrary, phot::IPhotonLibrary::GetCounts(), phot::IPhotonLibrary::GetReflCounts(), and LoadLibrary().
Referenced by GetAllVisibilities().
float phot::PhotonVisibilityService::GetLibraryEntry | ( | int | VoxID, |
int | OpChannel, | ||
bool | wantReflected = false |
||
) | const |
Definition at line 472 of file PhotonVisibilityService_service.cc.
References fTheLibrary, phot::IPhotonLibrary::GetCount(), phot::IPhotonLibrary::GetReflCount(), and LoadLibrary().
Referenced by GetVisibility().
float const * phot::PhotonVisibilityService::GetLibraryReflT0Entries | ( | int | VoxID | ) | const |
Definition at line 496 of file PhotonVisibilityService_service.cc.
References fTheLibrary, phot::IPhotonLibrary::GetReflT0s(), and LoadLibrary().
Referenced by GetReflT0s().
float phot::PhotonVisibilityService::GetLibraryReflT0Entry | ( | int | VoxID, |
int | Channel | ||
) | const |
Definition at line 519 of file PhotonVisibilityService_service.cc.
References fTheLibrary, phot::IPhotonLibrary::GetReflT0(), and LoadLibrary().
const std::vector< float > * phot::PhotonVisibilityService::GetLibraryTimingParEntries | ( | int | VoxID | ) | const |
Definition at line 547 of file PhotonVisibilityService_service.cc.
References fTheLibrary, phot::PhotonLibrary::GetTimingPars(), and LoadLibrary().
Referenced by GetTimingPar().
float phot::PhotonVisibilityService::GetLibraryTimingParEntry | ( | int | VoxID, |
int | Channel, | ||
size_t | npar | ||
) | const |
Definition at line 596 of file PhotonVisibilityService_service.cc.
References fTheLibrary, phot::PhotonLibrary::GetTimingPar(), and LoadLibrary().
TF1 * phot::PhotonVisibilityService::GetLibraryTimingTF1Entries | ( | int | VoxID | ) | const |
Definition at line 558 of file PhotonVisibilityService_service.cc.
References fTheLibrary, phot::PhotonLibrary::GetTimingTF1s(), and LoadLibrary().
Referenced by GetTimingTF1().
double phot::PhotonVisibilityService::GetQuenchingFactor | ( | double | dQdx | ) | const |
Definition at line 342 of file PhotonVisibilityService_service.cc.
float const * phot::PhotonVisibilityService::GetReflT0s | ( | double const * | xyz | ) | const |
Definition at line 488 of file PhotonVisibilityService_service.cc.
References fVoxelDef, GetLibraryReflT0Entries(), sim::PhotonVoxelDef::GetVoxelID(), and LibLocation().
Referenced by larg4::OpFastScintillation::RecordPhotonsProduced().
const std::vector< float > * phot::PhotonVisibilityService::GetTimingPar | ( | double const * | xyz | ) | const |
Definition at line 532 of file PhotonVisibilityService_service.cc.
References fVoxelDef, GetLibraryTimingParEntries(), sim::PhotonVoxelDef::GetVoxelID(), and LibLocation().
TF1 * phot::PhotonVisibilityService::GetTimingTF1 | ( | double const * | xyz | ) | const |
Definition at line 538 of file PhotonVisibilityService_service.cc.
References fVoxelDef, GetLibraryTimingTF1Entries(), sim::PhotonVoxelDef::GetVoxelID(), and LibLocation().
Referenced by larg4::OpFastScintillation::RecordPhotonsProduced().
float phot::PhotonVisibilityService::GetVisibility | ( | double const * | xyz, |
unsigned int | OpChannel, | ||
bool | wantReflected = false |
||
) | const |
Definition at line 393 of file PhotonVisibilityService_service.cc.
References fInterpolate, fVoxelDef, GetLibraryEntry(), sim::PhotonVoxelDef::GetNeighboringVoxelIDs(), sim::PhotonVoxelDef::GetVoxelID(), LibLocation(), and n.
Referenced by phot::CreateHybridLibrary::CreateHybridLibrary(), and GetAllVisibilities().
|
inline |
Definition at line 79 of file PhotonVisibilityService.h.
References fVoxelDef, LibLocation(), and NOpChannels().
Referenced by phot::CreateHybridLibrary::CreateHybridLibrary(), evgen::LightSource::LightSource(), and LoadLibrary().
|
inline |
Definition at line 73 of file PhotonVisibilityService.h.
References fParPropTime.
Referenced by larg4::OpFastScintillation::propagation_time(), and larg4::OpFastScintillation::RecordPhotonsProduced().
|
inline |
Definition at line 77 of file PhotonVisibilityService.h.
References fIncludePropTime.
Referenced by larg4::OpFastScintillation::OpFastScintillation(), and larg4::OpFastScintillation::propagation_time().
|
inline |
Definition at line 69 of file PhotonVisibilityService.h.
References fLibraryBuildJob.
Referenced by opdet::SimPhotonCounter::analyze(), opdet::SimPhotonCounter::endJob(), and evgen::LightSource::produce().
|
private |
Definition at line 651 of file PhotonVisibilityService_service.cc.
References DEFINE_ART_SERVICE, and fReflectOverZeroX.
Referenced by GetAllVisibilities(), GetReflT0s(), GetTimingPar(), GetTimingTF1(), GetVisibility(), and GetVoxelDef().
void phot::PhotonVisibilityService::LoadLibrary | ( | ) | const |
Definition at line 117 of file PhotonVisibilityService_service.cc.
References phot::PhotonLibrary::CreateEmptyLibrary(), fDoNotLoadLibrary, fHybrid, fLibraryBuildJob, fLibraryFile, fParameterization, fParPropTime_MaxRange, fParPropTime_npar, fStoreReflected, fStoreReflT0, fTheLibrary, sim::PhotonVoxelDef::GetNVoxels(), GetVoxelDef(), phot::PhotonLibrary::LoadLibraryFromFile(), and geo::GeometryCore::NOpDets().
Referenced by GetLibraryEntries(), GetLibraryEntry(), GetLibraryReflT0Entries(), GetLibraryReflT0Entry(), GetLibraryTimingParEntries(), GetLibraryTimingParEntry(), GetLibraryTimingTF1Entries(), NOpChannels(), SetLibraryEntry(), SetLibraryReflT0Entry(), SetLibraryTimingParEntry(), SetLibraryTimingTF1Entry(), and StoreLibrary().
size_t phot::PhotonVisibilityService::NOpChannels | ( | ) | const |
Definition at line 607 of file PhotonVisibilityService_service.cc.
References fTheLibrary, LoadLibrary(), and phot::IPhotonLibrary::NOpChannels().
Referenced by cosmic::BeamFlashTrackMatchTaggerAlg::AddLightFromSegment(), GetAllVisibilities(), GetVoxelDef(), larg4::OpFastScintillation::RecordPhotonsProduced(), and opdet::TrackTimeAssoc::ScanMIPHypotheses().
|
inline |
Definition at line 75 of file PhotonVisibilityService.h.
References fParPropTime_formula.
|
inline |
Definition at line 74 of file PhotonVisibilityService.h.
References fParPropTime_npar.
void phot::PhotonVisibilityService::reconfigure | ( | fhicl::ParameterSet const & | p | ) |
Definition at line 192 of file PhotonVisibilityService_service.cc.
References geo::GeometryCore::CryostatBoundaries(), fD_break, fD_max, fDoNotLoadLibrary, fHybrid, fIncludePropTime, fInterpolate, fLibraryBuildJob, fLibraryFile, fNx, fNy, fNz, fParameterization, fParPropTime, fParPropTime_formula, fParPropTime_MaxRange, fParPropTime_npar, fparsCte, fparsCte_far, fparsCte_refl, fparslogNorm, fparslogNorm_far, fparslogNorm_refl, fparsMPV, fparsMPV_far, fparsMPV_refl, fparsSlope, fparsSlope_refl, fparsWidth, fparsWidth_refl, fReflectOverZeroX, fStoreReflected, fStoreReflT0, fT0_break_point, fT0_max, fTF1_sampling_factor, fUseCryoBoundary, fVoxelDef, fXmax, fXmin, fYmax, fYmin, fZmax, fZmin, and fhicl::ParameterSet::get().
Referenced by PhotonVisibilityService().
void phot::PhotonVisibilityService::RetrieveLightProd | ( | int & | VoxID, |
double & | N | ||
) | const |
Definition at line 432 of file PhotonVisibilityService_service.cc.
References fCurrentValue, and fCurrentVoxel.
Referenced by opdet::SimPhotonCounter::analyze().
void phot::PhotonVisibilityService::SetDirectLightPropFunctions | ( | TF1 const * | functions[8], |
double & | d_break, | ||
double & | d_max, | ||
double & | tf1_sampling_factor | ||
) | const |
Definition at line 616 of file PhotonVisibilityService_service.cc.
References fD_break, fD_max, fparsCte, fparsCte_far, fparslogNorm, fparslogNorm_far, fparsMPV, fparsMPV_far, fparsSlope, fparsWidth, and fTF1_sampling_factor.
Referenced by larg4::OpFastScintillation::OpFastScintillation().
void phot::PhotonVisibilityService::SetLibraryEntry | ( | int | VoxID, |
int | OpChannel, | ||
float | N, | ||
bool | wantReflected = false |
||
) |
Definition at line 440 of file PhotonVisibilityService_service.cc.
References fTheLibrary, LoadLibrary(), LOG_DEBUG, phot::PhotonLibrary::SetCount(), and phot::PhotonLibrary::SetReflCount().
Referenced by opdet::SimPhotonCounter::analyze().
void phot::PhotonVisibilityService::SetLibraryReflT0Entry | ( | int | VoxID, |
int | OpChannel, | ||
float | value | ||
) |
Definition at line 506 of file PhotonVisibilityService_service.cc.
References fTheLibrary, LoadLibrary(), LOG_DEBUG, and phot::PhotonLibrary::SetReflT0().
Referenced by opdet::SimPhotonCounter::analyze().
void phot::PhotonVisibilityService::SetLibraryTimingParEntry | ( | int | VoxID, |
int | OpChannel, | ||
float | value, | ||
size_t | parnum | ||
) |
Definition at line 569 of file PhotonVisibilityService_service.cc.
References fTheLibrary, LoadLibrary(), LOG_DEBUG, and phot::PhotonLibrary::SetTimingPar().
void phot::PhotonVisibilityService::SetLibraryTimingTF1Entry | ( | int | VoxID, |
int | OpChannel, | ||
TF1 | func | ||
) |
Definition at line 582 of file PhotonVisibilityService_service.cc.
References fTheLibrary, LoadLibrary(), LOG_DEBUG, and phot::PhotonLibrary::SetTimingTF1().
void phot::PhotonVisibilityService::SetReflectedCOLightPropFunctions | ( | TF1 const * | functions[5], |
double & | t0_max, | ||
double & | t0_break_point | ||
) | const |
Definition at line 633 of file PhotonVisibilityService_service.cc.
References fparsCte_refl, fparslogNorm_refl, fparsMPV_refl, fparsSlope_refl, fparsWidth_refl, fT0_break_point, and fT0_max.
Referenced by larg4::OpFastScintillation::OpFastScintillation().
|
static |
Definition at line 385 of file PhotonVisibilityService_service.cc.
References geo::OpDetGeo::CosThetaFromNormal(), and geo::GeometryCore::OpDetGeoFromOpDet().
void phot::PhotonVisibilityService::StoreLibrary | ( | ) |
Definition at line 172 of file PhotonVisibilityService_service.cc.
References fHybrid, fLibraryBuildJob, fLibraryFile, fParPropTime_npar, fStoreReflected, fStoreReflT0, fTheLibrary, LoadLibrary(), and phot::PhotonLibrary::StoreLibraryToFile().
Referenced by opdet::SimPhotonCounter::endJob().
void phot::PhotonVisibilityService::StoreLightProd | ( | int | VoxID, |
double | N | ||
) |
Definition at line 421 of file PhotonVisibilityService_service.cc.
References fCurrentValue, and fCurrentVoxel.
Referenced by evgen::LightSource::produce().
|
inline |
Definition at line 71 of file PhotonVisibilityService.h.
References fStoreReflected.
Referenced by opdet::SimPhotonCounter::analyze(), opdet::SimPhotonCounter::beginJob(), larg4::LArG4::LArG4(), and larg4::OpFastScintillation::RecordPhotonsProduced().
|
inline |
Definition at line 72 of file PhotonVisibilityService.h.
References fStoreReflT0.
Referenced by opdet::SimPhotonCounter::analyze(), and larg4::OpFastScintillation::RecordPhotonsProduced().
|
inline |
Definition at line 70 of file PhotonVisibilityService.h.
References fParameterization.
|
private |
Definition at line 87 of file PhotonVisibilityService.h.
Referenced by RetrieveLightProd(), and StoreLightProd().
|
private |
Definition at line 86 of file PhotonVisibilityService.h.
Referenced by RetrieveLightProd(), and StoreLightProd().
|
private |
Definition at line 121 of file PhotonVisibilityService.h.
Referenced by reconfigure(), and SetDirectLightPropFunctions().
|
private |
Definition at line 121 of file PhotonVisibilityService.h.
Referenced by reconfigure(), and SetDirectLightPropFunctions().
|
private |
Definition at line 99 of file PhotonVisibilityService.h.
Referenced by LoadLibrary(), and reconfigure().
|
private |
Definition at line 101 of file PhotonVisibilityService.h.
Referenced by LoadLibrary(), reconfigure(), and StoreLibrary().
|
private |
Definition at line 104 of file PhotonVisibilityService.h.
Referenced by IncludePropTime(), and reconfigure().
|
private |
Definition at line 110 of file PhotonVisibilityService.h.
Referenced by GetAllVisibilities(), GetVisibility(), and reconfigure().
|
private |
Definition at line 98 of file PhotonVisibilityService.h.
Referenced by IsBuildJob(), LoadLibrary(), reconfigure(), and StoreLibrary().
|
private |
Definition at line 129 of file PhotonVisibilityService.h.
Referenced by LoadLibrary(), reconfigure(), and StoreLibrary().
|
private |
Definition at line 94 of file PhotonVisibilityService.h.
Referenced by reconfigure().
|
private |
Definition at line 94 of file PhotonVisibilityService.h.
Referenced by reconfigure().
|
private |
Definition at line 94 of file PhotonVisibilityService.h.
Referenced by reconfigure().
|
private |
Definition at line 100 of file PhotonVisibilityService.h.
Referenced by LoadLibrary(), reconfigure(), and UseParameterization().
|
private |
Definition at line 106 of file PhotonVisibilityService.h.
Referenced by IncludeParPropTime(), and reconfigure().
|
private |
Definition at line 108 of file PhotonVisibilityService.h.
Referenced by ParPropTimeFormula(), and reconfigure().
|
private |
Definition at line 109 of file PhotonVisibilityService.h.
Referenced by LoadLibrary(), and reconfigure().
|
private |
Definition at line 107 of file PhotonVisibilityService.h.
Referenced by LoadLibrary(), ParPropTimeNpar(), reconfigure(), and StoreLibrary().
|
private |
Definition at line 118 of file PhotonVisibilityService.h.
Referenced by reconfigure(), SetDirectLightPropFunctions(), and ~PhotonVisibilityService().
|
private |
Definition at line 119 of file PhotonVisibilityService.h.
Referenced by reconfigure(), SetDirectLightPropFunctions(), and ~PhotonVisibilityService().
|
private |
Definition at line 125 of file PhotonVisibilityService.h.
Referenced by reconfigure(), SetReflectedCOLightPropFunctions(), and ~PhotonVisibilityService().
|
private |
Definition at line 113 of file PhotonVisibilityService.h.
Referenced by reconfigure(), SetDirectLightPropFunctions(), and ~PhotonVisibilityService().
|
private |
Definition at line 114 of file PhotonVisibilityService.h.
Referenced by reconfigure(), SetDirectLightPropFunctions(), and ~PhotonVisibilityService().
|
private |
Definition at line 122 of file PhotonVisibilityService.h.
Referenced by reconfigure(), SetReflectedCOLightPropFunctions(), and ~PhotonVisibilityService().
|
private |
Definition at line 115 of file PhotonVisibilityService.h.
Referenced by reconfigure(), SetDirectLightPropFunctions(), and ~PhotonVisibilityService().
|
private |
Definition at line 116 of file PhotonVisibilityService.h.
Referenced by reconfigure(), SetDirectLightPropFunctions(), and ~PhotonVisibilityService().
|
private |
Definition at line 123 of file PhotonVisibilityService.h.
Referenced by reconfigure(), SetReflectedCOLightPropFunctions(), and ~PhotonVisibilityService().
|
private |
Definition at line 120 of file PhotonVisibilityService.h.
Referenced by reconfigure(), SetDirectLightPropFunctions(), and ~PhotonVisibilityService().
|
private |
Definition at line 126 of file PhotonVisibilityService.h.
Referenced by reconfigure(), SetReflectedCOLightPropFunctions(), and ~PhotonVisibilityService().
|
private |
Definition at line 117 of file PhotonVisibilityService.h.
Referenced by reconfigure(), SetDirectLightPropFunctions(), and ~PhotonVisibilityService().
|
private |
Definition at line 124 of file PhotonVisibilityService.h.
Referenced by reconfigure(), SetReflectedCOLightPropFunctions(), and ~PhotonVisibilityService().
|
private |
Definition at line 111 of file PhotonVisibilityService.h.
Referenced by LibLocation(), and reconfigure().
|
private |
Definition at line 102 of file PhotonVisibilityService.h.
Referenced by LoadLibrary(), reconfigure(), StoreLibrary(), and StoreReflected().
|
private |
Definition at line 103 of file PhotonVisibilityService.h.
Referenced by LoadLibrary(), reconfigure(), StoreLibrary(), and StoreReflT0().
|
private |
Definition at line 127 of file PhotonVisibilityService.h.
Referenced by reconfigure(), and SetReflectedCOLightPropFunctions().
|
private |
Definition at line 127 of file PhotonVisibilityService.h.
Referenced by reconfigure(), and SetReflectedCOLightPropFunctions().
|
private |
Definition at line 121 of file PhotonVisibilityService.h.
Referenced by reconfigure(), and SetDirectLightPropFunctions().
|
mutableprivate |
Definition at line 130 of file PhotonVisibilityService.h.
Referenced by GetLibraryEntries(), GetLibraryEntry(), GetLibraryReflT0Entries(), GetLibraryReflT0Entry(), GetLibraryTimingParEntries(), GetLibraryTimingParEntry(), GetLibraryTimingTF1Entries(), LoadLibrary(), NOpChannels(), SetLibraryEntry(), SetLibraryReflT0Entry(), SetLibraryTimingParEntry(), SetLibraryTimingTF1Entry(), StoreLibrary(), and ~PhotonVisibilityService().
|
private |
Definition at line 96 of file PhotonVisibilityService.h.
Referenced by reconfigure().
|
private |
Definition at line 131 of file PhotonVisibilityService.h.
Referenced by GetAllVisibilities(), GetReflT0s(), GetTimingPar(), GetTimingTF1(), GetVisibility(), GetVoxelDef(), and reconfigure().
|
private |
Definition at line 91 of file PhotonVisibilityService.h.
Referenced by reconfigure().
|
private |
Definition at line 91 of file PhotonVisibilityService.h.
Referenced by reconfigure().
|
private |
Definition at line 92 of file PhotonVisibilityService.h.
Referenced by reconfigure().
|
private |
Definition at line 92 of file PhotonVisibilityService.h.
Referenced by reconfigure().
|
private |
Definition at line 93 of file PhotonVisibilityService.h.
Referenced by reconfigure().
|
private |
Definition at line 93 of file PhotonVisibilityService.h.
Referenced by reconfigure().