How it works
CME detector
SOHO’s LASCO cameras and NOAA’s GOES-19 Compact Coronagraph (CCOR-1) take pictures of the Sun’s outer atmosphere every few minutes. We look for a bright front that is moving outward — the observational definition of a coronal mass ejection — and write those events into the same catalog as SIDC and NASA.
This is a simplified CACTus-style pipeline, not the official SIDC catalog. SIDC and NASA DONKI remain the primary sources on the CME overview. Our detector is a second, independent look at the same sky, so a fast west-limb storm does not have to wait on a human or a delayed bulletin. LASCO still sets the launch time (appearance at ~2.2 solar radii); CCOR-1 adds photons in the overlap from about 4.5 to 18 solar radii.
From coronagraph movie to an event
-
1
Collect LASCO C2, C3, and CCOR-1 frames LASCO synoptic Level-0.5 FITS from NASA GSFC, plus GOES-19 CCOR-1 Level-1B FITS from SWPC (NCEI archive as fallback). C2 sees roughly 2–6 solar radii, CCOR-1 about 4.5–18, C3 about 6–24. We skip CCOR frames with Earth in the field of view — common near equinox from geostationary orbit.
-
2
Unwrap each image into polar coordinates Every pixel becomes height from the Sun versus compass direction (position angle: 0° = solar north, 90° = east). A CME then looks like a bright ridge moving to larger height as time goes on.
-
3
Running difference We divide “this frame minus the previous one” by the previous brightness, then clip the ratio. That is CACTus’s relative difference: it highlights new material and ignores a planet or cosmic-ray spike that would otherwise dominate.
-
4
Modified Hough transform Difference frames from all three cameras go onto one height–time grid. For each compass direction we ask: which launch time and speed draw a straight line through the moving front? Appearance time is defined at the C2 occulter (~2.2 solar radii). Inner heights are weighted more heavily so a late C3 or CCOR brightening cannot steal the launch time.
-
5
Cluster neighboring directions Ridges that share a launch time and sit next to each other on the sky become one CME. Width is the included arc; the listed speed is the median along that arc. Very wide events can be tagged as partial halos.
-
6
Respect the occulter pylons Each coronagraph’s occulting disk is held by an arm, and that sector is noisy. LASCO’s pylon sits at 135° (southeast) when SOHO is north-up, or 315° when the spacecraft is inverted — not on the west limb. CCOR-1’s pylon follows the detector’s +y axis (solar position angle ≈ −CROTA; near 24° on 14 Sep 2026). We only drop narrow blobs centered on either pylon; a real west-equatorial CME is left alone.
What each number means
- t0
- First appearance at the C2 occulter. This is the catalog launch time, not the later arrival at Earth. CCOR-1 cannot see that height; it votes on the same track farther out.
- PA
- Principal angle — midpoint of the CME’s arc, measured counterclockwise from solar north.
- da
- Angular width in degrees. Wider than about 90° can be a partial halo; that does not by itself mean Earth-directed.
- v
- Speed along the width, in km/s. After the Hough guess we fit the front (linear, quadratic, or Savitzky–Golay) the way CORIMP does. The listed value is that fit when it is sane; otherwise the Hough speed.
GOES-19 CCOR-1
CCOR-1 is NOAA’s operational coronagraph on GOES-19. It is not a LASCO clone: the occulter starts farther out (~4.5 solar radii), the cadence is 15 minutes, and because the satellite is in geostationary orbit the Earth can graze or fill the field around the equinoxes. We ingest the public SWPC L1B FITS — the same product the CME Analysis Tool uses — and remap them onto the LASCO height–time cube. That adds an independent set of photons from a different spacecraft, not a second catalog to scrape.
L1B is still stray-light dominated. We do not wait for NOAA’s background-subtracted L2/L3 products; those are later. Running differences on L1B are the same trick CACTus uses on LASCO Level-0.5.
How this differs from SIDC
SIDC’s CACTus is the reference automated catalog, and it is LASCO-only. We reuse its idea — polar maps, relative differences, a Hough transform in height and time — on a rolling six-hour window of LASCO C2+C3 plus CCOR-1, then merge hits into the AuroraWatchers catalog as an extra source. We do not replace SIDC or NASA DONKI.
A typical Earth-directed storm still needs NASA’s WSA-ENLIL run (the “on the way to Earth” panel) to estimate arrival. The detector only answers: did something leave the Sun in this movie?
Papers
-
Robbrecht & Berghmans 2004
Automated CME detection with a modified Hough transform on polar LASCO running-differences. This is the CACTus method we follow. A&A 425, 1097 · SIDC PDF
-
SIDC CACTus catalog notes
Image selection from FITS headers, and the LASCO occulter pylon at 135° from solar north (315° when SOHO is inverted). Catalog construction · Live CACTus
-
Yashiro et al. 2008
Comparison of manual and automated CME catalogs. False detections around the pylon are typically narrow (width ≤ 30°). Ann. Geophys. 26, 3103
-
Olmedo et al. 2008
SEEDS: region-growing detection in LASCO C2. Appearance time is a C2 problem — that is why we weight inner heights when voting for t0. Solar Phys. 248, 485
-
Byrne et al. 2012
CORIMP: dynamic background, multiscale edges, and a height–time fit that is allowed to accelerate. After Hough we do a simpler version of that fit on the front; we still bound ΔB/B and despike instead of a full CORIMP background. arXiv:1207.6125
-
Hess & Colaninno 2017
CDAW, CACTus, SEEDS and CORIMP disagree as much because of cadence and method as because of physics. We skip difference pairs more than 45 minutes apart. ApJ 836, 9
-
NOAA SWPC / NCEI — CCOR-1
GOES-19 Compact Coronagraph-1: L1B FITS, ~4.5–22.5 solar radii, 15-minute cadence, Earth occultation and earthshine near equinox, pylon that moves with yaw flips. SWPC coronagraph · NRL data notes · Provisional read-me (PDF)
Limits. This is not a forecast. Halo width can be overstated, a six-hour window can split a long event, and CCOR-1 can go dark or earthshine-bright around the equinoxes. Always cross-check a hit against the LASCO and CCOR movies and the SIDC/DONKI cards on the overview.