Main Content

Planetary Ephemeris

Implement position and velocity of astronomical objects

  • Planetary Ephemeris block

Libraries:
Aerospace Blockset / Environment / Celestial Phenomena

Description

The Planetary Ephemeris block uses Chebyshev coefficients to implement the position and velocity of the target object relative to the specified center object for a given Julian date. The Target parameter specifies an astronomical object. The block implements the ephemerides using the Center parameter for an astronomical object as the reference.

The block uses the Chebyshev coefficients that the NASA Jet Propulsion Laboratory provides.

Tip

For TJD, Julian date input for the block:

This block implements the position and velocity using the International Celestial Reference Frame. If you require the planetary ephemeris position value relative to Earth in Earth-fixed (ECEF) coordinates, use the Direction Cosine Matrix ECI to ECEF block.

Ports

Input

expand all

Julian date, specified as a positive scalar between minimum and maximum Julian dates.

Specify the Julian dates in Barycentric Dynamical Time (TDB).

See the Ephemeris model parameter for the minimum and maximum Julian dates.

Dependencies

This port displays if the Epoch parameter is set to Julian date.

Data Types: double

Fixed Julian date for a specific epoch that is the most recent midnight at or before the interpolation epoch, specified as a positive scalar. The sum of T0JD and ΔTJD must fall between the minimum and maximum Julian date.

Specify the Julian dates in Barycentric Dynamical Time (TDB).

See the Ephemeris model parameter for the minimum and maximum Julian dates.

Dependencies

This port displays if the Epoch parameter is set to T0 and elapsed Julian time.

Data Types: double

Elapsed Julian time between the fixed Julian date and the ephemeris time, specified as a positive scalar. The sum of T0JD and ΔTJD must fall between the minimum and maximum Julian date.

See the Ephemeris model parameter for the minimum and maximum Julian dates.

Dependencies

This port displays if the Epoch parameter is set to T0 and elapsed Julian time.

Data Types: double

Output

expand all

Barycenter position (Xicrf1) of the Target object relative to the barycenter of the Center object, output as a vector, in km or astronomical units (AU).

Tip

This block outputs the barycenter position in International Celestial Reference Frame (ICRF) coordinates. To convert these coordinates to Earth-centered Earth-fixed (ECEF), use the Direction Cosine Matrix ECI to ECEF block.

Data Types: double

Velocity (Vicrf) of the barycenter of the Target object relative to the barycenter of the Center object, specified as a vector, in km/s or astronomical units (AU)/day.

Data Types: double

Parameters

expand all

Output units, specified as km,km/s or AU,AU/day.

Units

Position

Velocity

m,m/s

m

m/s

km,km/s

km

km/s

Au,AU/day

astronomical units (AU)

AU/day

Programmatic Use

Block Parameter: units
Type: character vector
Values: m,m/s | km,km/s | AU,AU/day
Default: 'km,km/s'

Epoch, specified as:

  • Julian date

    Julian date to implement the position and velocity of the Target object.. When this option is selected, the block has one input port, TJD.

  • T0 and elapsed Julian time

    Julian date, specified by two block inputs:

    • Fixed Julian date representing a starting epoch.

    • Elapsed Julian time between the fixed Julian date (T0JD) and the desired model simulation time. The sum of T0JD and ΔTJD must fall between the minimum and maximum Julian date.

Programmatic Use

Block Parameter: epochFormat
Type: character vector
Values: Julian date | T0 and elapsed Julian time
Default: 'Julian date'

Select one of these ephemerides models defined by the Jet Propulsion Laboratory. The block uses ephemeris data to calculate relative celestial positions required for third body point mass gravity and solar radiation pressure.

Ephemeris Model Description

DE405

Released in 1998. This ephemeris takes into account the Julian date range 2305424.50 (December 9, 1599) to 2525008.50 (February 20, 2201).

This block implements these ephemerides with respect to the International Celestial Reference Frame version 1.0, adopted in 1998.

DE421

Released in 2008. This ephemeris takes into account the Julian date range 2414992.5 (December 4, 1899) to 2469808.5 (January 2, 2050).

This block implements these ephemerides with respect to the International Celestial Reference Frame version 1.0, adopted in 1998.

DE423

Released in 2010. This ephemeris takes into account the Julian date range 2378480.5 (December 16, 1799) to 2524624.5 (February 1, 2200).

This block implements these ephemerides with respect to the International Celestial Reference Frame version 2.0, adopted in 2010.

DE430

Released in 2013. This ephemeris takes into account the Julian date range 2287184.5 (December 21, 1549) to 2688976.5 (January 25, 2650).

This block implements these ephemerides with respect to the International Celestial Reference Frame version 2.0, adopted in 2010.

DE432t

Released in April 2014. This ephemeris takes into account the Julian date range 2287184.5, (December 21, 1549 ) to 2688976.5, (January 25, 2650).

This block implements these ephemerides with respect to the International Celestial Reference Frame version 2.0, adopted in 2010.

Note

This block requires that you download ephemeris data using the Add-On Explorer. To start the Add-On Explorer, in the MATLAB® Command Window, type aeroDataPackage. in the MATLAB desktop toolstrip, click Add-Ons .

Dependencies

