|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectkeps.Transforms
public class Transforms
The Transforms class contains methods that involve transforming vectors in the Earth Centered Inertial (ECI) coordinate frame in various ways. This encompasses a rather large range of functionality. Typically, ECI vectors serve as input while a derived set of information is returned.
Much of this code was adapted from Predict ( http://www.qsl.net/kd2bd/predict.html) written by John A. Magliacane KD2BD. Assistance was also provided by Dr. TS Kelso ( http://www.celestrak.com/) and Ciprian Sufitchi N2YO ( http://www.n2yo.com/)
| Constructor Summary | |
|---|---|
Transforms()
This constructor is merely for appearances |
|
| Method Summary | |
|---|---|
void |
Calculate_LatLonAlt(double time,
Vector3 pos,
Geodetic coords)
This method provides geodetic (lat, lon, alt) coordinates of an object provided its ECI position and time. |
void |
Calculate_Obs(double time,
Vector3 pos,
Vector3 vel,
Geodetic coords,
ObservationSet obs_set)
This method generates topocentric coordinates (az, el, range, range rate) when provided the ECI position, velocity of the object along with the Geodetic coordinates of the observation location at a particular time. |
void |
Calculate_Solar_Position(double time,
Vector3 solar_vector)
This method generates a solar position vector in ECI coordinates based only on time |
void |
Calculate_SolarObs(double time,
Geodetic obs_coords,
Vector3 solar_pos,
ObservationSet solar_set,
Geodetic solar_latlonalt)
This method finds the position of the sun in Geodetic coordinates and as an observation set (az, el, range). |
void |
Calculate_User_PosVel(double time,
Geodetic coords,
Vector3 obs_pos,
Vector3 obs_vel)
This method uses the geodetic position and time of interest and returns the ECI position and velocity of the observer. |
double |
Sat_Eclipsed(Vector3 pos,
Vector3 sol)
This method returns the illumination level of an object based on the current position of the sun and earth. |
| Methods inherited from class java.lang.Object |
|---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public Transforms()
| Method Detail |
|---|
public void Calculate_LatLonAlt(double time,
Vector3 pos,
Geodetic coords)
This method was derived from Predict
Reference: The 1992 Astronomical Almanac, page K12.
time - double The time at which the following ECI pos Vector is relevantpos - Vector3 ECI position vector describing the current position of
object being tracked.coords - Geodetic This is populated with the Latitude, Longitude, and Altitude
of the object being tracked. This is the output of this method.
public void Calculate_User_PosVel(double time,
Geodetic coords,
Vector3 obs_pos,
Vector3 obs_vel)
Using this to translate GPS coordinates from an orbiting satellite or airplane would likely be a bad choice.
This method was derived from Predict
Reference: The 1992 Astronomical Almanac, page K11.
time - double The time at which the following locations are validcoords - Geodetic The geodetic position to be translatedobs_pos - Vector3 The ECI position vector of the object populated by this method.obs_vel - Vector3 The ECI velocity vector of the object populated by this method.
public void Calculate_Obs(double time,
Vector3 pos,
Vector3 vel,
Geodetic coords,
ObservationSet obs_set)
Azimuth - radians
Elevation - radians
Range - kilometers
Range Rate - kilometers / second
Calculations are based on topocentric position using the WGS '72 geoid
This method was derived from Predict
time - double The time at which the following locations are validpos - Vector3 The ECI position vector of the object.vel - Vector3 The ECI velocity vector of the object.coords - Geodetic The Geodetic coordinates of the observer.obs_set - ObservationSet This is populated with the az, el, range, and range rate
of the object from the observation location.
public void Calculate_Solar_Position(double time,
Vector3 solar_vector)
This method was derived from Predict
time - double The time at which the solar position vector is valid
public void Calculate_SolarObs(double time,
Geodetic obs_coords,
Vector3 solar_pos,
ObservationSet solar_set,
Geodetic solar_latlonalt)
This method was derived from Predict
time - double The time at which the following locations are validobs_coords - Geodetic This is the Latitude, Longitude, and Altitude of the observer.solar_pos - Vector3 Solar ECI position vector.solar_set - ObservationSet This is populated with the az, el, range, and range rate
of the sun from the observation location.solar_latlonalt - Geodetic This is populated with the Geodetic coordinates corresponding to the sun.
public double Sat_Eclipsed(Vector3 pos,
Vector3 sol)
Reference: http://celestrak.com/columns/v03n01/
pos - Vector3 The current position of the object in the ECI reference frame.sol - Vector3 The current position of the sun in the ECI reference frame.
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||