List of all members | Public Member Functions | Private Member Functions | Private Attributes
otoa::LongitudinalXmaxScanner Class Reference

#include <LongitudinalXmaxScanner.h>

Public Member Functions

void EstimateXmaxErrors (const RecEvent &theRecEvent)
 
const std::vector< double > & GetErrorAtXmax () const
 
const std::vector
< LongitudinalScan > & 
GetLongitudinalScan () const
 
 LongitudinalXmaxScanner ()
 
void SetUseBGLoop (const bool use)
 

Private Member Functions

double CalculateLightFactor (const utl::Point &pos1, const utl::Point &pos2, const unsigned int eyeId) const
 
std::vector< unsigned short > CalculatePixelTrigger (const std::vector< double > &) const
 
double CalculateTimeLength (const utl::Point &pos1, const utl::Point &pos2, const unsigned int eyeId) const
 
double CalculateTotalError (const double geomVar, const double profVar, const FDEvent &fdEvent)
 
void CalculateXmaxUncertainties (const FDEvent &)
 
double EstimateXmaxVariance (const std::vector< double > &X, const std::vector< double > &ghFunc, const std::vector< double > &eY, const double nMax, const double xMax, const double X0, const double lambda) const
 
bool FillLightFactors (const FDEvent &)
 
std::vector< double > GetChangedDepth (const FDEvent &, double, double, double, double, double)
 
std::array< unsigned int, 2 > GetTelescopeAndPixelId (const utl::Vector &dir, const unsigned int eyeId) const
 
void GetTelescopeProperties (unsigned int)
 
bool IsNearBorder (const utl::Vector &direction, const unsigned int eyeId, const unsigned int tekId, const double zeta) const
 
bool IsTriggered (double dT, double dAng, double npe) const
 
void PrintCurrentVariables (const FDEvent &) const
 
void PropagateGeometryUncertainty (const FDEvent &)
 
double PropagateProfileUncertainty (const FDEvent &, const double X)
 

Private Attributes

double fAngularLength = 0
 
unsigned int fBins = 0
 
double fCalorimetricEnergy = 0
 
std::vector< bool > fCloseToBoundary
 
std::vector< double > fDeltaAngle
 
std::vector< double > fDeltaTime
 
std::vector< double > fDepth
 
double fDepthBinWidth = 10*utl::g/utl::cm2
 
std::vector< double > fErrorAtXmax
 
double fGainVariance = 0
 
std::vector< double > fGeomVariance
 
double fGeomVarScaleFac = 0
 
std::vector< LongitudinalScanfLongitudinalScan
 
double fMinViewingAngle = 0
 
std::vector< double > fNoiseVariance
 
std::vector< bool > fOutsideTelescope
 
double fPhotoElectronBGRMS = 0
 
std::vector< double > fPhotoElectronFactor
 
double fPhotonToPhotoElectron = 0
 
double fPixelSize = 0
 
double fShowerAngularLength = 0
 
std::vector< double > fTime
 
double fTrackMax = 0
 
double fTrackMin = 0
 
bool fUseBGLoop = false
 
int fVerbosity = 0
 
std::vector< double > fViewingAngle
 
double fXmax = 0
 
double fXmaxAngularLength = 0
 
double fXmaxGeomVar = 0
 
double fXmaxProfVar = 0
 
double fXmaxTotErr = 0
 

Detailed Description

Definition at line 46 of file LongitudinalXmaxScanner.h.

Constructor & Destructor Documentation

otoa::LongitudinalXmaxScanner::LongitudinalXmaxScanner ( )
inline

Definition at line 48 of file LongitudinalXmaxScanner.h.

Member Function Documentation

double LongitudinalXmaxScanner::CalculateLightFactor ( const utl::Point pos1,
const utl::Point pos2,
const unsigned int  eyeId 
) const
private
vector< unsigned short > LongitudinalXmaxScanner::CalculatePixelTrigger ( const std::vector< double > &  npeVec) const
private

Definition at line 791 of file LongitudinalXmaxScanner.cc.

double LongitudinalXmaxScanner::CalculateTimeLength ( const utl::Point pos1,
const utl::Point pos2,
const unsigned int  eyeId 
) const
private
double LongitudinalXmaxScanner::CalculateTotalError ( const double  geomVar,
const double  profVar,
const FDEvent &  fdEvent 
)
private