To enable this parameter:

  • Set the Propagation method parameter to Numerical (high precision).

Programmatic Use

Block Parameter: ephemerisModel
Type: character vector
Values: DE405 | DE421 | DE423 | DE430
Default: 'DE405'

Select one of these ephemerides models defined by the Jet Propulsion Laboratory.

Ephemeris Model Description

DE405

Released in 1998. This ephemeris takes into account the Julian date range 2305424.50 (December 9, 1599) to 2525008.50 (February 20, 2201).

This block implements these ephemerides with respect to the International Celestial Reference Frame version 1.0, adopted in 1998.

DE421

Released in 2008. This ephemeris takes into account the Julian date range 2414992.5 (December 4, 1899) to 2469808.5 (January 2, 2050).

This block implements these ephemerides with respect to the International Celestial Reference Frame version 1.0, adopted in 1998.

DE423

Released in 2010. This ephemeris takes into account the Julian date range 2378480.5 (December 16, 1799) to 2524624.5 (February 1, 2200).

This block implements these ephemerides with respect to the International Celestial Reference Frame version 2.0, adopted in 2010.

DE430

Released in 2013. This ephemeris takes into account the Julian date range 2287184.5 (December 21, 1549) to 2688976.5 (January 25, 2650).

This block implements these ephemerides with respect to the International Celestial Reference Frame version 2.0, adopted in 2010.

DE432t

Released in April 2014. This ephemeris takes into account the Julian date range 2287184.5, (December 21, 1549 ) to 2688976.5, (January 25, 2650).

This block implements these ephemerides with respect to the International Celestial Reference Frame version 2.0, adopted in 2010.

Note

This block requires that you download ephemeris data using the Add-On Explorer. To start the Add-On Explorer, in the MATLAB Command Window, type aeroDataPackage. In the MATLAB desktop toolstrip, click Add-Ons.

Programmatic Use

Block Parameter: ephemerisModel
Type: character vector
Values: DE405 | DE421 | DE423 | DE430
Default: 'DE405'

Center body (astronomical object) or reference body, specified as a point of reference for the Target barycenter position and velocity measurement.

Programmatic Use

Block Parameter: center
Type: character vector
Values: Sun | Mercury | Venus | Earth | Moon | Mars | Jupiter | Saturn | Uranus | Neptune | Pluto | Solar system barycenter | Earth-Moon barycenter
Default: 'Sun'

Target body (astronomical object) or reference body, specified as a point of reference for the barycenter position and velocity measurement.

Programmatic Use

Block Parameter: target
Type: character vector
Values: Sun | Mercury | Venus | Earth | Moon | Mars | Jupiter | Saturn | Uranus | Neptune | Pluto | Solar system barycenter | Earth-Moon barycenter
Default: 'Moon'

Control how much data is loaded into memory during simulation and how much data is included in generated code for the block:

  • Select this check box to limit the loading of ephemeris data to a specified date range.

  • Clear this check box to include data for the complete date range defined in the Ephemeris model table.

Dependencies

To enable this parameter:

  • Set the Propagation method parameter to Numerical (high precision).

Programmatic Use

Block Parameter: useDateRange
Type: character vector
Values: 'off' | 'on'
Default: 'off'

Start date of ephemerides date range, specified as a Julian date.

Dependencies

To enable this parameter:

  • Set the Propagation method parameter to Numerical (high precision).

  • Select the Limit ephemerides date range parameter.

Programmatic Use

Block Parameter: startDate
Type: character vector
Values: 'juliandate(2020, 1, 1)' | Julian date
Default: 'juliandate(2020, 1, 1)'

End date of ephemerides date range, specified as a Julian date.

Dependencies

To enable this parameter, select the Limit ephemerides date range check box.

Dependencies

To enable this parameter:

  • Set the Propagation method parameter to Numerical (high precision).

  • Set the Limit ephemerides date range parameter to on.

Programmatic Use

Block Parameter: endDate
Type: character vector
Values: 'juliandate(2050, 1, 1)' | Julian format date
Default: 'juliandate(2050, 1, 1)'

Out-of-range block behavior, specified as:

ActionDescription

None

No action.

Warning

Warning in the Diagnostic Viewer, model simulation continues.

Error (default)

Error in the Diagnostic Viewer, model simulation stops.

Programmatic Use

Block Parameter: action
Type: character vector
Values: 'None' | 'Warning' | 'Error'
Default: 'Warning'

Select this check box to calculate the velocity of the Target barycenter relative to the Center barycenter.

Programmatic Use

Block Parameter: outputVelocity
Type: character vector
Values: 'off' | 'on' |
Default: 'on'

References

[1] Folkner, W. M., J. G. Williams, and D. H. Boggs. "The Planetary and Lunar Ephemeris DE 421." IPN Progress Report 42-178, 2009.

[2] Ma, C. et al. "The International Celestial Reference Frame as Realized by Very Long Baseline Interferometry." Astronomical Journal, Vol. 116, 516–546, 1998.

[3] Vallado, D. A. Fundamentals of Astrodynamics and Applications. New York: McGraw-Hill, 1997.

Extended Capabilities

C/C++ Code Generation
Generate C and C++ code using Simulink® Coder™.

Version History

Introduced in R2013a

expand all