modified_equinoctial_module Module

Modified equinoctial elements routines.

The modified equinoctial elements are applicable to all orbits and have non-singular equations of motion (except for a singularity at ). They are defined as:

Where is the true longitude, is the semi-latus rectum, and is the true anomaly.

References

  • Broucke, R. A. & Cefola, P. J., "On the Equinoctial Orbit Elements" Celestial Mechanics, Volume 5, Issue 3, p 303-310. (1972)
  • M. J. H. Walker, B. Ireland, Joyce Owens, "A Set of Modified Equinoctial Orbit Elements" Celestial Mechanics, Volume 36, Issue 4, p 409-419. (1985)
  • Walker, M. J. H, "Erratum - a Set of Modified Equinoctial Orbit Elements" Celestial Mechanics, Volume 38, Issue 4, p 391-392. (1986)

Uses

  • module~~modified_equinoctial_module~~UsesGraph module~modified_equinoctial_module modified_equinoctial_module module~kind_module kind_module module~modified_equinoctial_module->module~kind_module module~numbers_module numbers_module module~modified_equinoctial_module->module~numbers_module module~vector_module vector_module module~modified_equinoctial_module->module~vector_module iso_fortran_env iso_fortran_env module~kind_module->iso_fortran_env module~numbers_module->module~kind_module module~vector_module->module~kind_module module~vector_module->module~numbers_module

Used by

  • module~~modified_equinoctial_module~~UsedByGraph module~modified_equinoctial_module modified_equinoctial_module module~fortran_astrodynamics_toolkit fortran_astrodynamics_toolkit module~fortran_astrodynamics_toolkit->module~modified_equinoctial_module

Subroutines

public subroutine cartesian_to_equinoctial(mu, rv, evec)

Convert Cartesian coordinates to modified equinoctial elements (posigrade formulation).

Arguments

Type IntentOptional Attributes Name
real(kind=wp), intent(in) :: mu

central body gravitational parameter ()

real(kind=wp), intent(in), dimension(6) :: rv

Cartesian state vector

real(kind=wp), intent(out), dimension(6) :: evec

Modified equinoctial element vector

public subroutine equinoctial_to_cartesian(mu, evec, rv)

Convert modified equinoctial elements (posigrade formulation) to Cartesian coordinates.

Arguments

Type IntentOptional Attributes Name
real(kind=wp), intent(in) :: mu

central body gravitational parameter ()

real(kind=wp), intent(in), dimension(6) :: evec

Modified equinoctial element vector

real(kind=wp), intent(out), dimension(6) :: rv

Cartesian state vector

public subroutine modified_equinoctial_derivs(mu, evec, scn, evecd)

Modified equinoctial elements (posigrade formulation) equations of motion.

Arguments

Type IntentOptional Attributes Name
real(kind=wp), intent(in) :: mu

central body gravitational parameter ()

real(kind=wp), intent(in), dimension(6) :: evec

modified equinoctial element vector

real(kind=wp), intent(in), dimension(3) :: scn

Perturbation (in the RSW frame)

real(kind=wp), intent(out), dimension(6) :: evecd

derivative of evec

public subroutine modified_equinoctial_test()

Unit tests for the modified_equinoctial_module.

Arguments

None