Definition at line 852 of file LongitudinalXmaxScanner.cc.

References degree, kMaxVariance, std::pow(), SpaceAngle(), and sqrt().

void LongitudinalXmaxScanner::CalculateXmaxUncertainties ( const FDEvent &  fdEvent)
private
void LongitudinalXmaxScanner::EstimateXmaxErrors ( const RecEvent &  theRecEvent)

Definition at line 108 of file LongitudinalXmaxScanner.cc.

References galactic::eV, kMaxVariance, and sqrt().

double LongitudinalXmaxScanner::EstimateXmaxVariance ( const std::vector< double > &  X,
const std::vector< double > &  ghFunc,
const std::vector< double > &  eY,
const double  nMax,
const double  xMax,
const double  X0,
const double  lambda 
) const
private
bool LongitudinalXmaxScanner::FillLightFactors ( const FDEvent &  fdEvent)
private
vector< double > LongitudinalXmaxScanner::GetChangedDepth ( const FDEvent &  fdEvent,
double  nSigRp,
double  nSigChi0,
double  nSigT0,
double  nSigPhi,
double  nSigTheta 
)
private
const std::vector<double>& otoa::LongitudinalXmaxScanner::GetErrorAtXmax ( ) const
inline

Definition at line 55 of file LongitudinalXmaxScanner.h.

References fErrorAtXmax.

const std::vector<LongitudinalScan>& otoa::LongitudinalXmaxScanner::GetLongitudinalScan ( ) const
inline

Definition at line 52 of file LongitudinalXmaxScanner.h.

References fLongitudinalScan.

std::array< unsigned int, 2 > LongitudinalXmaxScanner::GetTelescopeAndPixelId ( const utl::Vector dir,
const unsigned int  eyeId 
) const
private
void LongitudinalXmaxScanner::GetTelescopeProperties ( unsigned int  eyeId)
private
bool LongitudinalXmaxScanner::IsNearBorder ( const utl::Vector direction,
const unsigned int  eyeId,
const unsigned int  tekId,
const double  zeta 
) const
private
bool LongitudinalXmaxScanner::IsTriggered ( double  dT,
double  dAng,
double  npe 
) const
private

Definition at line 835 of file LongitudinalXmaxScanner.cc.

References ns.

void LongitudinalXmaxScanner::PrintCurrentVariables ( const FDEvent &  fdEvent) const
private

Definition at line 594 of file LongitudinalXmaxScanner.cc.

References utl::cm2, degree, utl::g, and sqrt().

void LongitudinalXmaxScanner::PropagateGeometryUncertainty ( const FDEvent &  fdEvent)
private

Definition at line 351 of file LongitudinalXmaxScanner.cc.

References AverageErr(), INFO, kMaxVariance, and std::pow().

double LongitudinalXmaxScanner::PropagateProfileUncertainty ( const FDEvent &  fdEvent,
const double  X 
)
private
void otoa::LongitudinalXmaxScanner::SetUseBGLoop ( const bool  use)
inline

Definition at line 59 of file LongitudinalXmaxScanner.h.

References fUseBGLoop.

Referenced by otoa::FOVCalculator::SetUseBGLoop().

Member Data Documentation

double otoa::LongitudinalXmaxScanner::fAngularLength = 0
private

Definition at line 141 of file LongitudinalXmaxScanner.h.

unsigned int otoa::LongitudinalXmaxScanner::fBins = 0
private

Definition at line 137 of file LongitudinalXmaxScanner.h.

double otoa::LongitudinalXmaxScanner::fCalorimetricEnergy = 0
private

Definition at line 119 of file LongitudinalXmaxScanner.h.

std::vector<bool> otoa::LongitudinalXmaxScanner::fCloseToBoundary
private

Definition at line 133 of file LongitudinalXmaxScanner.h.

std::vector<double> otoa::LongitudinalXmaxScanner::fDeltaAngle
private

Definition at line 129 of file LongitudinalXmaxScanner.h.

std::vector<double> otoa::LongitudinalXmaxScanner::fDeltaTime
private

Definition at line 130 of file LongitudinalXmaxScanner.h.

