CMS 3D CMS Logo

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
List of all members | Public Types | Public Member Functions | Static Public Member Functions | Private Attributes
CartesianStateAdaptor Class Reference

#include <CartesianStateAdaptor.h>

Public Types

typedef float Scalar
 
typedef Basic3DVector< ScalarVector3D
 

Public Member Functions

 CartesianStateAdaptor (const RKSmallVector< double, 6 > &rk)
 
const Vector3Dmomentum () const
 
const Vector3Dposition () const
 

Static Public Member Functions

static Vector3D momentum (const RKSmallVector< double, 6 > &rk)
 
static Vector3D position (const RKSmallVector< double, 6 > &rk)
 
static RKSmallVector< double, 6 > rkstate (const Vector3D &pos, const Vector3D &mom)
 

Private Attributes

Vector3D mom_
 
Vector3D pos_
 

Detailed Description

Definition at line 8 of file CartesianStateAdaptor.h.

Member Typedef Documentation

◆ Scalar

Definition at line 10 of file CartesianStateAdaptor.h.

◆ Vector3D

Definition at line 11 of file CartesianStateAdaptor.h.

Constructor & Destructor Documentation

◆ CartesianStateAdaptor()

CartesianStateAdaptor::CartesianStateAdaptor ( const RKSmallVector< double, 6 > &  rk)
inline

Definition at line 13 of file CartesianStateAdaptor.h.

13 : pos_(rk[0], rk[1], rk[2]), mom_(rk[3], rk[4], rk[5]) {}

Member Function Documentation

◆ momentum() [1/2]

const Vector3D& CartesianStateAdaptor::momentum ( ) const
inline

◆ momentum() [2/2]

static Vector3D CartesianStateAdaptor::momentum ( const RKSmallVector< double, 6 > &  rk)
inlinestatic

Definition at line 20 of file CartesianStateAdaptor.h.

20 { return Vector3D(rk[3], rk[4], rk[5]); }
Basic3DVector< Scalar > Vector3D

◆ position() [1/2]

const Vector3D& CartesianStateAdaptor::position ( ) const
inline

◆ position() [2/2]

static Vector3D CartesianStateAdaptor::position ( const RKSmallVector< double, 6 > &  rk)
inlinestatic

Definition at line 18 of file CartesianStateAdaptor.h.

18 { return Vector3D(rk[0], rk[1], rk[2]); }
Basic3DVector< Scalar > Vector3D

◆ rkstate()

static RKSmallVector<double, 6> CartesianStateAdaptor::rkstate ( const Vector3D pos,
const Vector3D mom 
)
inlinestatic

Definition at line 22 of file CartesianStateAdaptor.h.

References Basic3DVector< T >::x(), Basic3DVector< T >::y(), and Basic3DVector< T >::z().

Referenced by CartesianLorentzForce::operator()(), RKPropagatorInS::propagateParametersOnCylinder(), and RKPropagatorInS::propagateParametersOnPlane().

22  {
24  res[0] = pos.x();
25  res[1] = pos.y();
26  res[2] = pos.z();
27  res[3] = mom.x();
28  res[4] = mom.y();
29  res[5] = mom.z();
30  return res;
31  }
ROOT::Math::SVector< T, N > RKSmallVector
Definition: RKSmallVector.h:13
Definition: Electron.h:6

Member Data Documentation

◆ mom_

Vector3D CartesianStateAdaptor::mom_
private

Definition at line 35 of file CartesianStateAdaptor.h.

◆ pos_

Vector3D CartesianStateAdaptor::pos_
private

Definition at line 34 of file CartesianStateAdaptor.h.