LArSoft
v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
|
#include "SemiAnalyticalModel.h"
Classes | |
struct | Dims |
struct | OpticalDetector |
Public Member Functions | |
SemiAnalyticalModel (const fhicl::ParameterSet &VUVHits, const fhicl::ParameterSet &VISHits, const bool doReflectedLight=false, const bool includeAnodeReflections=false, const bool useXeAbsorption=false) | |
void | detectedDirectVisibilities (std::vector< double > &DetectedVisibilities, geo::Point_t const &ScintPoint) const |
void | detectedReflectedVisibilities (std::vector< double > &ReflDetectedVisibilities, geo::Point_t const &ScintPoint, bool AnodeMode=false) const |
Private Member Functions | |
double | VUVAbsorptionLength () const |
double | VUVVisibility (geo::Point_t const &ScintPoint, OpticalDetector const &opDet) const |
double | VISVisibility (geo::Point_t const &ScintPoint, OpticalDetector const &opDet, const double cathode_visibility, geo::Point_t const &hotspot, bool AnodeMode=false) const |
double | Gaisser_Hillas (const double x, const double *par) const |
double | Rectangle_SolidAngle (const double a, const double b, const double d) const |
double | Rectangle_SolidAngle (Dims const &o, geo::Vector_t const &v, const int OpDetOrientation) const |
double | Disk_SolidAngle (const double d, const double h, const double b) const |
double | Omega_Dome_Model (const double distance, const double theta) const |
bool | isOpDetInSameTPC (geo::Point_t const &ScintPoint, geo::Point_t const &OpDetPoint) const |
std::vector< OpticalDetector > | opticalDetectors () const |
Private Attributes | |
geo::GeometryCore const & | fGeom |
const larg4::ISTPC | fISTPC |
const int | fNTPC |
const std::vector< geo::BoxBoundedGeo > | fActiveVolumes |
const TVector3 | fcathode_centre |
const TVector3 | fanode_centre |
double | fplane_depth |
double | fanode_plane_depth |
const size_t | fNOpDets |
const std::vector< OpticalDetector > | fOpDetector |
double | fradius |
Dims | fcathode_plane |
Dims | fanode_plane |
double | fdelta_angulo_vuv |
bool | fIsFlatPDCorr |
std::vector< std::vector< double > > | fGHvuvpars_flat |
std::vector< double > | fborder_corr_angulo_flat |
std::vector< std::vector< double > > | fborder_corr_flat |
bool | fIsFlatPDCorrLat |
std::vector< std::vector< double > > | fGHvuvpars_flat_lateral |
std::vector< double > | fborder_corr_angulo_flat_lateral |
std::vector< std::vector< double > > | fborder_corr_flat_lateral |
bool | fIsDomePDCorr |
std::vector< std::vector< double > > | fGHvuvpars_dome |
std::vector< double > | fborder_corr_angulo_dome |
std::vector< std::vector< double > > | fborder_corr_dome |
bool | fApplyFieldCageTransparency |
double | fFieldCageTransparencyLateral |
double | fFieldCageTransparencyCathode |
const bool | fDoReflectedLight |
const bool | fIncludeAnodeReflections |
double | fdelta_angulo_vis |
double | fAnodeReflectivity |
std::vector< double > | fvis_distances_x_flat |
std::vector< double > | fvis_distances_r_flat |
std::vector< std::vector< std::vector< double > > > | fvispars_flat |
std::vector< double > | fvis_distances_x_flat_lateral |
std::vector< double > | fvis_distances_r_flat_lateral |
std::vector< std::vector< std::vector< double > > > | fvispars_flat_lateral |
std::vector< double > | fvis_distances_x_dome |
std::vector< double > | fvis_distances_r_dome |
std::vector< std::vector< std::vector< double > > > | fvispars_dome |
const bool | fUseXeAbsorption |
double | fvuv_absorption_length |
Definition at line 33 of file SemiAnalyticalModel.h.
phot::SemiAnalyticalModel::SemiAnalyticalModel | ( | const fhicl::ParameterSet & | VUVHits, |
const fhicl::ParameterSet & | VISHits, | ||
const bool | doReflectedLight = false , |
||
const bool | includeAnodeReflections = false , |
||
const bool | useXeAbsorption = false |
||
) |
Definition at line 28 of file SemiAnalyticalModel.cxx.
References util::abs(), larg4::ISTPC::extractActiveLArVolume(), fActiveVolumes, fanode_centre, fanode_plane, fanode_plane_depth, fAnodeReflectivity, fApplyFieldCageTransparency, fborder_corr_angulo_dome, fborder_corr_angulo_flat, fborder_corr_angulo_flat_lateral, fborder_corr_dome, fborder_corr_flat, fborder_corr_flat_lateral, fcathode_centre, fcathode_plane, fdelta_angulo_vis, fdelta_angulo_vuv, fDoReflectedLight, fFieldCageTransparencyCathode, fFieldCageTransparencyLateral, fGeom, fGHvuvpars_dome, fGHvuvpars_flat, fGHvuvpars_flat_lateral, fIncludeAnodeReflections, geo::TPCGeo::FirstPlane(), fIsDomePDCorr, fIsFlatPDCorr, fIsFlatPDCorrLat, fISTPC, fNOpDets, fNTPC, fOpDetector, fplane_depth, fradius, fUseXeAbsorption, fvis_distances_r_dome, fvis_distances_r_flat, fvis_distances_r_flat_lateral, fvis_distances_x_dome, fvis_distances_x_flat, fvis_distances_x_flat_lateral, fvispars_dome, fvispars_flat, fvispars_flat_lateral, fvuv_absorption_length, geo::TPCGeo::GetCathodeCenter(), geo::PlaneGeo::GetCenter(), phot::SemiAnalyticalModel::Dims::h, geo::GeometryCore::NOpDets(), geo::GeometryCore::NTPC(), opticalDetectors(), geo::GeometryCore::TPC(), VUVAbsorptionLength(), and phot::SemiAnalyticalModel::Dims::w.
void phot::SemiAnalyticalModel::detectedDirectVisibilities | ( | std::vector< double > & | DetectedVisibilities, |
geo::Point_t const & | ScintPoint | ||
) | const |
Definition at line 175 of file SemiAnalyticalModel.cxx.
References util::counter(), fNOpDets, fOpDetector, isOpDetInSameTPC(), and VUVVisibility().
void phot::SemiAnalyticalModel::detectedReflectedVisibilities | ( | std::vector< double > & | ReflDetectedVisibilities, |
geo::Point_t const & | ScintPoint, | ||
bool | AnodeMode = false |
||
) | const |
Definition at line 317 of file SemiAnalyticalModel.cxx.
References util::abs(), util::counter(), fanode_centre, fanode_plane, fanode_plane_depth, fborder_corr_angulo_flat, fborder_corr_flat, fcathode_centre, fcathode_plane, fGHvuvpars_flat, fIsFlatPDCorr, fNOpDets, fOpDetector, fplane_depth, fvuv_absorption_length, Gaisser_Hillas(), phot::interpolate(), isOpDetInSameTPC(), util::pi(), r, Rectangle_SolidAngle(), and VISVisibility().
|
private |
Definition at line 542 of file SemiAnalyticalModel.cxx.
References d, e, phot::isApproximatelyEqual(), phot::isApproximatelyZero(), phot::isDefinitelyGreaterThan(), phot::isDefinitelyLessThan(), and util::pi().
Referenced by VISVisibility(), and VUVVisibility().
|
private |
Definition at line 529 of file SemiAnalyticalModel.cxx.
Referenced by detectedReflectedVisibilities(), and VUVVisibility().
|
private |
Definition at line 730 of file SemiAnalyticalModel.cxx.
References util::abs(), and fNTPC.
Referenced by detectedDirectVisibilities(), and detectedReflectedVisibilities().
|
private |
Definition at line 695 of file SemiAnalyticalModel.cxx.
References fradius, and util::pi().
Referenced by VISVisibility(), and VUVVisibility().
|
private |
Definition at line 744 of file SemiAnalyticalModel.cxx.
References util::counter(), fGeom, fNOpDets, geo::OpDetGeo::GetCenter(), geo::OpDetGeo::Height(), geo::OpDetGeo::isBar(), geo::OpDetGeo::isSphere(), geo::OpDetGeo::Length(), geo::GeometryCore::OpDetGeoFromOpDet(), and geo::OpDetGeo::Width().
Referenced by SemiAnalyticalModel().
|
private |
Definition at line 608 of file SemiAnalyticalModel.cxx.
References d, and phot::fast_acos().
Referenced by detectedReflectedVisibilities(), Rectangle_SolidAngle(), VISVisibility(), and VUVVisibility().
|
private |
Definition at line 618 of file SemiAnalyticalModel.cxx.
References util::abs(), phot::SemiAnalyticalModel::Dims::h, phot::isApproximatelyZero(), phot::isDefinitelyGreaterThan(), Rectangle_SolidAngle(), and phot::SemiAnalyticalModel::Dims::w.
|
private |
Definition at line 406 of file SemiAnalyticalModel.cxx.
References util::abs(), phot::SemiAnalyticalModel::OpticalDetector::center, Disk_SolidAngle(), fanode_plane_depth, fAnodeReflectivity, phot::fast_acos(), fcathode_centre, fdelta_angulo_vis, fIsDomePDCorr, fIsFlatPDCorr, fIsFlatPDCorrLat, fplane_depth, fradius, fvis_distances_r_dome, fvis_distances_r_flat, fvis_distances_r_flat_lateral, fvis_distances_x_dome, fvis_distances_x_flat, fvis_distances_x_flat_lateral, fvispars_dome, fvispars_flat, fvispars_flat_lateral, phot::SemiAnalyticalModel::OpticalDetector::h, phot::interpolate2(), Omega_Dome_Model(), phot::SemiAnalyticalModel::OpticalDetector::orientation, util::pi(), r, Rectangle_SolidAngle(), phot::SemiAnalyticalModel::OpticalDetector::type, and phot::SemiAnalyticalModel::OpticalDetector::w.
Referenced by detectedReflectedVisibilities().
|
private |
Definition at line 149 of file SemiAnalyticalModel.cxx.
References fUseXeAbsorption, and phot::interpolate().
Referenced by SemiAnalyticalModel().
|
private |
Definition at line 190 of file SemiAnalyticalModel.cxx.
References util::abs(), phot::SemiAnalyticalModel::OpticalDetector::center, Disk_SolidAngle(), phot::fast_acos(), fborder_corr_angulo_dome, fborder_corr_angulo_flat, fborder_corr_angulo_flat_lateral, fborder_corr_dome, fborder_corr_flat, fborder_corr_flat_lateral, fcathode_centre, fdelta_angulo_vuv, fGHvuvpars_dome, fGHvuvpars_flat, fGHvuvpars_flat_lateral, fIsDomePDCorr, fIsFlatPDCorr, fIsFlatPDCorrLat, fradius, fvuv_absorption_length, Gaisser_Hillas(), phot::SemiAnalyticalModel::OpticalDetector::h, phot::interpolate(), Omega_Dome_Model(), phot::SemiAnalyticalModel::OpticalDetector::orientation, util::pi(), r, Rectangle_SolidAngle(), phot::SemiAnalyticalModel::OpticalDetector::type, and phot::SemiAnalyticalModel::OpticalDetector::w.
Referenced by detectedDirectVisibilities().
|
private |
Definition at line 101 of file SemiAnalyticalModel.h.
Referenced by SemiAnalyticalModel().
|
private |
Definition at line 102 of file SemiAnalyticalModel.h.
Referenced by detectedReflectedVisibilities(), and SemiAnalyticalModel().
|
private |
Definition at line 110 of file SemiAnalyticalModel.h.
Referenced by detectedReflectedVisibilities(), and SemiAnalyticalModel().
|
private |
Definition at line 103 of file SemiAnalyticalModel.h.
Referenced by detectedReflectedVisibilities(), SemiAnalyticalModel(), and VISVisibility().
|
private |
Definition at line 140 of file SemiAnalyticalModel.h.
Referenced by SemiAnalyticalModel(), and VISVisibility().
|
private |
Definition at line 131 of file SemiAnalyticalModel.h.
Referenced by SemiAnalyticalModel().
|
private |
Definition at line 128 of file SemiAnalyticalModel.h.
Referenced by SemiAnalyticalModel(), and VUVVisibility().
|
private |
Definition at line 117 of file SemiAnalyticalModel.h.
Referenced by detectedReflectedVisibilities(), SemiAnalyticalModel(), and VUVVisibility().
|
private |
Definition at line 122 of file SemiAnalyticalModel.h.
Referenced by SemiAnalyticalModel(), and VUVVisibility().
|
private |
Definition at line 129 of file SemiAnalyticalModel.h.
Referenced by SemiAnalyticalModel(), and VUVVisibility().
|
private |
Definition at line 118 of file SemiAnalyticalModel.h.
Referenced by detectedReflectedVisibilities(), SemiAnalyticalModel(), and VUVVisibility().
|
private |
Definition at line 123 of file SemiAnalyticalModel.h.
Referenced by SemiAnalyticalModel(), and VUVVisibility().
|
private |
Definition at line 102 of file SemiAnalyticalModel.h.
Referenced by detectedReflectedVisibilities(), SemiAnalyticalModel(), VISVisibility(), and VUVVisibility().
|
private |
Definition at line 109 of file SemiAnalyticalModel.h.
Referenced by detectedReflectedVisibilities(), and SemiAnalyticalModel().
|
private |
Definition at line 139 of file SemiAnalyticalModel.h.
Referenced by SemiAnalyticalModel(), and VISVisibility().
|
private |
Definition at line 113 of file SemiAnalyticalModel.h.
Referenced by SemiAnalyticalModel(), and VUVVisibility().
|
private |
Definition at line 136 of file SemiAnalyticalModel.h.
Referenced by SemiAnalyticalModel().
|
private |
Definition at line 133 of file SemiAnalyticalModel.h.
Referenced by SemiAnalyticalModel().
|
private |
Definition at line 132 of file SemiAnalyticalModel.h.
Referenced by SemiAnalyticalModel().
|
private |
Definition at line 98 of file SemiAnalyticalModel.h.
Referenced by opticalDetectors(), and SemiAnalyticalModel().
|
private |
Definition at line 127 of file SemiAnalyticalModel.h.
Referenced by SemiAnalyticalModel(), and VUVVisibility().
|
private |
Definition at line 116 of file SemiAnalyticalModel.h.
Referenced by detectedReflectedVisibilities(), SemiAnalyticalModel(), and VUVVisibility().
|
private |
Definition at line 121 of file SemiAnalyticalModel.h.
Referenced by SemiAnalyticalModel(), and VUVVisibility().
|
private |
Definition at line 137 of file SemiAnalyticalModel.h.
Referenced by SemiAnalyticalModel().
|
private |
Definition at line 126 of file SemiAnalyticalModel.h.
Referenced by SemiAnalyticalModel(), VISVisibility(), and VUVVisibility().
|
private |
Definition at line 115 of file SemiAnalyticalModel.h.
Referenced by detectedReflectedVisibilities(), SemiAnalyticalModel(), VISVisibility(), and VUVVisibility().
|
private |
Definition at line 120 of file SemiAnalyticalModel.h.
Referenced by SemiAnalyticalModel(), VISVisibility(), and VUVVisibility().
|
private |
Definition at line 99 of file SemiAnalyticalModel.h.
Referenced by SemiAnalyticalModel().
|
private |
Definition at line 106 of file SemiAnalyticalModel.h.
Referenced by detectedDirectVisibilities(), detectedReflectedVisibilities(), opticalDetectors(), and SemiAnalyticalModel().
|
private |
Definition at line 100 of file SemiAnalyticalModel.h.
Referenced by isOpDetInSameTPC(), and SemiAnalyticalModel().
|
private |
Definition at line 107 of file SemiAnalyticalModel.h.
Referenced by detectedDirectVisibilities(), detectedReflectedVisibilities(), and SemiAnalyticalModel().
|
private |
Definition at line 103 of file SemiAnalyticalModel.h.
Referenced by detectedReflectedVisibilities(), SemiAnalyticalModel(), and VISVisibility().
|
private |
Definition at line 108 of file SemiAnalyticalModel.h.
Referenced by Omega_Dome_Model(), SemiAnalyticalModel(), VISVisibility(), and VUVVisibility().
|
private |
Definition at line 155 of file SemiAnalyticalModel.h.
Referenced by SemiAnalyticalModel(), and VUVAbsorptionLength().
|
private |
Definition at line 151 of file SemiAnalyticalModel.h.
Referenced by SemiAnalyticalModel(), and VISVisibility().
|
private |
Definition at line 143 of file SemiAnalyticalModel.h.
Referenced by SemiAnalyticalModel(), and VISVisibility().
|
private |
Definition at line 147 of file SemiAnalyticalModel.h.
Referenced by SemiAnalyticalModel(), and VISVisibility().
|
private |
Definition at line 150 of file SemiAnalyticalModel.h.
Referenced by SemiAnalyticalModel(), and VISVisibility().
|
private |
Definition at line 142 of file SemiAnalyticalModel.h.
Referenced by SemiAnalyticalModel(), and VISVisibility().
|
private |
Definition at line 146 of file SemiAnalyticalModel.h.
Referenced by SemiAnalyticalModel(), and VISVisibility().
|
private |
Definition at line 152 of file SemiAnalyticalModel.h.
Referenced by SemiAnalyticalModel(), and VISVisibility().
|
private |
Definition at line 144 of file SemiAnalyticalModel.h.
Referenced by SemiAnalyticalModel(), and VISVisibility().
|
private |
Definition at line 148 of file SemiAnalyticalModel.h.
Referenced by SemiAnalyticalModel(), and VISVisibility().
|
private |
Definition at line 156 of file SemiAnalyticalModel.h.
Referenced by detectedReflectedVisibilities(), SemiAnalyticalModel(), and VUVVisibility().