File Exchange

image thumbnail

Planets Rise/Set

version (18.1 MB) by Meysam Mahooti
Computation of major planets, Sun, and Moon rising/setting times utilizing iterative method


Updated 21 Jan 2018

View License

The Planrise.m computes planetary positions using JPL_Eph_DE430.m. To compute the rising and setting times of a planet we first determine its (geocentric) equatorial coordinates α and δ for an arbitrary time on the given day. From the declination and the geographical latitude, Planrise then determines whether the planet is continuously above or below the horizon.
Montenbruck O., Pfleger T.; Astronomy on the Personal Computer; Springer Verlag, Heidelberg; 4th edition (2000).
Meeus J.; Astronomical Algorithms; Willmann-Bell; Richmond, Virginia; 2nd edition (1998).

Comments and Ratings (7)



The code works with updated DE430Coeff.mat now for all years including years before 1940 and years after 2080.


Dear Users,

DE430Coeff.mat full matrix is now available in the following link:
Use it rather than existing DE430Coeff.mat matrix.

Yours Faithfully
Meysam Mahooti


The code not works for year before 1940 or year after 2080. The .mat file return index error for all year before 1940 or after 2080.

How to correct it?

Demi Moore


Accuracy is improved using planetary positions with respect to true equator and equinox of date rather than mean equator and equinox of date. (TOD_PlanPos = Nutation*Precession*ICRF_PlanPos)

Condition for computation of Moon's rising/setting times is added.
line 30 of Planrise.m:
Sin_h0m = sin(pi/180*(7.5/60)); % sin(+7.5'); altitude for the Moon.

Planetary positions are computed applying Jet Propulsion Laboratory Development Ephemeris (DE430). CityName.m is added to give the name of city you have entered its geographical latitude and longitude.

MATLAB Release Compatibility
Created with R2017b
Compatible with any release
Platform Compatibility
Windows macOS Linux