Jeospace API

org.jeospace.physics.orbit
Class BaseWorld

java.lang.Object
  extended byorg.jeospace.physics.orbit.BaseWorld
All Implemented Interfaces:
Identifiable, KineticBody, OrbitalBody, World

public class BaseWorld
extends java.lang.Object
implements World

A concrete implementation of World intended to be initialized parametrically.

Version:
$Revision: 1.1.1.1 $
Author:
Rex Melton
See Also:
World, Cartesian, Spherical, ReferenceFrame, OrbitalElements, Identification

Constructor Summary
protected BaseWorld()
          Construct an instance
  BaseWorld(Identification ident, ReferenceFrame refFrame, Ellipsoid ellipsoid, Mass mass, OrbitalElements elements)
          Construct a World instance
 
Method Summary
 void getCoordinate(double timeValue, Cartesian cartesian)
          Calculate the position of the world referenced to it's orbital plane about it's parent world at the specified time and initialize the passed Cartesian object with the position coordinate.
 void getCoordinate(double timeValue, Spherical coordinate)
          Calculate the position of the world referenced to it's orbital plane about it's parent world at the specified time and initialize the passed Spherical object with the position coordinate.
 Ellipsoid getEllipsoid()
          Return the reference ellipsoid of the world
 double getGravitationalConstant()
          Return the gravitational constant of the world.
 Identification getIdentification()
          Return the Identification of this world
 AngleNorm getLongitudeNormalization()
          Return the normalization option to be used to format longitude coordinates.
 OrbitalElements getOrbitalElements(double timeValue)
          Return the orbital elements for the world at the specified time
 ReferenceFrame getReferenceFrame()
          Return the identifier of the reference frame in which this world orbits.
 Spherical getRotationalAxis(double timeValue)
          Return the position on the celestial sphere that is intersected by a vector along the rotational axis of the world - from it's origin, through the world's the North Pole.
 double getSiderealRotation(double timeValue)
          Return the sidereal rotation of the world about it's axis at the specified instant in time.
 void setOrbitalElements(OrbitalElements elements)
          Set the orbital elements for the world
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BaseWorld

protected BaseWorld()
Construct an instance


BaseWorld

public BaseWorld(Identification ident,
                 ReferenceFrame refFrame,
                 Ellipsoid ellipsoid,
                 Mass mass,
                 OrbitalElements elements)
Construct a World instance

Method Detail

setOrbitalElements

public void setOrbitalElements(OrbitalElements elements)
Set the orbital elements for the world

Parameters:
elements - the orbital elements of the world

getIdentification

public Identification getIdentification()
Return the Identification of this world

Specified by:
getIdentification in interface Identifiable
Returns:
the Identification of this world

getEllipsoid

public Ellipsoid getEllipsoid()
Return the reference ellipsoid of the world

Specified by:
getEllipsoid in interface World
Returns:
the ellipsoid

getGravitationalConstant

public double getGravitationalConstant()
Return the gravitational constant of the world. The gravitational constant is the product of the universal gravitational constant (G) and the mass of the world. The constant is in units of km^3 sec^2 and is used in the calculations of orbital elements of objects in orbit about the world.

Specified by:
getGravitationalConstant in interface World
Returns:
the gravitational constant

getReferenceFrame

public ReferenceFrame getReferenceFrame()
Return the identifier of the reference frame in which this world orbits.

Specified by:
getReferenceFrame in interface KineticBody
Returns:
the ReferenceFrame identifier

getCoordinate

public void getCoordinate(double timeValue,
                          Spherical coordinate)
Calculate the position of the world referenced to it's orbital plane about it's parent world at the specified time and initialize the passed Spherical object with the position coordinate.

Specified by:
getCoordinate in interface KineticBody
Parameters:
timeValue - the time instant for calculating the world's position
coordinate - the object to initialize with the world's position coordinate

getCoordinate

public void getCoordinate(double timeValue,
                          Cartesian cartesian)
Calculate the position of the world referenced to it's orbital plane about it's parent world at the specified time and initialize the passed Cartesian object with the position coordinate.

Specified by:
getCoordinate in interface KineticBody
Parameters:
timeValue - the time instant for calculating the world's position
cartesian - the object to initialize with the world's position coordinate

getOrbitalElements

public OrbitalElements getOrbitalElements(double timeValue)
Return the orbital elements for the world at the specified time

Specified by:
getOrbitalElements in interface OrbitalBody
Parameters:
timeValue - the time instant for which the elements should be calculated
Returns:
the orbital elements of the world at the specified time

getRotationalAxis

public Spherical getRotationalAxis(double timeValue)
Return the position on the celestial sphere that is intersected by a vector along the rotational axis of the world - from it's origin, through the world's the North Pole.

Note: This function is unimplemented and returns null.

Specified by:
getRotationalAxis in interface World
Parameters:
timeValue - the time instant at which to calculate the rotational axis alignment
Returns:
the position on the celestial sphere that is 'pointed to' by the rotational axis of the world.

getSiderealRotation

public double getSiderealRotation(double timeValue)
Return the sidereal rotation of the world about it's axis at the specified instant in time. The default behaviour implemented is a synchronous rotation

Specified by:
getSiderealRotation in interface World
Parameters:
timeValue - the time instant at which to calculate the rotational axis
Returns:
the rotation in units of radians.

getLongitudeNormalization

public AngleNorm getLongitudeNormalization()
Return the normalization option to be used to format longitude coordinates. The default setting is AngleNorm.FULL_REVOLUTION_POSITIVE.

Specified by:
getLongitudeNormalization in interface World
Returns:
the normalization option for the longitudes of this world.

Jeospace API

Copyright © 2006 - jeospace.org