FEDRA emulsion software from the OPERA Collaboration
EdbSigma Class Reference

#include <EdbSigma.h>

Inheritance diagram for EdbSigma:
Collaboration diagram for EdbSigma:

Public Member Functions

double DAL (double t, double sxy, double sz, double dz)
 
double DALbt (double t)
 
double DALmt (double t)
 
double DAT (double t, double sxy, double dz)
 
double DATbt (double t)
 
double DATmt (double t)
 
double DP (double t, double sxy, double da, double dz)
 
double DPLbt (double t)
 
double DPLmt (double t)
 
double DPTbt (double t)
 
double DPTmt (double t)
 
void Draw ()
 
 EdbSigma ()
 
double FDAL (double *x, double *par)
 
double FDALbt (double *x, double *par)
 
double FDAT (double *x, double *par)
 
double FDPLmt (double *x, double *par)
 
void Set0 ()
 
double SqSum (double a, double b)
 
virtual ~EdbSigma ()
 

Public Attributes

double eDZbase
 
double eDZcell
 
double eDZem
 
double eSaPlate
 
double eSaZone
 
double eSxy
 
double eSxyPlate
 
double eSxyZone
 
double eSz
 

Constructor & Destructor Documentation

◆ EdbSigma()

EdbSigma::EdbSigma ( )
inline
31 { Set0(); }
void Set0()

◆ ~EdbSigma()

virtual EdbSigma::~EdbSigma ( )
inlinevirtual
32 {}

Member Function Documentation

◆ DAL()

double EdbSigma::DAL ( double  t,
double  sxy,
double  sz,
double  dz 
)
36 {
37  // return the estimation of the longitudinal angular error of segment (theta error) due to points uncertanty
38  return Sqrt( sxy*Cos(t)*sxy*Cos(t) + sz*Sin(t)*sz*Sin(t)) / (dz/Cos(t));
39 }
brick dz
Definition: RecDispMC.C:107
TTree * t
Definition: check_shower.C:4

◆ DALbt()

double EdbSigma::DALbt ( double  t)
87 {
88  // return the estimation of the longitudinal angular error of basetrack (theta error)
89  return DAL(t, DPLmt(t), eSz, eDZbase);
90 }
double eSz
Definition: EdbSigma.h:13
double DPLmt(double t)
Definition: EdbSigma.cxx:71
double DAL(double t, double sxy, double sz, double dz)
Definition: EdbSigma.cxx:35
double eDZbase
Definition: EdbSigma.h:17

◆ DALmt()

double EdbSigma::DALmt ( double  t)
58 {
59  // return the estimation of the longitudinal angular error of microtrack (theta error)
60  return DAL(t,eSxy, eSz, eDZem);
61 }
double eDZem
Definition: EdbSigma.h:16
double eSxy
Definition: EdbSigma.h:12

◆ DAT()

double EdbSigma::DAT ( double  t,
double  sxy,
double  dz 
)
43 {
44  // return the estimation of the transverse angular error of segment due to points uncertanty
45  return sxy/(dz/Cos(t));
46 }

◆ DATbt()

double EdbSigma::DATbt ( double  t)
94 {
95  // return the estimation of the transverse angular error of basetrack
96  return DAT(t, DATmt(t), eDZbase);
97 }
double DATmt(double t)
Definition: EdbSigma.cxx:64
double DAT(double t, double sxy, double dz)
Definition: EdbSigma.cxx:42

◆ DATmt()

double EdbSigma::DATmt ( double  t)
65 {
66  // return the estimation of the transverse angular error of microtrack
67  return DAT(t,eSxy,eDZem);
68 }

◆ DP()

double EdbSigma::DP ( double  t,
double  sxy,
double  da,
double  dz 
)
50 {
51  // return the estimation of the position error of segment propagated to dz
52  double dpt = dz/Cos(t)*da /Cos(t);
53  return Sqrt(sxy*sxy + dpt*dpt);
54 }

◆ DPLbt()

double EdbSigma::DPLbt ( double  t)
101 {
102  // return the estimation of the longitudinal position error of basetrack
103 
104  return DPLmt(t);
105 }

◆ DPLmt()

