Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members

HyperionOrbit Class Reference

Inheritance diagram for HyperionOrbit:

Inheritance graph
Collaboration diagram for HyperionOrbit:

Collaboration graph
List of all members.

Private Member Functions

Point3d computePosition (double jd) const
double getBoundingRadius () const
double getPeriod () const

Member Function Documentation

Point3d HyperionOrbit::computePosition double  jd  )  const [inline, private, virtual]
 

Implements CachingOrbit.

Definition at line 2250 of file customorbit.cpp.

References ComputeSaturnianElements(), cosD(), OuterSaturnMoonParams(), SaturnMoonPosition(), and sinD().

02251     {
02252         // Computation will yield latitude(L), longitude(B) and distance(R)
02253         // relative to Saturn.
02254         double t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11;
02255         double W0, W1, W2, W3, W4, W5, W6, W7, W8;
02256 
02257         ComputeSaturnianElements(jd,
02258                                  t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11,
02259                                  W0, W1, W2, W3, W4, W5, W6, W7, W8);
02260         double eta = 92.39 + 0.5621071 * t6;
02261         double zeta = 148.19 - 19.18 * t8;
02262         double theta = 184.8 - 35.41 * t9;
02263         double theta_ = theta - 7.5;
02264         double as = 176 + 12.22 * t8;
02265         double bs = 8 + 24.44 * t8;
02266         double cs = bs + 5;
02267         double om = 68.898 - 18.67088 * t8;
02268         double phi = 2 * (om - W5);
02269         double chi = 94.9 - 2.292 * t8;
02270         double a = 24.50601 -
02271             0.08686 * cosD(eta) -
02272             0.00166 * cosD(zeta + eta) +
02273             0.00175 * cosD(zeta - eta);
02274         double e = 0.103458 -
02275             0.004099 * cosD(eta) -
02276             0.000167 * cosD(zeta + eta) +
02277             0.000235 * cosD(zeta - eta) +
02278             0.02303 * cosD(zeta) -
02279             0.00212 * cosD(2 * zeta) +
02280             0.000151 * cosD(3 * zeta) +
02281             0.00013 * sinD(phi);
02282         double p = om +
02283             0.15648 * sinD(chi) -
02284             0.4457 * sinD(eta) -
02285             0.2657 * sinD(zeta + eta) -
02286             0.3573 * sinD(zeta - eta) -
02287             12.872 * sinD(zeta) +
02288             1.668 * sinD(2 * zeta) -
02289             0.2419 * sinD(3 * zeta) - 
02290             0.07 * sinD(phi);
02291         double lam_ = 177.047 +
02292             16.91993829 * t6 +
02293             0.15648 * sinD(chi) +
02294             9.142 * sinD(eta) +
02295             0.007 * sinD(2 * eta) -
02296             0.014 * sinD(3 * eta) +
02297             0.2275 * sinD(zeta + eta) +
02298             0.2112 * sinD(zeta - eta) -
02299             0.26 * sinD(zeta) -
02300             0.0098 * sinD(2 * zeta) -
02301             0.013 * sinD(as) +
02302             0.017 * sinD(bs) -
02303             0.0303 * sinD(phi);
02304         double i = 27.3347 + 0.643486 * cosD(chi) + 0.315 * cosD(W3) +
02305             0.018 * cosD(theta) - 0.018 * cosD(cs);
02306         double Om = 168.6812 + 1.40136 * cosD(chi) + 0.68599 * sinD(W3) -
02307             0.0392 * sinD(cs) + 0.0366 * sinD(theta_);
02308 
02309         double lam, gam, r, w;
02310         OuterSaturnMoonParams(a, e, i, Om, lam_ - p, lam_,
02311                               lam, gam, r, w);
02312 
02313         return SaturnMoonPosition(lam, gam, w, r);
02314     };

double HyperionOrbit::getBoundingRadius  )  const [inline, private, virtual]
 

Implements CachingOrbit.

Definition at line 2321 of file customorbit.cpp.

References BoundingRadiusSlack.

02322     {
02323         return 1640000 * BoundingRadiusSlack;
02324     };

double HyperionOrbit::getPeriod  )  const [inline, private, virtual]
 

Implements CachingOrbit.

Definition at line 2316 of file customorbit.cpp.

02317     {
02318         return 21.276609;
02319     };


The documentation for this class was generated from the following file:
Generated on Sat Jan 14 22:33:22 2006 for Celestia by  doxygen 1.4.1