/[PAMELA software]/DarthVader/OrbitalInfo/inc/OrbitalInfo.h
ViewVC logotype

Annotation of /DarthVader/OrbitalInfo/inc/OrbitalInfo.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.10 - (hide annotations) (download)
Thu Mar 15 12:19:15 2007 UTC (17 years, 8 months ago) by pamelaprod
Branch: MAIN
Changes since 1.9: +9 -3 lines
File MIME type: text/plain
Added inclination classes

1 mocchiut 1.1 #ifndef OrbitalInfo_h
2 mocchiut 1.2 #define OrbitalInfo_h
3 mocchiut 1.1
4     #include <TObject.h>
5 pam-fi 1.5 #include <OrbitalInfoStruct.h>
6 mocchiut 1.1
7 pam-rm2 1.9 /**
8     * Class that stores position, time, inclination, magnetic field and
9     * cutoff informations.
10     */
11 mocchiut 1.1 class OrbitalInfo : public TObject {
12     public:
13     OrbitalInfo();
14 mocchiut 1.3 OrbitalInfo* GetOrbitalInfo(){return this;}; // Elena
15 mocchiut 1.1
16 pam-rm2 1.9 UInt_t absTime; //!< Absolute Time (seconds)
17     UInt_t OBT; //!< On Board Time (ms)
18     UInt_t pkt_num; //!< CPU packet number
19    
20     Float_t lon; //!< degrees from -180 to 180
21     Float_t lat; //!< degrees from -90 to 90
22     Float_t alt; //!< meters asl
23    
24     // B components.
25     Float_t Bnorth; //!< gauss
26     Float_t Beast; //!< gauss
27     Float_t Bdown; //!< gauss
28    
29     Float_t Babs; //!< abs value (guass)
30    
31     Float_t BB0; //!< B abs over the B minimum on this field line
32    
33     Float_t L; //!< McIlwain's L shell (in earth radii)
34    
35     //! Dipolar magnetic coordinates (not used).
36     Float_t londip; //!< degrees from -180 to 180
37     Float_t latdip; //!< degrees from -90 to 90
38     Float_t altdip; //!< meters
39    
40     //! Corrected magnetic coordinates (not used).
41     Float_t loncgm; //!< degrees from -180 to 180
42     Float_t latcgm; //!< degrees from -90 to 90
43     Float_t altcgm; //!< meters
44    
45     //! Corrected B min magnetic coordinates (not used).
46     Float_t loncbm; //!< degrees from -180 to 180
47     Float_t latcbm; //!< degrees from -90 to 90
48     Float_t altcbm; //!< meters
49 pam-rm2 1.7
50     Float_t cutoff[20];
51    
52 pamelaprod 1.10 //! Quaternions
53 pam-rm2 1.7 Float_t q0, q1, q2, q3;
54    
55 pam-rm2 1.9 //! Euler angles (nadir reference frame) (not used)
56 pamelaprod 1.10 // Float_t theta, phi, etha;
57 pam-rm2 1.7
58 pam-rm2 1.9 //! Euler angles (local field reference frame) (not used)
59 pamelaprod 1.10 // Float_t thetamag, phimag, ethamag;
60    
61     Float_t roll;
62     Float_t pitch;
63     Float_t yaw;
64    
65     Int_t mode;
66 pam-rm2 1.7
67     // Useful?
68     Int_t goodAttitude[5];
69    
70 pam-rm2 1.9 /**
71     \return Returns the B minimum along the field line.
72     */
73 mocchiut 1.8 Float_t GetB0() { return Babs/BB0; };
74    
75 pam-rm2 1.9 /**
76     \return Returns the Stormer vertical cutoff using L shell:
77     14.9/L^2 (GV/c).
78     */
79 mocchiut 1.8 Float_t GetCutoffSVL() { return cutoff[0]; };
80 pam-rm2 1.7
81 pam-fi 1.5 void SetFromLevel2Struct(cOrbitalInfo *l2);
82     void GetLevel2Struct(cOrbitalInfo *l2) const;
83    
84 mocchiut 1.4 void Clear(); // emiliano
85     //
86 mocchiut 1.8 ClassDef(OrbitalInfo, 2)
87 mocchiut 1.1 };
88     #endif

  ViewVC Help
Powered by ViewVC 1.1.23