|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectjat.spacetime.EarthRef
public class EarthRef
The EarthRef Class provides methods of converting between various types of Earth reference systems. Reference: Satellite Orbits by Montenbruck and Gill. This is basically their C++ code converted to Java. The interface to this class is an input Terrestrial time in MJD format, which is available from either the CalDate or GPSTimeFormat classes.
| Field Summary | |
|---|---|
static double |
f_Earth
Flattening factor of earth from WGS-84 |
static double |
GM_Earth
Earth gravity constant in m^3/s^2 from JGM3 |
static double |
omega_e
Earth's rotation rate in rad/s. |
static double |
R_Earth
Equatorial radius of earth in m from WGS-84 |
boolean |
use_moon
|
boolean |
use_sun
|
| Constructor Summary | |
|---|---|
EarthRef(double MJD_UT1,
double MJD_TT)
Construct an EarthRef object using UTC Time in Modified Julian Date format. |
|
EarthRef(double MJD_UT1,
double MJD_TT,
boolean use_moon,
boolean use_sun)
Construct an EarthRef object using UTC Time in Modified Julian Date format. |
|
EarthRef(Time t0)
Construct an EarthRef object using UTC Time in Modified Julian Date format. |
|
| Method Summary | |
|---|---|
Matrix |
body_to_inertial(Time t)
Returns the (precalculated) eci2ecef transformation. |
Matrix |
ECI2ECEF()
Returns the (precalculated) ECI to ECEF (ICRF to ITRF) Transformation Matrix. |
Matrix |
eci2ecef(double MJD_UT1,
double MJD_TT)
ECI to ECEF Transformation |
Matrix |
eci2ecef(Time t)
ECI to ECEF Transformation |
RotationMatrix |
EclMatrix(double MJD_TT)
Transformation of equatorial to ecliptical coordinates. |
double |
EqnEquinox(double MJD_TT)
Computation of the equation of the equinoxes. |
double |
GAST(double MJD_UT1,
double MJD_TT)
Greenwich Apparent Sidereal Time. |
double |
get_grav_const()
Returns the Earth's gravitational constant. |
VectorN |
get_JPL_Moon_Vector()
Return the (precalculated) JPL Moon Vector |
VectorN |
get_JPL_Sun_Vector()
Return the (precalculated) JPL Sun Vector |
double |
get_mean_radius()
Returns the mean Earth Radius. |
double |
get_omega_e(double mjd_ut1)
Return the dynamic rotation rate of the Earth at the given time. |
double |
get_omega_e(Time t)
Return the dynamic rotation rate of the Earth at the given Time. |
double |
get_spin_rate(Time t)
Returnts the dynamic Earth rotation rate. |
RotationMatrix |
GHAMatrix(double MJD_UT1,
double MJD_TT)
Transformation from true equator and equinox to Earth equator and Greenwich meridian system. |
double |
GMST(double MJD_UT1)
Greenwich Mean Sidereal Time. |
Matrix |
inertial_to_body(Time t)
Returns the transformation between inertial and body coordinates. |
void |
initializeMoonEphem(double MJD_TT)
Initialize the JPL DE405 ephemerides and initialize the Moon vector. |
void |
initializeSunEphem(double MJD_TT)
Initialize the JPL DE405 ephemerides and initialize the Sun vector. |
static void |
main(java.lang.String[] args)
Test method. |
double |
MeanObliquity(double MJD_TT)
Computes the mean obliquity of the ecliptic. |
VectorN |
moonVector(double MJD_TT)
Computes the Moon's geocentric position using a low precision analytical series. |
void |
NutAngles(double MJD_TT)
Computes Nutation in longitude and obliquity using the IAU 1980 nutation theory. |
Matrix |
NutMatrix(double MJD_TT)
Transformation from mean to true equator and equinox. |
Matrix |
NutMatrixSimple(double MJD_TT)
Transformation from mean to true equator and equinox (low precision). |
Matrix |
PoleMatrix()
Transformation from pseudo Earth-fixed to Earth-fixed coordinates for a given date. |
Matrix |
PrecMatrix(double MJD_TT)
Precession transformation of equatorial coordinates. |
void |
set_use_moon(boolean b)
Set the flag whether to calculate the Moon's position. |
void |
set_use_sun(boolean b)
Set the flag whether to calculate the Sun's position. |
void |
setIERS(double x,
double y)
Set the IERS (Earth Rotation) Data |
VectorN |
sunVector(double MJD_TT)
Computes the Sun's geocentric position using a low precision analytical series. |
Matrix |
TOD()
Returns the (precalculated) J2000 to True of Date (ICRF to TOD) Transformation Matrix. |
Matrix |
trueOfDate(double MJD_TT)
J2000 to TOD Transformation |
Matrix |
trueOfDate(Time t)
Returns the trueOfDate trasformation. |
void |
update(double MJD_UT1,
double MJD_TT)
Updates the Earth model. |
| Methods inherited from class java.lang.Object |
|---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public boolean use_moon
public boolean use_sun
public static final double omega_e
public static final double R_Earth
public static final double f_Earth
public static final double GM_Earth
| Constructor Detail |
|---|
public EarthRef(Time t0)
mjd_UTC - UTC time in MJD format.
public EarthRef(double MJD_UT1,
double MJD_TT)
mjd_UTC - UTC time in MJD format.
public EarthRef(double MJD_UT1,
double MJD_TT,
boolean use_moon,
boolean use_sun)
mjd_UTC - UTC time in MJD format.| Method Detail |
|---|
public void setIERS(double x,
double y)
x - x_pole coordinate (rad)y - y_pole coordinate (rad)public void initializeMoonEphem(double MJD_TT)
public void initializeSunEphem(double MJD_TT)
public Matrix ECI2ECEF()
public Matrix TOD()
public double MeanObliquity(double MJD_TT)
public RotationMatrix EclMatrix(double MJD_TT)
public Matrix PrecMatrix(double MJD_TT)
public void NutAngles(double MJD_TT)
public Matrix NutMatrix(double MJD_TT)
public Matrix NutMatrixSimple(double MJD_TT)
public double EqnEquinox(double MJD_TT)
public double GMST(double MJD_UT1)
public double GAST(double MJD_UT1,
double MJD_TT)
public RotationMatrix GHAMatrix(double MJD_UT1,
double MJD_TT)
public Matrix PoleMatrix()
public Matrix trueOfDate(double MJD_TT)
public Matrix eci2ecef(double MJD_UT1,
double MJD_TT)
public Matrix eci2ecef(Time t)
public void update(double MJD_UT1,
double MJD_TT)
MJD_UT1. - Universal Time in modified julian dateMJD_TT. - Terrestrial Dynamical Time in modified julian datepublic VectorN sunVector(double MJD_TT)
public VectorN get_JPL_Sun_Vector()
get_JPL_Sun_Vector in interface BodyRefpublic VectorN get_JPL_Moon_Vector()
get_JPL_Moon_Vector in interface BodyRefpublic double get_omega_e(Time t)
t - Time.
public double get_omega_e(double mjd_ut1)
mjd_ut1 - time.
public void set_use_sun(boolean b)
b - public void set_use_moon(boolean b)
b - public VectorN moonVector(double MJD_TT)
public Matrix inertial_to_body(Time t)
inertial_to_body in interface BodyRefmjd_body - Earth referenced time (Universal Time UT1)mjd_inertial - Dynamical time (Terrestrial Time)
public Matrix body_to_inertial(Time t)
body_to_inertial in interface BodyReft - Time object
BodyRef.body_to_inertial(Time)public double get_spin_rate(Time t)
get_spin_rate in interface BodyReft - Time object
jat.spacetime.BodyRef#get_spin_rate()public double get_mean_radius()
get_mean_radius in interface BodyRefBodyRef.get_mean_radius()public double get_grav_const()
get_grav_const in interface BodyRefBodyRef.get_grav_const()public Matrix trueOfDate(Time t)
trueOfDate in interface BodyReft - Time object
BodyRef.trueOfDate(jat.spacetime.Time)public static void main(java.lang.String[] args)
args -
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||