Pandora
Pandora source code navigator
Loading...
Searching...
No Matches
lar_content::LArRotationalTransformationPlugin Class Reference

LArRotationalTransformationPlugin class. More...

#include "LArRotationalTransformationPlugin.h"

Inheritance diagram for lar_content::LArRotationalTransformationPlugin:
Collaboration diagram for lar_content::LArRotationalTransformationPlugin:

Public Member Functions

 LArRotationalTransformationPlugin ()
 Default constructor.
 
virtual double UVtoW (const double u, const double v) const
 Transform from (U,V) to W position.
 
virtual double VWtoU (const double v, const double w) const
 Transform from (V,W) to U position.
 
virtual double WUtoV (const double w, const double u) const
 Transform from (W,U) to V 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.
 
virtual double UWtoY (const double u, const double w) const
 Transform from (U,W) to Y position.
 
virtual double UWtoZ (const double u, const double w) const
 Transform from (U,W) to Z position.
 
virtual double VWtoY (const double v, const double w) const
 Transform from (V,W) to Y position.
 
virtual double VWtoZ (const double v, const double w) const
 Transform from (V,W) to Z position.
 
virtual double YZtoU (const double y, const double z) const
 Transform from (Y,Z) to U position.
 
virtual double YZtoV (const double y, const double z) const
 Transform from (Y,Z) to V position.
 
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, v and w coordinates.
 
virtual void GetMinChiSquaredYZ (const double u, const double v, const double w, const double sigmaU, const double sigmaV, const double sigmaW, const double uFit, const double vFit, const double wFit, const double sigmaFit, double &y, double &z, double &chiSquared) const
 Get the y, z position that yields the minimum chi squared value with respect to specified u, v and w coordinates and a provided fit to an overall trajectory in 3D.
 
const std::string & GetType () const
 Get the type.
 
const std::string & GetInstanceName () const
 Get the instance name.
 
const PandoraGetPandora () const
 Get the associated pandora instance.
 

Protected Member Functions

virtual StatusCode Reset ()
 Perform any operations when pandora is reset, typically at the end of each event.
 
StatusCode RegisterDetails (const Pandora *const pPandora, const std::string &type, const std::string &instanceName)
 Register i) the pandora instance that will run the process and ii) the process type.
 

Protected Attributes

const Pandoram_pPandora
 The pandora object that will run the process.
 
std::string m_type
 The process type.
 
std::string m_instanceName
 The process instance name.
 

Private Member Functions

pandora::StatusCode Initialize ()
 Perform any operations that must occur after reading settings, but before running the process.
 
pandora::StatusCode ReadSettings (const pandora::TiXmlHandle xmlHandle)
 Read the algorithm settings.
 

Private Attributes

double m_thetaU
 inclination of U wires (radians)
 
double m_thetaV
 inclination of V wires (radians)
 
double m_thetaW
 inclination of W wires (radians)
 
double m_sinU
 sin(thetaU)
 
double m_sinV
 sin(thetaV)
 
double m_sinW
 sin(thetaW)
 
double m_cosU
 cos(thetaU)
 
double m_cosV
 cos(thetaV)
 
double m_cosW
 cos(thetaW)
 
double m_sinVminusU
 sin(thetaV - thetaU)
 
double m_sinWminusV
 sin(thetaW - thetaV)
 
double m_sinUminusW
 sin(thetaU - thetaW)
 
double m_maxAngularDiscrepancyU
 Maximum allowed difference between u wire angles between LArTPCs.
 
double m_maxAngularDiscrepancyV
 Maximum allowed difference between v wire angles between LArTPCs.
 
double m_maxAngularDiscrepancyW
 Maximum allowed difference between w wire angles between LArTPCs.
 
double m_maxSigmaDiscrepancy
 Maximum allowed difference between like wire sigma values between LArTPCs.
 

Detailed Description

Constructor & Destructor Documentation

◆ LArRotationalTransformationPlugin()

lar_content::LArRotationalTransformationPlugin::LArRotationalTransformationPlugin ( )

Default constructor.

Definition at line 28 of file LArRotationalTransformationPlugin.cc.

Member Function Documentation