double EdbSigma::DPLmt ( double  t)
72 {
73  // return the estimation of the longitudinal position error of microtrack
74  return DP(t, eSxy, DALmt(t), eDZem);
75 }
double DP(double t, double sxy, double da, double dz)
Definition: EdbSigma.cxx:49
double DALmt(double t)
Definition: EdbSigma.cxx:57

◆ DPTbt()

double EdbSigma::DPTbt ( double  t)
109 {
110  // return the estimation of the transverse position error of basetrack
111  return DPTmt(t);
112 }
double DPTmt(double t)
Definition: EdbSigma.cxx:78

◆ DPTmt()

double EdbSigma::DPTmt ( double  t)
79 {
80  // return the estimation of the transverse position error of microtrack
81  return DP(t, eSxy, DATmt(t), eDZem);
82 }

◆ Draw()

void EdbSigma::Draw ( )
116 {
117  double fmin=0, fmax=1.;
118  TCanvas *cmt = new TCanvas("mt","Intrinsic emulsion resolutions",800,600);
119  cmt->Divide(2,2);
120 
121  EdbSigma *pts = new EdbSigma();
122 
123  cmt->cd(1);
124  TF1 *dal = new TF1("dal",pts,&EdbSigma::FDAL,fmin,fmax,3,"EdbSigma","FDAL");
125  dal->SetParameter(0, eSxy);
126  dal->SetParameter(1, eSz);
127  dal->SetParameter(2, eDZem);
128  dal->SetTitle("angle longitudinal microtrack resolution");
129  dal->Draw();
130 
131  cmt->cd(2);
132  TF1 *dat = new TF1("dat",pts,&EdbSigma::FDAT,fmin,fmax,2,"EdbSigma","FDAT");
133  dat->SetParameter(0, eSxy);
134  dat->SetParameter(1, eDZem);
135  dat->SetTitle("angle transverse microtrack resolution");
136  dat->Draw();
137 
138  cmt->cd(4);
139  TF1 *dplmt = new TF1("dplmt",pts,&EdbSigma::FDPLmt,fmin,fmax,0,"EdbSigma","FDPLmt");
140  dplmt->SetTitle("position longitudinal microtrack resolution");
141  dplmt->Draw();
142 
143 
144  cmt->cd(3);
145  TF1 *dalbt = new TF1("dalbt",pts,&EdbSigma::FDALbt,fmin,fmax,0,"EdbSigma","FDALbt");
146  dalbt->SetTitle("angle longitudinal basetrack resolution");
147  dalbt->Draw();
148 
149 }
Definition: EdbSigma.h:8
EdbSigma()
Definition: EdbSigma.h:31
double FDALbt(double *x, double *par)
Definition: EdbSigma.h:55
double FDPLmt(double *x, double *par)
Definition: EdbSigma.h:54
double FDAL(double *x, double *par)
Definition: EdbSigma.h:52
double FDAT(double *x, double *par)
Definition: EdbSigma.h:53
new TCanvas()

◆ FDAL()

double EdbSigma::FDAL ( double *  x,
double *  par 
)
inline
52 { return DAL(*x, par[0], par[1], par[2]);}

◆ FDALbt()

double EdbSigma::FDALbt ( double *  x,
double *  par 
)
inline
55 {return DALbt(*x);}
double DALbt(double t)
Definition: EdbSigma.cxx:86

◆ FDAT()

double EdbSigma::FDAT ( double *  x,
double *  par 
)
inline
53 { return DAT(*x, par[0], par[1]);}

◆ FDPLmt()

double EdbSigma::FDPLmt ( double *  x,
double *  par 
)
inline
54 {return DPLmt(*x);}

◆ Set0()

void EdbSigma::Set0 ( )

◆ SqSum()

double EdbSigma::SqSum ( double  a,
double  b 
)
inline
36 {return Sqrt(a*a + b*b);}
void a()
Definition: check_aligned.C:59

Member Data Documentation

◆ eDZbase

double EdbSigma::eDZbase

◆ eDZcell

double EdbSigma::eDZcell

◆ eDZem

double EdbSigma::eDZem

◆ eSaPlate

double EdbSigma::eSaPlate

◆ eSaZone

double EdbSigma::eSaZone

◆ eSxy

double EdbSigma::eSxy

◆ eSxyPlate

double EdbSigma::eSxyPlate

◆ eSxyZone

double EdbSigma::eSxyZone

◆ eSz

double EdbSigma::eSz

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