std::vector<double> otoa::LongitudinalXmaxScanner::fDepth
private

Definition at line 125 of file LongitudinalXmaxScanner.h.

double otoa::LongitudinalXmaxScanner::fDepthBinWidth = 10*utl::g/utl::cm2
private

Definition at line 111 of file LongitudinalXmaxScanner.h.

std::vector<double> otoa::LongitudinalXmaxScanner::fErrorAtXmax
private

Definition at line 154 of file LongitudinalXmaxScanner.h.

Referenced by GetErrorAtXmax().

double otoa::LongitudinalXmaxScanner::fGainVariance = 0
private

Definition at line 114 of file LongitudinalXmaxScanner.h.

std::vector<double> otoa::LongitudinalXmaxScanner::fGeomVariance
private

Definition at line 126 of file LongitudinalXmaxScanner.h.

double otoa::LongitudinalXmaxScanner::fGeomVarScaleFac = 0
private

Definition at line 142 of file LongitudinalXmaxScanner.h.

std::vector<LongitudinalScan> otoa::LongitudinalXmaxScanner::fLongitudinalScan
private

Definition at line 153 of file LongitudinalXmaxScanner.h.

Referenced by GetLongitudinalScan().

double otoa::LongitudinalXmaxScanner::fMinViewingAngle = 0
private

Definition at line 140 of file LongitudinalXmaxScanner.h.

std::vector<double> otoa::LongitudinalXmaxScanner::fNoiseVariance
private

Definition at line 132 of file LongitudinalXmaxScanner.h.

std::vector<bool> otoa::LongitudinalXmaxScanner::fOutsideTelescope
private

Definition at line 134 of file LongitudinalXmaxScanner.h.

double otoa::LongitudinalXmaxScanner::fPhotoElectronBGRMS = 0
private

Definition at line 120 of file LongitudinalXmaxScanner.h.

std::vector<double> otoa::LongitudinalXmaxScanner::fPhotoElectronFactor
private

Definition at line 131 of file LongitudinalXmaxScanner.h.

double otoa::LongitudinalXmaxScanner::fPhotonToPhotoElectron = 0
private

Definition at line 115 of file LongitudinalXmaxScanner.h.

double otoa::LongitudinalXmaxScanner::fPixelSize = 0
private

Definition at line 116 of file LongitudinalXmaxScanner.h.

double otoa::LongitudinalXmaxScanner::fShowerAngularLength = 0
private

Definition at line 121 of file LongitudinalXmaxScanner.h.

std::vector<double> otoa::LongitudinalXmaxScanner::fTime
private

Definition at line 127 of file LongitudinalXmaxScanner.h.

double otoa::LongitudinalXmaxScanner::fTrackMax = 0
private

Definition at line 139 of file LongitudinalXmaxScanner.h.

double otoa::LongitudinalXmaxScanner::fTrackMin = 0
private

Definition at line 138 of file LongitudinalXmaxScanner.h.

bool otoa::LongitudinalXmaxScanner::fUseBGLoop = false
private

Definition at line 150 of file LongitudinalXmaxScanner.h.

Referenced by SetUseBGLoop().

int otoa::LongitudinalXmaxScanner::fVerbosity = 0
private

Definition at line 110 of file LongitudinalXmaxScanner.h.

std::vector<double> otoa::LongitudinalXmaxScanner::fViewingAngle
private

Definition at line 128 of file LongitudinalXmaxScanner.h.

double otoa::LongitudinalXmaxScanner::fXmax = 0
private

Definition at line 122 of file LongitudinalXmaxScanner.h.

double otoa::LongitudinalXmaxScanner::fXmaxAngularLength = 0
private

Definition at line 148 of file LongitudinalXmaxScanner.h.

double otoa::LongitudinalXmaxScanner::fXmaxGeomVar = 0
private

Definition at line 145 of file LongitudinalXmaxScanner.h.

double otoa::LongitudinalXmaxScanner::fXmaxProfVar = 0
private

Definition at line 146 of file LongitudinalXmaxScanner.h.

double otoa::LongitudinalXmaxScanner::fXmaxTotErr = 0
private

Definition at line 147 of file LongitudinalXmaxScanner.h.


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

, generated on Tue Sep 26 2023.