◆ GetInstanceName()

const std::string & pandora::Process::GetInstanceName ( ) const
inlineinherited

Get the instance name.

Returns
The instance name

Definition at line 109 of file Process.h.

◆ GetMinChiSquaredYZ() [1/2]

void lar_content::LArRotationalTransformationPlugin::GetMinChiSquaredYZ ( const double  u,
const double  v,
const double  w,
const double  sigmaU,
const double  sigmaV,
const double  sigmaW,
const double  uFit,
const double  vFit,
const double  wFit,
const double  sigmaFit,
double &  y,
double &  z,
double &  chiSquared 
) const
virtual

Get the y, z position that yields the minimum chi squared value with respect to specified u, v and w coordinates and a provided fit to an overall trajectory in 3D.

Parameters
uthe u coordinate
vthe v coordinate
wthe w coordinate
sigmaUthe uncertainty in the u coordinate
sigmaVthe uncertainty in the v coordinate
sigmaWthe uncertainty in the w coordinate
uFitthe u coordinate from a fit to an overall trajectory
vFitthe v coordinate from a fit to an overall trajectory
wFitthe w coordinate from a fit to an overall trajectory
sigmaFitthe uncertainty in coordinates extracted from the fit to an overall trajectory
yto receive the y coordinate
zto receive the z coordinate
chiSquaredto receive the chi squared value

Implements pandora::LArTransformationPlugin.

Definition at line 166 of file LArRotationalTransformationPlugin.cc.

Here is the call graph for this function:

◆ GetMinChiSquaredYZ() [2/2]

void lar_content::LArRotationalTransformationPlugin::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
virtual

Get the y, z position that yields the minimum chi squared value with respect to specified u, v and w coordinates.

Parameters
uthe u coordinate
vthe v coordinate
wthe w coordinate
sigmaUthe uncertainty in the u coordinate
sigmaVthe uncertainty in the v coordinate
sigmaWthe uncertainty in the w coordinate
yto receive the y coordinate
zto receive the z coordinate
chiSquaredto receive the chi squared value

Implements pandora::LArTransformationPlugin.

Definition at line 134 of file LArRotationalTransformationPlugin.cc.

Here is the call graph for this function:

◆ GetPandora()

const Pandora & pandora::Process::GetPandora ( ) const
inlineinherited

Get the associated pandora instance.

Returns
the associated pandora instance

Definition at line 116 of file Process.h.

◆ GetType()

const std::string & pandora::Process::GetType ( ) const
inlineinherited

Get the type.

Returns
The type

Definition at line 102 of file Process.h.

◆ Initialize()

StatusCode lar_content::LArRotationalTransformationPlugin::Initialize ( )
privatevirtual

Perform any operations that must occur after reading settings, but before running the process.

Reimplemented from pandora::Process.

Definition at line 275 of file LArRotationalTransformationPlugin.cc.

Here is the call graph for this function:

◆ ReadSettings()

pandora::StatusCode lar_content::LArRotationalTransformationPlugin::ReadSettings ( const pandora::TiXmlHandle  xmlHandle)
privatevirtual

Read the algorithm settings.

Parameters
xmlHandlethe relevant xml handle

Implements pandora::Process.

Definition at line 330 of file LArRotationalTransformationPlugin.cc.

Here is the call graph for this function:

◆ RegisterDetails()

StatusCode pandora::Process::RegisterDetails ( const Pandora *const  pPandora,
const std::string &  type,
const std::string &  instanceName 
)
inlineprotectedinherited

Register i) the pandora instance that will run the process and ii) the process type.

Parameters
pPandoraaddress of the pandora object that will run the process
typethe process type
instanceNamethe process instance name

Definition at line 146 of file Process.h.

Here is the caller graph for this function:

◆ Reset()

StatusCode pandora::Process::Reset ( )
inlineprotectedvirtualinherited

Perform any operations when pandora is reset, typically at the end of each event.

Reimplemented in lar_content::MasterAlgorithm, lar_content::PostProcessingAlgorithm, and lar_content::PreProcessingAlgorithm.

Definition at line 133 of file Process.h.

Here is the caller graph for this function:

◆ UVtoW()

double lar_content::LArRotationalTransformationPlugin::UVtoW ( const double  u,
const double  v 
) const
virtual

Transform from (U,V) to W position.

Parameters
Uthe U position
Vthe V position

Implements pandora::LArTransformationPlugin.

Definition at line 50 of file LArRotationalTransformationPlugin.cc.

◆ UVtoY()

double lar_content::LArRotationalTransformationPlugin::UVtoY ( const double  u,
const double  v 
) const
virtual

Transform from (U,V) to Y position.

Parameters
Uthe U position
Vthe V position

Implements pandora::LArTransformationPlugin.

Definition at line 71 of file LArRotationalTransformationPlugin.cc.

◆ UVtoZ()

double lar_content::LArRotationalTransformationPlugin::UVtoZ ( const double  u,
const double  v 
) const
virtual

Transform from (U,V) to Z position.

Parameters
Uthe U position
Vthe V position

Implements pandora::LArTransformationPlugin.

Definition at line 78 of file LArRotationalTransformationPlugin.cc.

◆ UWtoY()

double lar_content::LArRotationalTransformationPlugin::UWtoY ( const double  u,
const double  w 
) const
virtual

Transform from (U,W) to Y position.

Parameters
Uthe U position
Wthe W position

Implements pandora::LArTransformationPlugin.

Definition at line 85 of file LArRotationalTransformationPlugin.cc.

◆ UWtoZ()

double lar_content::LArRotationalTransformationPlugin::UWtoZ ( const double  u,
const double  w 
) const
virtual

Transform from (U,W) to Z position.

Parameters
Uthe U position
Wthe W position

Implements pandora::LArTransformationPlugin.

Definition at line 92 of file LArRotationalTransformationPlugin.cc.

◆ VWtoU()

double lar_content::LArRotationalTransformationPlugin::VWtoU ( const double  v,
const double  w 
) const
virtual

Transform from (V,W) to U position.

Parameters
Vthe V position
Wthe W position

Implements pandora::LArTransformationPlugin.

Definition at line 57 of file LArRotationalTransformationPlugin.cc.

◆ VWtoY()

double lar_content::LArRotationalTransformationPlugin::VWtoY ( const double  v,
const double  w 
) const
virtual

Transform from (V,W) to Y position.

Parameters
Vthe V position
Wthe W position

Implements pandora::LArTransformationPlugin.

Definition at line 99 of file LArRotationalTransformationPlugin.cc.

◆ VWtoZ()

double lar_content::LArRotationalTransformationPlugin::VWtoZ ( const double  v,
const double  w 
) const
virtual

Transform from (V,W) to Z position.

Parameters
Vthe V position
Wthe W position

Implements pandora::LArTransformationPlugin.

Definition at line 106 of file LArRotationalTransformationPlugin.cc.

◆ WUtoV()

double lar_content::LArRotationalTransformationPlugin::WUtoV ( const double  w,
const double  u 
) const
virtual

Transform from (W,U) to V position.

Parameters
Wthe W position
Uthe U position

Implements pandora::LArTransformationPlugin.

Definition at line 64 of file LArRotationalTransformationPlugin.cc.

◆ YZtoU()

double lar_content::LArRotationalTransformationPlugin::YZtoU ( const double  y,
const double  z 
) const
virtual

Transform from (Y,Z) to U position.

Parameters
Ythe Y position
Zthe Z position

Implements pandora::LArTransformationPlugin.

Definition at line 113 of file LArRotationalTransformationPlugin.cc.

Here is the caller graph for this function:

◆ YZtoV()

double lar_content::LArRotationalTransformationPlugin::YZtoV ( const double  y,
const double  z 
) const
virtual

Transform from (Y,Z) to V position.

Parameters
Ythe Y position
Zthe Z position

Implements pandora::LArTransformationPlugin.

Definition at line 120 of file LArRotationalTransformationPlugin.cc.

Here is the caller graph for this function:

◆ YZtoW()

double lar_content::LArRotationalTransformationPlugin::YZtoW ( const double  y,
const double  z 
) const
virtual

Transform from (Y,Z) to W position.

