Pandora
Pandora source code navigator
Loading...
Searching...
No Matches
LArRotationalTransformationPlugin.h
Go to the documentation of this file.
1
8#ifndef LAR_ROTATIONAL_TRANSFORMATION_PLUGIN_H
9#define LAR_ROTATIONAL_TRANSFORMATION_PLUGIN_H 1
10
12
13namespace lar_content
14{
15
20{
21public:
26
27 virtual double UVtoW(const double u, const double v) const;
28 virtual double VWtoU(const double v, const double w) const;
29 virtual double WUtoV(const double w, const double u) const;
30
31 virtual double UVtoY(const double u, const double v) const;
32 virtual double UVtoZ(const double u, const double v) const;
33 virtual double UWtoY(const double u, const double w) const;
34 virtual double UWtoZ(const double u, const double w) const;
35 virtual double VWtoY(const double v, const double w) const;
36 virtual double VWtoZ(const double v, const double w) const;
37
38 virtual double YZtoU(const double y, const double z) const;
39 virtual double YZtoV(const double y, const double z) const;
40 virtual double YZtoW(const double y, const double z) const;
41
42 virtual void GetMinChiSquaredYZ(const double u, const double v, const double w, const double sigmaU, const double sigmaV,
43 const double sigmaW, double &y, double &z, double &chiSquared) const;
44 virtual void GetMinChiSquaredYZ(const double u, const double v, const double w, const double sigmaU, const double sigmaV, const double sigmaW,
45 const double uFit, const double vFit, const double wFit, const double sigmaFit, double &y, double &z, double &chiSquared) const;
46
47private:
50
51 double m_thetaU;
52 double m_thetaV;
53 double m_thetaW;
54
55 double m_sinU;
56 double m_sinV;
57 double m_sinW;
58 double m_cosU;
59 double m_cosV;
60 double m_cosW;
61 double m_sinVminusU;
62 double m_sinWminusV;
63 double m_sinUminusW;
64
69};
70
71} // namespace lar_content
72
73#endif // #ifndef LAR_ROTATIONAL_TRANSFORMATION_PLUGIN_H
Header file for the lar transformation plugin interface class.
virtual double YZtoW(const double y, const double z) const
Transform from (Y,Z) to W position.
virtual void GetMinChiSquaredYZ(const double u, const double v, const double w, const double sigmaU, const double sigmaV, const double sigmaW, double &y, double &z, double &chiSquared) const
Get the y, z position that yields the minimum chi squared value with respect to specified u,...
double m_maxAngularDiscrepancyU
Maximum allowed difference between u wire angles between LArTPCs.
virtual double YZtoV(const double y, const double z) const
Transform from (Y,Z) to V position.
double m_maxSigmaDiscrepancy
Maximum allowed difference between like wire sigma values between LArTPCs.
virtual double UWtoY(const double u, const double w) const
Transform from (U,W) to Y position.
virtual double VWtoY(const double v, const double w) const
Transform from (V,W) to Y position.
virtual double UWtoZ(const double u, const double w) const
Transform from (U,W) to Z position.
virtual double UVtoW(const double u, const double v) const
Transform from (U,V) to W position.
virtual double VWtoZ(const double v, const double w) const
Transform from (V,W) to Z position.
virtual double WUtoV(const double w, const double u) const
Transform from (W,U) to V position.
virtual double YZtoU(const double y, const double z) const
Transform from (Y,Z) to U position.
virtual double UVtoY(const double u, const double v) const
Transform from (U,V) to Y position.
virtual double UVtoZ(const double u, const double v) const
Transform from (U,V) to Z position.
double m_maxAngularDiscrepancyW
Maximum allowed difference between w wire angles between LArTPCs.
pandora::StatusCode Initialize()
Perform any operations that must occur after reading settings, but before running the process.
double m_maxAngularDiscrepancyV
Maximum allowed difference between v wire angles between LArTPCs.
pandora::StatusCode ReadSettings(const pandora::TiXmlHandle xmlHandle)
Read the algorithm settings.
virtual double VWtoU(const double v, const double w) const
Transform from (V,W) to U position.
LArTransformationPlugin class.
StatusCode
The StatusCode enum.