spice_ephemeris_module Module

Interface to the SPICE ephemeris library.

Not a standard part of FAT. If used, it requires linking with the Fortran SPICELIB SPICE Toolkit.

Note

Haven't validated this yet.


Uses

  • module~~spice_ephemeris_module~~UsesGraph module~spice_ephemeris_module spice_ephemeris_module iso_fortran_env iso_fortran_env module~spice_ephemeris_module->iso_fortran_env module~ephemeris_module ephemeris_module module~spice_ephemeris_module->module~ephemeris_module module~kind_module kind_module module~spice_ephemeris_module->module~kind_module module~ephemeris_module->module~kind_module module~celestial_body_module celestial_body_module module~ephemeris_module->module~celestial_body_module module~kind_module->iso_fortran_env module~celestial_body_module->module~kind_module module~base_class_module base_class_module module~celestial_body_module->module~base_class_module module~numbers_module numbers_module module~celestial_body_module->module~numbers_module module~numbers_module->module~kind_module

Interfaces

interface

  • private function failed()

    see: ftp://naif.jpl.nasa.gov/pub/naif/toolkit_docs/FORTRAN/spicelib/failed.html

    Arguments

    None

    Return Value logical

interface

  • private subroutine trcoff()

    Arguments

    None

interface

  • private subroutine furnsh(file)

    see: ftp://naif.jpl.nasa.gov/pub/naif/toolkit_docs/FORTRAN/spicelib/furnsh.html

    Arguments

    Type IntentOptional Attributes Name
    character(len=*), intent(in) :: file

interface

  • private subroutine unload(file)

    see: ftp://naif.jpl.nasa.gov/pub/naif/toolkit_docs/FORTRAN/spicelib/unload.html

    Arguments

    Type IntentOptional Attributes Name
    character(len=*), intent(in) :: file

interface

  • private subroutine kclear()

    see: ftp://naif.jpl.nasa.gov/pub/naif/toolkit_docs/FORTRAN/spicelib/kclear.html

    Arguments

    None

interface

  • private subroutine spkgeo(targ, et, ref, obs, state, lt)

    see: ftp://naif.jpl.nasa.gov/pub/naif/toolkit_docs/FORTRAN/spicelib/spkgeo.html

    Arguments

    Type IntentOptional Attributes Name
    integer :: targ
    real(kind=wp) :: et
    character(len=*) :: ref
    integer :: obs
    real(kind=wp), dimension(6) :: state
    real(kind=wp) :: lt

Derived Types

type, public, extends(ephemeris_class) ::  spice_ephemeris

Main class for accessing the SPICE ephemeris system.

Read more…

Components

Type Visibility Attributes Name Initial
character(len=:), public, dimension(:), allocatable :: kernels

the list of kernels

Type-Bound Procedures

procedure, public :: get_rv => get_rv_from_spice_ephemeris
procedure, public :: initialize => initialize_spice_ephemeris
procedure, public :: close => close_spice_ephemeris

Subroutines

private subroutine close_spice_ephemeris(me)

Close the SPICE ephemeris and unload all the kernels.

Arguments

Type IntentOptional Attributes Name
class(spice_ephemeris), intent(inout) :: me

private subroutine initialize_spice_ephemeris(me, kernels)

Initialize a SPICE ephemeris by loading the specified kernels.

Arguments

Type IntentOptional Attributes Name
class(spice_ephemeris), intent(inout) :: me
character(len=*), intent(in), dimension(:) :: kernels

list of kernels to load

private subroutine get_rv_from_spice_ephemeris(me, et, targ, obs, rv, status_ok)

Interface for the ephemeris_module.

Read more…

Arguments

Type IntentOptional Attributes Name
class(spice_ephemeris), intent(inout) :: me
real(kind=wp), intent(in) :: et

ephemeris time [sec]

type(celestial_body), intent(in) :: targ

target body

type(celestial_body), intent(in) :: obs

observer body

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

state of targ w.r.t. obs [km,km/s] in ICRF frame

logical, intent(out) :: status_ok

true if there were no problems