-
Notifications
You must be signed in to change notification settings - Fork 4
Expand file tree
/
Copy pathTrackModelPhysical.h
More file actions
61 lines (43 loc) · 1.57 KB
/
Copy pathTrackModelPhysical.h
File metadata and controls
61 lines (43 loc) · 1.57 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
#ifndef TRACKMODELPHYSICAL_H
#define TRACKMODELPHYSICAL_H
#include "Geo.h"
struct HitMC;
class TrackModelPhysical
{
public:
double x0; // position of the parameterization point
double y0;
double z0;
double ex; // directions of u axis
double ey;
double pu; // momentum
double pv;
double pz;
double q;
double pt;
double ptInv;
//
int createXY(double xf, double yf, double zf,
double xm, double ym, double zm,
double xl, double yl, double zl, double Bz );
int createXYFirst(double xf, double yf, double zf,
double xm, double ym, double zm,
double xl, double yl, double zl, double Bz );
int createXYMiddle(double xf, double yf, double zf,
double xm, double ym, double zm,
double xl, double yl, double zl, double Bz );
int createXYLast(double xf, double yf, double zf,
double xm, double ym, double zm,
double xl, double yl, double zl, double Bz );
int createZ( double xf, double yf, double zf,
double xm, double ym, double zm,
double xl, double yl, double zl, double Bz );
int getDistanceAtXY( double x, double y, double z, double &duz, double &dv, double Bz ) const;
int getDistanceAtZ( double x, double y, double z, double &duz, double &dv, double Bz) const;
double getPtkG() const { return pt;}//*Geo::OriginBzkG; }
int getPhiZatR( double r, double &phi, double &z, double Bz ) const;
int getPhiRatZ( double z, double &phi, double &r, double Bz ) const;
void Print() const;
static int estmateBzkG( const HitMC &mc, double x, double y, double &BzkG );
};
#endif