<p>The search for sungrazing comets requires looking very close to the Sun for faint objects. This requires a chronograph and for faint objects is better done above the atmosphere. The SOHO spacecraft near the Sun-Earth L1 point does this nicely.</p>
<p>Here is a GIF I made for <a href="https://space.stackexchange.com/a/15429/12102">this answer</a>. In addition to some comets you can see Venus on its approach to occultation by the Sun in 2016. Seeing the Pleides so close to the Sun is exciting as well!</p>
<blockquote>
<p>These <a href="http://lasco-www.nrl.navy.mil/index.php?p=content/handbook/hndbk_3" rel="nofollow noreferrer">LASCO C3</a> images from <a href="http://sohowww.nascom.nasa.gov/home.html" rel="nofollow noreferrer">SOHO</a> were downloaded <a href="http://sohodata.nascom.nasa.gov/cgi-bin/data_query" rel="nofollow noreferrer">sohodata.nascom.nasa.gov/cgi-bin/data_query</a>. <em>The square frame is about 15.9 degrees wide</em>.</p>
<p><a href="https://i.sstatic.net/LgrIs.gif" rel="nofollow noreferrer"><img src="https://i.sstatic.net/LgrIs.gif" alt="enter image description here" /></a></p>
</blockquote>
<p>You can see many trajectories for 2016 in <a href="http://sungrazer.nrl.navy.mil/index.php?p=transits/transits_2016" rel="nofollow noreferrer">http://sungrazer.nrl.navy.mil/index.php?p=transits/transits_2016</a> (shown below) and replacing 2016 with other years works as well.</p>
<p>The problem with this page is that while it may flag likely occultations, it does not unambiguously predict them, so you may need to use another source for accurate predictions.</p>
<p><a href="https://i.sstatic.net/01OYE.jpg" rel="nofollow noreferrer"><img src="https://i.sstatic.net/01OYE.jpg" alt="from sungrazer(dot)nrl(dot)navy(dot)mil" /></a></p>
<p>Here's a quick calculation for 2016 using the Python package <a href="https://rhodesmill.org/skyfield/" rel="nofollow noreferrer">Skyfield</a>. It seems both Mercury and Venus were able to hide behind the Sun.</p>
<p><a href="https://i.sstatic.net/kNFZ2.png" rel="nofollow noreferrer"><img src="https://i.sstatic.net/kNFZ2.png" alt="2016 Solar occultation of planets" /></a></p>
<h2>Jackpot!  Mercury, Jupiter, Saturn, Mercury</h2>
<p><a href="https://i.sstatic.net/vQZiw.png" rel="nofollow noreferrer"><img src="https://i.sstatic.net/vQZiw.png" alt="2019.5 to 2020.5 Solar occultation of planets" /></a></p>
<p><a href="https://i.sstatic.net/4KPVp.png" rel="nofollow noreferrer"><img src="https://i.sstatic.net/4KPVp.png" alt="2000 to 2030 Solar occultation of planets" /></a></p>
<pre><code>import numpy as np
import matplotlib.pyplot as plt
from skyfield.api import Loader, Topos, EarthSatellite

halfpi, pi, twopi = [f*np.pi for f in (0.5, 1, 2)] 
degs, rads        = 180/pi, pi/180
Rsun              = 696392. # https://en.wikipedia.org/wiki/Sun

load    = Loader('~/Documents/fishing/SkyData') 
ts      = load.timescale()
data    = load('de421.bsp')

names   = ('Mercury', 'Venus', 'Mars', 'Jupiter', 'Saturn')
objects = [data[name + ' barycenter'] for name in names]
earth   = data['Earth']
sun     = data['Sun']

ts      = load.timescale()
days    = np.arange(1, 366, 0.1)
times   = ts.utc(2016, 1, days)

observations = [earth.at(times).observe(obj) for obj in objects]
sunobs       =  earth.at(times).observe(sun)
sundist      = sunobs.distance().km
separations  = [obs.separation_from(sunobs) for obs in observations]

sunhalfangledegs     = degs*np.arctan2(Rsun, sundist)
sunhalfangledegsmin  = sunhalfangledegs.min()

if True:
    plt.figure()
    for i, (name, sep) in enumerate(zip(names, separations)):
        plt.subplot(5, 1, i+1)
        angle = degs*sep.radians
        minangle = angle.min()
        plt.plot(days, angle)
        plt.ylim(0, None)
        ymin, ymax = plt.ylim()
        ymax = 5*max(ymin, minangle, sunhalfangledegsmin)
        plt.ylim(0, ymax)
        plt.plot(days, sunhalfangledegs, '-r', linewidth=0.5)
        plt.title('observed Sun-Earth-' + name + ' angle (degs)')
    plt.show()
</code></pre>

