ATLAS Offline Software
Public Member Functions | Protected Attributes | List of all members
Trk::LocalDirection Class Reference

represents the three-dimensional global direction with respect to a planar surface frame. More...

#include <LocalDirection.h>

Collaboration diagram for Trk::LocalDirection:

Public Member Functions

 LocalDirection ()=default
 
 LocalDirection (double axz, double ayz)
 
double angleXZ () const
 access method for angle of local XZ projection More...
 
double angleYZ () const
 access method for angle of local YZ projection More...
 

Protected Attributes

double m_angleXZ = 0.
 
double m_angleYZ = 0.
 

Detailed Description

represents the three-dimensional global direction with respect to a planar surface frame.

LocalDirection Class
Class to represent the three-dimensional global direction with respect to a planar surface frame.

The two angles \( \alpha_{xz} \) and \( \alpha_{yz} \) describe the angles of the momentum within the two projections onto the xz plane respectively the yz plane of the surface-intrinsic (x,y,z) cartesian frame.

The transformation between local and global direction coordinates is done as follows: May \( T \) denote the transformation of the local frame to the global frame, such that a point \( \lambda \) expressed in the local frame coordinates transforms to a global point \( \gamma \) by the use of \( T \) like:

\( \gamma = T(\lambda) \) and similarily \( \lambda = T^{-1} (\gamma) \).

1) Local direction to global direction: Given \( \alpha_{xz} \) and \( \alpha_{yz} \) in the local frame, the 3-dim direciton in the local frame can be expressed as:

\( \vec d = (d_{z}/tan(\alpha_{xz}), d_{z}/tan(\alpha_{yz}), d_{z}) \)

using the constraint that the direciton is normalized:

\( d^{2} = 1 = \frac{d_{z}^{2}}{tan^{2}(\alpha_{xz}} + \frac{d_{z}^{2}}{tan^{2}(\alpha_{yz}} + d_{z}^{2} \), \( d_{z} \) can be evaluated as:

\( d_{z} = \frac{tan(\alpha_{xz})tan(\alpha_{yz})}{\sqrt{tan^{2}(\alpha_{xz})+ tan^{2}(\alpha_{yz})+ tan^{2}(\alpha_{xz})tan^{2}(\alpha_{yz})}} \)

The global direcion \( D \) is then, using \( T \): \( D = T(d) \)

2) Global direction to local direcion: Constructing the global direction from the local one is straight forwardly done, such that \( D \) is transformed into the local frame by using \( T^{-1} \):

\( d = T^{-1}(D) \)

and \( \alpha_{xz} \) respectively \( \alpha_{yz} \) are then determined as:

\( \alpha_{xz} = atan(d_{z}, d_{x}) \), respectively \( \alpha_{xz} = atan(d_{z}, d_{y}) \).

Todo:
add image of Jean-Francois
Author
Andre.nosp@m.as.S.nosp@m.alzbu.nosp@m.rger.nosp@m.@cern.nosp@m..ch

Definition at line 80 of file LocalDirection.h.

Constructor & Destructor Documentation

◆ LocalDirection() [1/2]

Trk::LocalDirection::LocalDirection ( )
default

◆ LocalDirection() [2/2]

Trk::LocalDirection::LocalDirection ( double  axz,
double  ayz 
)
inline

Definition at line 85 of file LocalDirection.h.

86  : m_angleXZ(axz)
87  , m_angleYZ(ayz)
88  {}

Member Function Documentation

◆ angleXZ()

double Trk::LocalDirection::angleXZ ( ) const
inline

access method for angle of local XZ projection

inline access method

Definition at line 103 of file LocalDirection.h.

103 { return m_angleXZ; }

◆ angleYZ()

double Trk::LocalDirection::angleYZ ( ) const
inline

access method for angle of local YZ projection

inline access method

Definition at line 106 of file LocalDirection.h.

106 { return m_angleYZ; }

Member Data Documentation

◆ m_angleXZ

double Trk::LocalDirection::m_angleXZ = 0.
protected

Definition at line 97 of file LocalDirection.h.

◆ m_angleYZ

double Trk::LocalDirection::m_angleYZ = 0.
protected

Definition at line 98 of file LocalDirection.h.


The documentation for this class was generated from the following file:
Trk::LocalDirection::m_angleXZ
double m_angleXZ
Definition: LocalDirection.h:97
Trk::LocalDirection::m_angleYZ
double m_angleYZ
Definition: LocalDirection.h:98