24 |
#include <iostream> |
#include <iostream> |
25 |
#include <TArrayC.h> |
#include <TArrayC.h> |
26 |
#include <TROOT.h> |
#include <TROOT.h> |
27 |
|
#include <TMath.h> |
28 |
|
#include <TMatrixD.h> |
29 |
|
|
30 |
class InclinationInfoI : public TObject { |
class InclinationInfoI : public TObject { |
31 |
public: |
public: |
43 |
double quat[6][4]; |
double quat[6][4]; |
44 |
|
|
45 |
InclinationInfoI(){}; |
InclinationInfoI(){}; |
46 |
// ~InclinationInfoI() {}; |
~InclinationInfoI() {}; |
47 |
|
|
48 |
void fill(TArrayC* data); |
void fill(TArrayC* data); |
49 |
|
void clear(); |
50 |
// const char* toXML(char*); |
// const char* toXML(char*); |
51 |
ClassDef(InclinationInfoI,1) |
ClassDef(InclinationInfoI,1) |
52 |
}; |
}; |
60 |
Quaternions(); |
Quaternions(); |
61 |
~Quaternions(); |
~Quaternions(); |
62 |
|
|
63 |
//Int_t CodeErrQua; |
//Int_t CodeErrQua; |
64 |
|
|
65 |
ClassDef(Quaternions,1) |
ClassDef(Quaternions,1) |
66 |
}; |
}; |
67 |
|
|
68 |
class InclinationInfo: public TObject { |
class InclinationInfo: public TObject { |
|
//private: |
|
|
//Double_t k1; |
|
|
//Double_t k2; |
|
|
//void coefplane(Double_t x1, Double_t y1, Double_t z1, Double_t x2, Double_t y2, Double_t z2); |
|
|
//Double_t AngBetAxes(Double_t x1, Double_t y1, Double_t z1, Double_t x2, Double_t y2, Double_t z2); |
|
|
//Double_t ValueT(Double_t x1,Double_t y1, Double_t z1, Double_t n1, Double_t n2); |
|
|
//Double_t AngBetPlan(Double_t x1,Double_t y1, Double_t z1, Double_t n1, Double_t n2); |
|
|
|
|
69 |
public: |
public: |
70 |
|
|
71 |
InclinationInfo(); |
InclinationInfo(); |
72 |
~InclinationInfo(); |
~InclinationInfo(); |
73 |
|
|
|
// Nico's variables // |
|
|
//Int_t nicos1; |
|
|
//Int_t nicos2; |
|
|
//Int_t nicos3; |
|
|
//Int_t nicos4; |
|
|
// End nico's // |
|
|
|
|
|
// Our variables // |
|
|
Float_t A11; |
|
|
Float_t A12; |
|
|
Float_t A13; |
|
|
// float_t A21; |
|
|
// float_t A22; |
|
|
// float_t A23; |
|
|
// Angles RCS of OCS |
|
|
// float_t AXrXo; |
|
|
// float_t AXrYo; |
|
|
// float_t AXrZo; |
|
|
// float_t AYrXo; |
|
|
// float_t AYrYo; |
|
|
// float_t AYrZo; |
|
|
// float_t AZrXo; |
|
|
// float_t AZrYo; |
|
|
// float_t AZrZo; |
|
|
|
|
|
// float_t AXrZXo; |
|
|
// float_t AXrXYo; |
|
|
// float_t AXrYZo; |
|
|
// float_t AYrZXo; |
|
|
// float_t AYrXYo; |
|
|
// float_t AYrYZo; |
|
|
// float_t AZrZXo; |
|
|
// float_t AZrXYo; |
|
|
// float_t AZrYZo; |
|
|
|
|
|
// float_t ApXrZXoZ; |
|
|
// float_t ApXrXYoZ; |
|
|
// float_t ApXrYZoZ; |
|
|
// float_t ApYrZXoZ; |
|
|
// float_t ApYrXYoZ; |
|
|
// float_t ApYrYZoZ; |
|
|
// float_t ApZrZXoZ; |
|
|
// float_t ApZrXYoZ; |
|
|
// float_t ApZrYZoZ; |
|
|
|
|
|
// float_t AXrZXo_2m; |
|
|
// float_t AXrXYo_2m; |
|
|
// float_t AXrYZo_2m; |
|
|
// float_t AYrZXo_2m; |
|
|
// float_t AYrXYo_2m; |
|
|
// float_t AYrYZo_2m; |
|
|
// float_t AZrZXo_2m; |
|
|
// float_t AZrXYo_2m; |
|
|
// float_t AZrYZo_2m; |
|
|
|
|
|
// float_t ApXrZXoZ_2m; |
|
|
// float_t ApXrXYoZ_2m; |
|
|
// float_t ApXrYZoZ_2m; |
|
|
// float_t ApYrZXoZ_2m; |
|
|
// float_t ApYrXYoZ_2m; |
|
|
// float_t ApYrYZoZ_2m; |
|
|
// float_t ApZrZXoZ_2m; |
|
|
// float_t ApZrXYoZ_2m; |
|
|
// float_t ApZrYZoZ_2m; |
|
|
|
|
|
Double_t XXRCS; |
|
|
Double_t YXRCS; |
|
|
Double_t ZXRCS; |
|
|
Double_t XYRCS; |
|
|
Double_t YYRCS; |
|
|
Double_t ZYRCS; |
|
|
Double_t XZRCS; |
|
|
Double_t YZRCS; |
|
|
Double_t ZZRCS; |
|
|
|
|
74 |
Double_t Tangazh; |
Double_t Tangazh; |
75 |
Double_t Ryskanie; |
Double_t Ryskanie; |
76 |
Double_t Kren; |
Double_t Kren; |
77 |
|
|
78 |
bool mode; |
bool mode; |
79 |
Float_t dircutoff; |
// Float_t dircutoff; |
80 |
|
|
81 |
short int Sign_1(Double_t a, short int b){ |
void TransAngle(Double_t x,Double_t y,Double_t z,Double_t Vx0,Double_t Vy0, Double_t Vz0, Double_t q0, Double_t q1, Double_t q2, Double_t q3); |
|
if (a>0){b=1;}; |
|
|
if (a<0){b=-1;} |
|
|
else {b=0;}; |
|
|
return b;}; |
|
|
void QuaternionstoAngle(Quaternions); |
|
|
void TransAngle(Double_t x,Double_t y,Double_t z,Double_t Vx0,Double_t Vy0, Double_t Vz0, Double_t gamar, Double_t ksir, Double_t tetar, Double_t q0, Double_t q1, Double_t q2, Double_t q3); |
|
82 |
|
|
83 |
// float_t procRegidity(double_t L, double_t B, double_t R); |
// float_t procRegidity(double_t L, double_t B, double_t R); |
84 |
|
|
85 |
// UInt_t absTime; |
void Clear(Option_t *t=""); |
|
// UInt_t OBT; |
|
|
// UInt_t pkt_num; |
|
|
|
|
|
void Clear(); |
|
86 |
ClassDef(InclinationInfo,1) |
ClassDef(InclinationInfo,1) |
87 |
}; |
}; |
88 |
|
|
89 |
|
/*class Sine: public TObject{ |
90 |
|
public: |
91 |
|
Sine(); |
92 |
|
~Sine(); |
93 |
|
|
94 |
|
Float_t A; |
95 |
|
Float_t b; |
96 |
|
Double_t c; |
97 |
|
Double_t startPoint; |
98 |
|
Double_t finishPoint; |
99 |
|
Bool_t NeedFit; |
100 |
|
|
101 |
|
ClassDef(Sine,8) |
102 |
|
};*/ |
103 |
|
|
104 |
#endif |
#endif |