CC BY-SA 4.0
2018-11-05T01:08:49.863Z
2018-11-05T03:22:43.247Z
2020-06-17T09:47:40.653Z
uhoh
<p>There are numerous lists available of past and future <a href="https://en.wikipedia.org/wiki/Planetary_transits_and_occultations" rel="noreferrer">planetary transits and occultations</a>, but I can't find any that list transits behind the sun.</p>

<p>Do the planets in our solar system ever pass directly behind the sun, from Earth's perspective? Is there a special name for this kind of occultation, and is there a list of these events?</p>

CC BY-SA 4.0
2018-11-04T17:22:34.313Z
It does happen sometimes, however, such a phenomenon would not be easily observable. Occasionally, on coronagraph images, you can see a celestial body cross in front or behind the Sun. I do not know of any lists available, but it would be possible to calculate these with a planetarium software or astronomical calculator, like Skyfield, JPL Horizons, Stellarium, Celestia, etc.
FSimardGIS
<the-sun><planetary-transits><occultation>
When are the planets occulted by the sun?
Robert
# When are the planets occulted by the sun?

(Asked by: username_0 on 2018-11-03)

There are numerous lists available of past and future [planetary transits and occultations](https://en.wikipedia.org/wiki/Planetary_transits_and_occultations), but I can't find any that list transits behind the sun.

Do the planets in our solar system ever pass directly behind the sun, from Earth's perspective? Is there a special name for this kind of occultation, and is there a list of these events?

**Tags:** the-sun, planetary-transits, occultation
> **Comments:**
> **username_1**: It does happen sometimes, however, such a phenomenon would not be easily observable. Occasionally, on coronagraph images, you can see a celestial body cross in front or behind the Sun. I do not know of any lists available, but it would be possible to calculate these with a planetarium software or astronomical calculator, like Skyfield, JPL Horizons, Stellarium, Celestia, etc.  

---

## 1 answers

### Answer by username_2 on 2018-11-05. Score: 5 | Accepted answer

The search for sungrazing comets requires looking very close to the Sun for faint objects. This requires a chronograph and for faint objects is better done above the atmosphere. The SOHO spacecraft near the Sun-Earth L1 point does this nicely.
Here is a GIF I made for this answer. In addition to some comets you can see Venus on its approach to occultation by the Sun in 2016. Seeing the Pleides so close to the Sun is exciting as well!

These LASCO C3 images from SOHO were downloaded sohodata.nascom.nasa.gov/cgi-bin/data_query. The square frame is about 15.9 degrees wide.


You can see many trajectories for 2016 in http://sungrazer.nrl.navy.mil/index.php?p=transits/transits_2016 (shown below) and replacing 2016 with other years works as well.
The problem with this page is that while it may flag likely occultations, it does not unambiguously predict them, so you may need to use another source for accurate predictions.

Here's a quick calculation for 2016 using the Python package Skyfield. It seems both Mercury and Venus were able to hide behind the Sun.

Jackpot!  Mercury, Jupiter, Saturn, Mercury


import numpy as np
import matplotlib.pyplot as plt
from skyfield.api import Loader, Topos, EarthSatellite

halfpi, pi, twopi = [f*np.pi for f in (0.5, 1, 2)] 
degs, rads        = 180/pi, pi/180
Rsun              = 696392. # https://en.wikipedia.org/wiki/Sun

load    = Loader('~/Documents/fishing/SkyData') 
ts      = load.timescale()
data    = load('de421.bsp')

names   = ('Mercury', 'Venus', 'Mars', 'Jupiter', 'Saturn')
objects = [data[name + ' barycenter'] for name in names]
earth   = data['Earth']
sun     = data['Sun']

ts      = load.timescale()
days    = np.arange(1, 366, 0.1)
times   = ts.utc(2016, 1, days)

observations = [earth.at(times).observe(obj) for obj in objects]
sunobs       =  earth.at(times).observe(sun)
sundist      = sunobs.distance().km
separations  = [obs.separation_from(sunobs) for obs in observations]

sunhalfangledegs     = degs*np.arctan2(Rsun, sundist)
sunhalfangledegsmin  = sunhalfangledegs.min()

if True:
    plt.figure()
    for i, (name, sep) in enumerate(zip(names, separations)):
        plt.subplot(5, 1, i+1)
        angle = degs*sep.radians
        minangle = angle.min()
        plt.plot(days, angle)
        plt.ylim(0, None)
        ymin, ymax = plt.ylim()
        ymax = 5*max(ymin, minangle, sunhalfangledegsmin)
        plt.ylim(0, ymax)
        plt.plot(days, sunhalfangledegs, '-r', linewidth=0.5)
        plt.title('observed Sun-Earth-' + name + ' angle (degs)')
    plt.show()


---