Parameters
Ythe Y position
Zthe Z position

Implements pandora::LArTransformationPlugin.

Definition at line 127 of file LArRotationalTransformationPlugin.cc.

Here is the caller graph for this function:

Member Data Documentation

◆ m_cosU

double lar_content::LArRotationalTransformationPlugin::m_cosU
private

cos(thetaU)

Definition at line 58 of file LArRotationalTransformationPlugin.h.

◆ m_cosV

double lar_content::LArRotationalTransformationPlugin::m_cosV
private

cos(thetaV)

Definition at line 59 of file LArRotationalTransformationPlugin.h.

◆ m_cosW

double lar_content::LArRotationalTransformationPlugin::m_cosW
private

cos(thetaW)

Definition at line 60 of file LArRotationalTransformationPlugin.h.

◆ m_instanceName

std::string pandora::Process::m_instanceName
protectedinherited

The process instance name.

Definition at line 89 of file Process.h.

◆ m_maxAngularDiscrepancyU

double lar_content::LArRotationalTransformationPlugin::m_maxAngularDiscrepancyU
private

Maximum allowed difference between u wire angles between LArTPCs.

Definition at line 65 of file LArRotationalTransformationPlugin.h.

◆ m_maxAngularDiscrepancyV

double lar_content::LArRotationalTransformationPlugin::m_maxAngularDiscrepancyV
private

Maximum allowed difference between v wire angles between LArTPCs.

Definition at line 66 of file LArRotationalTransformationPlugin.h.

◆ m_maxAngularDiscrepancyW

double lar_content::LArRotationalTransformationPlugin::m_maxAngularDiscrepancyW
private

Maximum allowed difference between w wire angles between LArTPCs.

Definition at line 67 of file LArRotationalTransformationPlugin.h.

◆ m_maxSigmaDiscrepancy

double lar_content::LArRotationalTransformationPlugin::m_maxSigmaDiscrepancy
private

Maximum allowed difference between like wire sigma values between LArTPCs.

Definition at line 68 of file LArRotationalTransformationPlugin.h.

◆ m_pPandora

const Pandora* pandora::Process::m_pPandora
protectedinherited

The pandora object that will run the process.

Definition at line 87 of file Process.h.

◆ m_sinU

double lar_content::LArRotationalTransformationPlugin::m_sinU
private

sin(thetaU)

Definition at line 55 of file LArRotationalTransformationPlugin.h.

◆ m_sinUminusW

double lar_content::LArRotationalTransformationPlugin::m_sinUminusW
private

sin(thetaU - thetaW)

Definition at line 63 of file LArRotationalTransformationPlugin.h.

◆ m_sinV

double lar_content::LArRotationalTransformationPlugin::m_sinV
private

sin(thetaV)

Definition at line 56 of file LArRotationalTransformationPlugin.h.

◆ m_sinVminusU

double lar_content::LArRotationalTransformationPlugin::m_sinVminusU
private

sin(thetaV - thetaU)

Definition at line 61 of file LArRotationalTransformationPlugin.h.

◆ m_sinW

double lar_content::LArRotationalTransformationPlugin::m_sinW
private

sin(thetaW)

Definition at line 57 of file LArRotationalTransformationPlugin.h.

◆ m_sinWminusV

double lar_content::LArRotationalTransformationPlugin::m_sinWminusV
private

sin(thetaW - thetaV)

Definition at line 62 of file LArRotationalTransformationPlugin.h.

◆ m_thetaU

double lar_content::LArRotationalTransformationPlugin::m_thetaU
private

inclination of U wires (radians)

Definition at line 51 of file LArRotationalTransformationPlugin.h.

◆ m_thetaV

double lar_content::LArRotationalTransformationPlugin::m_thetaV
private

inclination of V wires (radians)

Definition at line 52 of file LArRotationalTransformationPlugin.h.

◆ m_thetaW

double lar_content::LArRotationalTransformationPlugin::m_thetaW
private

inclination of W wires (radians)

Definition at line 53 of file LArRotationalTransformationPlugin.h.

◆ m_type

std::string pandora::Process::m_type
protectedinherited

The process type.

Definition at line 88 of file Process.h.


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