1 |
mocchiut |
1.1 |
#ifndef OrientationInfo_H |
2 |
|
|
#define OrientationInfo_H |
3 |
|
|
|
4 |
|
|
#include <TObject.h> |
5 |
|
|
#include <TMatrixD.h> |
6 |
|
|
#include <TString.h> |
7 |
|
|
#include <TMath.h> |
8 |
pam-mep |
1.3 |
#include <TVector3.h> |
9 |
mocchiut |
1.1 |
|
10 |
|
|
class OrientationInfo : public TObject { |
11 |
|
|
|
12 |
|
|
private: |
13 |
|
|
|
14 |
|
|
Double_t a;// = 360/(2*TMath::Pi()); |
15 |
|
|
Double_t Re;// = 6000000.0; |
16 |
|
|
|
17 |
|
|
TMatrixD DirAxisGreenwich; |
18 |
|
|
TMatrixD DirAxisGEO; |
19 |
|
|
void SetDirAxisGreenwich(TMatrixD Aij){DirAxisGreenwich = Aij;} |
20 |
|
|
void SetDirAxisGEO(TMatrixD Aij){DirAxisGEO = Aij;} |
21 |
|
|
|
22 |
|
|
public: |
23 |
|
|
|
24 |
|
|
OrientationInfo(); |
25 |
|
|
~OrientationInfo(); |
26 |
|
|
|
27 |
|
|
Double_t PitchAngle; |
28 |
|
|
|
29 |
|
|
TMatrixD QuatoECI(Float_t q0, Float_t q1, Float_t q2, Float_t q3); |
30 |
|
|
TMatrixD ECItoGreenwich(TMatrixD Aij, UInt_t t); |
31 |
pam-mep |
1.3 |
TMatrixD ECItoGEO(TMatrixD Aij, UInt_t t, Double_t lat, Double_t lon); |
32 |
|
|
TMatrixD GEOtoECI(TMatrixD Aij, UInt_t t, Double_t lat, Double_t lon); |
33 |
mocchiut |
1.1 |
TMatrixD GreenwichtoGEO(Double_t lat, Double_t lon, TMatrixD Aij); |
34 |
pam-mep |
1.3 |
TMatrixD EulertoEci(Double_t x0, Double_t y0, Double_t z0, Double_t Vx0, Double_t Vy0, Double_t Vz0, Double_t Bank, Double_t Yaw, Double_t SPitch); |
35 |
pam-mep |
1.2 |
TMatrixD GEOtoGeomag(TMatrixD Aij, Double_t B1, Double_t B2, Double_t B3); |
36 |
mocchiut |
1.1 |
TMatrixD PamelatoGEO(TMatrixD Aij, Double_t B1, Double_t B2, Double_t B3); |
37 |
|
|
TMatrixD ColPermutation(TMatrixD Aij); |
38 |
pam-mep |
1.3 |
TVector3 GetSunPosition(UInt_t atime); |
39 |
pam-mep |
1.2 |
Float_t Larmor(Float_t Ek,Float_t Bm,Int_t iZ,Float_t xA); |
40 |
|
|
TMatrixD GetDirectiontoGirocenter(Float_t R, Float_t Px, Float_t Py); |
41 |
mocchiut |
1.1 |
Double_t GetPitchAngle(Double_t x1, Double_t y1, Double_t z1, Double_t x2, Double_t y2, Double_t z2); |
42 |
|
|
|
43 |
|
|
Double_t GetPamMainGwX(){return DirAxisGreenwich(0,1);} |
44 |
|
|
Double_t GetPamMainGwY(){return DirAxisGreenwich(1,1);} |
45 |
|
|
Double_t GetPamMainGwZ(){return DirAxisGreenwich(2,1);} |
46 |
|
|
|
47 |
|
|
Double_t GetPamMainGEOX(){return DirAxisGEO(0,1);} |
48 |
|
|
Double_t GetPamMainGEOY(){return DirAxisGEO(1,1);} |
49 |
|
|
Double_t GetPamMainGEOZ(){return DirAxisGEO(2,1);} |
50 |
|
|
|
51 |
|
|
TMatrixD GetGw(){return DirAxisGreenwich;} |
52 |
|
|
TMatrixD GetGEO(){return DirAxisGEO;} |
53 |
|
|
|
54 |
pam-mep |
1.3 |
ClassDef(OrientationInfo,2); |
55 |
mocchiut |
1.1 |
}; |
56 |
|
|
|
57 |
|
|
#endif |