ATLAS Offline Software
Loading...
Searching...
No Matches
InDet::SiNoise_bt Class Reference

#include <SiNoise_bt.h>

Collaboration diagram for InDet::SiNoise_bt:

Public Member Functions

const int & model () const
const double & covarianceAzim () const
const double & covariancePola () const
const double & covarianceIMom () const
const double & correctionIMom () const
void reset ()
void production (int direction, int model, const Trk::TrackParameters &tp)

Private Attributes

int m_model {}
double m_covarianceAzim {}
double m_covariancePola {}
double m_covarianceIMom {}
double m_correctionIMom {1.0}

Detailed Description

Definition at line 23 of file SiNoise_bt.h.

Member Function Documentation

◆ correctionIMom()

const double & InDet::SiNoise_bt::correctionIMom ( ) const
inline

Definition at line 30 of file SiNoise_bt.h.

30{return m_correctionIMom;}
double m_correctionIMom
Definition SiNoise_bt.h:39

◆ covarianceAzim()

const double & InDet::SiNoise_bt::covarianceAzim ( ) const
inline

Definition at line 27 of file SiNoise_bt.h.

27{return m_covarianceAzim;}
double m_covarianceAzim
Definition SiNoise_bt.h:36

◆ covarianceIMom()

const double & InDet::SiNoise_bt::covarianceIMom ( ) const
inline

Definition at line 29 of file SiNoise_bt.h.

29{return m_covarianceIMom;}
double m_covarianceIMom
Definition SiNoise_bt.h:38

◆ covariancePola()

const double & InDet::SiNoise_bt::covariancePola ( ) const
inline

Definition at line 28 of file SiNoise_bt.h.

28{return m_covariancePola;}
double m_covariancePola
Definition SiNoise_bt.h:37

◆ model()

const int & InDet::SiNoise_bt::model ( ) const
inline

Definition at line 26 of file SiNoise_bt.h.

26{return m_model ;}

◆ production()

void InDet::SiNoise_bt::production ( int direction,
int model,
const Trk::TrackParameters & tp )

Definition at line 24 of file SiNoise_bt.cxx.

26{
27 reset();
28 if(Model < 1 || Model > 2) return;
29 m_model = Model;
30 double radlength = 0.03;
31 double energylose = 0.4;
32
33 const Amg::Transform3D& T = Tp.associatedSurface().transform();
34 const AmgVector(5)& Vp = Tp.parameters();
35
36 double q = std::abs(Vp[4]);
37 double cosp = std::cos(Vp[3]) ;
38 double sinp2 = (1.-cosp)*(1.+cosp) ;
39 if(sinp2==0) sinp2 = 0.000001;
40 double s =
41 std::abs(std::sqrt(sinp2)*(std::cos(Vp[2])*T(0,2)+std::sin(Vp[2]*T(1,2)))+cosp*T(2,2));
42 s < .05 ? s = 20. : s = 1./s;
43
44 m_covariancePola = 134.*s*radlength*q*q;
46
47 if(m_model==1) {
48 double dp = energylose*q*s;
51 }
52 else {
55 }
57}
#define AmgVector(rows)
static Double_t Tp(Double_t *t, Double_t *par)
Eigen::Affine3d Transform3D
unsigned long long T

◆ reset()

void InDet::SiNoise_bt::reset ( )

Definition at line 15 of file SiNoise_bt.cxx.

15 {
16 m_model = 0 ;
21 }

Member Data Documentation

◆ m_correctionIMom

double InDet::SiNoise_bt::m_correctionIMom {1.0}
private

Definition at line 39 of file SiNoise_bt.h.

39{1.0};

◆ m_covarianceAzim

double InDet::SiNoise_bt::m_covarianceAzim {}
private

Definition at line 36 of file SiNoise_bt.h.

36{};

◆ m_covarianceIMom

double InDet::SiNoise_bt::m_covarianceIMom {}
private

Definition at line 38 of file SiNoise_bt.h.

38{};

◆ m_covariancePola

double InDet::SiNoise_bt::m_covariancePola {}
private

Definition at line 37 of file SiNoise_bt.h.

37{};

◆ m_model

int InDet::SiNoise_bt::m_model {}
private

Definition at line 35 of file SiNoise_bt.h.

35{} ;

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