Data products and code
- NASA's path tables are the reference product but are smooth-Moon and sea-level. The columns are UT, northern and southern limit, central line, Moon/Sun diameter ratio, Sun altitude and azimuth, path width in km and central duration, in 2-minute rows for 2024 with s. There is no limb correction, and the edges are good to 1 to 2 km 1 2.
- SVS shapefiles are the only public product with limb-profiled, terrain-corrected umbra polygons. For 2017 the umbra comes at 10 min, 1 min and 1 s, the last as 6000 shapes at about 100 m precision, with path, central line and penumbra contours. For 2024 there are
umbra_hiat 1 s,umbra_loat 10 s,upath,center,durationat 30 s andppathat 5 and 1 per cent obscuration. All are WGS 84 lat-lon, built from SRTM, LRO LOLA and SLDEM2015, and JPL DE421 on every SVS product page, with DE440 in the paper's appendix 3 4. - Jubier's KML and GreatAmericanEclipse's maps are limb-corrected. Jubier publishes KML/KMZ per eclipse and a per-location limb correction. Zeiler's maps use Espenak's elements through Jubier's software, "corrected for the precise shape of the Moon's limb" 5 6.
- NOAA and USGS redistribute, they do not compute. NOAA's Science On a Sphere dataset and ArcGIS Hub shapefiles are SVS data processed in ArcGIS Pro. No USGS computation was found 7 8.
- Open source: Stellarium is the complete reference, the Swiss Ephemeris gives the centre only. Stellarium computes every classic curve and writes KML.
swe_sol_eclipse_wherereturns the central point and umbra diameter, not the limits. GitHub engines exist in JavaScript, Python and Rust. Skyfield has no path routine 9 10 11. - No open-source implementation of limb-corrected path edges was found. The searches are described below. Irwin's and Wright's code is not public.
The question. Which published data products describe the path on a world map, in what formats, with what corrections, and what open-source code exists that computes the path from Besselian elements? What steps turn a polynomial set and a time step into central line, limits and umbra outlines as GeoJSON?
NASA path tables and bulletins
The web path table for 2024 April 8 lists rows at 120-second intervals with the columns "Universal Time | Northern Limit (Latitude, Longitude) | Southern Limit | Central Line | M:S Diam. Ratio | Sun Alt | Sun Azm | Path Width | Central Line Durat.", coordinates to 0.1 arcminute, a first row labelled "Limits" giving the extreme points, and the footnote "ΔT = 70.6 seconds". The first rows read
Limits 07 11.6S 158 43.9W 08 27.2S 158 20.1W 07 49.5S 158 31.9W 1.040 0 - 144 02m06.3s
16:40 - - 07 36.2S 152 54.5W 07 38.1S 157 11.2W 1.040 1 82 146 02m08.8s
16:42 05 30.6S 149 47.6W 06 11.7S 146 38.0W 05 50.2S 148 07.8W 1.043 11 81 159 02m27.5s
1. The 2017 table has the same layout with s, and at 18:00 UT gives central line 40°50.3'N 98°18.3'W, ratio 1.030, width 112 km, duration 2m35.7s 12. The tables carry no "Δ" columns. The bulletins' Table 2 lists the shadow contacts P1 to U4 "with and without corrections for ΔT" 13. NASA's explanation page defines the columns: limits and central line "to the nearest tenth of an arc-minute (~185 m at the Equator)", the "topocentric ratio of the apparent diameters of the Moon and Sun", the central path width with "the umbral shadow's major and minor axes", and "the central line duration of the umbral phase" 14. The bulletins add four tables that the web pages do not carry 13 15:
- Table 4, the physical ephemeris: topocentric diameter ratio, obscuration, altitude, azimuth, width, major and minor axes, velocity and duration.
- Table 6, topocentric data and limb corrections to the limits.
- Table 7, limits and central line at 1 degree of longitude, to 0.01 arcminute.
- Table 8, graze-zone coordinates every 30 arcminutes of longitude, with time, path azimuth, Elev Fact and scale factor.
The bulletins' generating constants are for penumbral and for umbral contacts, centre-of-mass lunar positions, no refraction, and "the best value of ΔT available at the time of preparation" 13. The Five Millennium Canon, NASA/TP-2006-214141, and the web path tables generated from it use for penumbral contacts instead, as Besselian elements and the fundamental plane sets out. The acknowledgement page for the Google maps states the elements were "generated for the Moon's center of mass using the VSOP87/ELP2000-82 ephemerides" and that "the accuracy of the northern and southern edges of the eclipse path are limited to approximately 1-2 kilometers due to the lunar limb profile" 2. EclipseWise, Espenak's own site, repeats the two- policy and its rationale: the smaller umbral value "ensures that an eclipse is truly total" and yields "shorter durations and narrower paths for total eclipses compared to IAU calculations" 16.
NASA SVS shapefiles (Ernie Wright)
The 2017 release eclipse2017_shapefiles.zip contains nine shapefiles: penum17 (maximum obscuration contours at 90, 75, 50, 25 per cent and the penumbra edge at 0 per cent), penum17_1m (penumbra outlines each minute 17:00–19:15 UTC for 95 to 75 per cent in 5 per cent steps), upath17 and w_upath17 (path of totality, U.S. high resolution and world), umbra17 and w_umbra17 (umbra shapes every 10 minutes), w_umbra17_1m (umbra each minute 16:49–20:02 UTC), center17 and w_center17. "The projection for all of these shapefiles is WGS84, latitude-longitude, in degrees." A second archive eclipse2017_shapefiles_1s.zip (139 MB) holds umbra17_1s with "6000 umbra shapes at one-second intervals from 17:12 to 18:52 UTC... with roughly 100-meter precision", attributes with the UTC string and seconds past midnight, upath17_1s "calculated at a precision of 250 meters" over 130°W to 76°W, ucenter17_1s as a polyline with one-second points, and durations17_1s at 30-second intervals, "truncated and invalid at the ends" 3. Wright's page says the lunar topography "is from NASA LRO laser altimetry and JAXA Kaguya stereo imaging", positions "from the JPL DE421 ephemeris", and "the lunar limb profile and eclipse calculations are by the visualizer" 3. Kaguya is the SELENE mission. DE421 is named on every SVS product page, while the paper's appendix uses DE440, a difference of under a metre at the Moon, as Wright and Young 2024 sets out.
The 2024 release 2024eclipse_shapefiles.zip contains center.shp (high-resolution polyline, region limited), duration.shp (isocontours of maximum total duration at 30-second intervals), ppath.shp and ppath01.shp (maximum partial obscuration at 5 per cent and 1 per cent), umbra_hi.shp (umbra polygons at 1-second intervals, region limited), umbra_lo.shp (10-second intervals, global), upath_hi.shp and upath_lo.shp. The data were "calculated by visualizer Ernie Wright using elevation information from SRTM, lunar topography from LRO, and planetary positions from the JPL DE421 ephemeris" 4. The combined 2023/2024 map page (SVS 5073) lists the same datasets and is the source NOAA cites 17 7. None of the SVS pages read names a file containing "ducks". The penumbra products are penum17, penum17_1m, ppath and ppath01. The pages were read from Wayback Machine snapshots dated 2025-12-09 (5123), 2025-12-20 (4518), 2026-01-02 (5073), 2025-12-10 (4517), 2026-03-06 (5366) and 2025-12-12 (5219) because svs.gsfc.nasa.gov refused connections at fetch time.
These are the only public products in which the umbra polygons carry the lunar limb profile and Earth terrain. The method, described on the Umbra Shapes page and in Wright and Young 2024, is covered in Path and limits 18 19.
NOAA and USGS
NOAA's Science On a Sphere dataset "Solar Eclipse Paths: 2023 & 2024" states that "shape files were obtained from NASA's Scientific Visualization Studio" (SVS 5073) "and subsequently processed using ArcGIS Pro", with labels added in Photoshop, credited to the NOAA Office of Education and CIRES 7. NOAA's ArcGIS Hub item "2024 Eclipse Shapefiles" is summarised in search results as "NASA Data for the Solar Eclipse on April 8th, 2024. Shapefile includes center, path, duration and more". The page itself rendered only its title when fetched 8. NCEI's contribution was a cloud-climatology map, not a path computation. No USGS eclipse path release was found in the searches "NOAA NCEI OR USGS 2024 total solar eclipse path shapefile GIS data release".
Jubier, GreatAmericanEclipse, Irwin, Photo Ephemeris, Radiant Drift
Xavier Jubier's interactive maps draw "the umbral or antumbral northern and southern limits... in pink while the central line is blue", offer "the Google Earth files (kml, kmz) for each eclipses", and add "special Google Maps showing the grazing zones" 5. The help page lists the full colour code (orange 10-minute maximum lines, green penumbral limits, maximum on the horizon and equal magnitude, yellow maximum at sunrise and sunset, violet 30-minute maximum curves), a tooltip with umbral depth, path width, obscuration, magnitude, size ratio and umbral velocity, and an "LC" column giving the limb correction in seconds, available "only when you are online". It states that "the computations are executed using the standard IAU 1976 solar radius, that is 959.63 arc-seconds at one astronomical unit, and not the true photospheric solar radius that is closer to 959.98 arc-seconds", that refraction is not applied, and that an elevation tool re-evaluates the local circumstances at the terrain height 20. The Solar Eclipse Maestro help describes the limb datasets: Watts corrected by Morrison and Appleby (1981) and Rosselló and Jordi (1991), Kaguya, and LRO, the last two "much more accurate than the Watts even after correction", plotted against the reduced radius "usually used to compute the uncorrected second and third contacts and the umbral or ant-umbral path" and the IAU mean radius 1738.091 km, 21. NASA's own Google maps were built on Jubier's code: "Xavier's assistance in updating and improving these maps has been invaluable" 2.
GreatAmericanEclipse (Michael Zeiler) states that its maps rest on Fred Espenak's Besselian elements adapted through Xavier Jubier's software, "corrected for the precise shape of the Moon's limb as lunar mountains and valleys affect the onset and egress of totality by up to several seconds", and are produced with ArcGIS. The about page does not offer shapefiles for download 6. The search for "greatamericaneclipse.com shapefiles GIS 2024" returned no data page, and the site's /eclipse-data URL returned 404.
John Irwin's besselianelements.com publishes a "true limb" 2024 path whose limits "account for the topographic elevation, both around the limb of the Moon and on the surface of the Earth", drawn for solar radii of 959.90 and 960.00 arcseconds around and using "the most recent determinations of... the Earth's orientation parameters". The limb dataset and formats are not named on the pages read, and the technical-details page shows its parameters as an image 22 23 24.
The Photographer's Ephemeris (Photo Ephemeris) documents a vendor implementation: elements "provided by Fred Espenak and published by NASA", local circumstances and paths after "Jean Meeus, Elements of Solar Eclipses 1951–2200; The Astronomical Almanac 2023", paths at "0.1 degrees in longitude calculated for an observer at sea level", "no correction is made for the lunar limb profile", path accuracy "±1–2 km", and elevation from SRTM3, ASTER GDEM and Google. Its comes from Meeus's table to 2006, USNO deltat.data to 2024, USNO predictions to 2034 and polynomials beyond, with the USNO values overriding NASA's per-eclipse values. For 2017 NASA's 70.3 s was replaced by 68.8373 s 25. Radiant Drift's API returns GeoJSON for the central path, northern and southern limits of totality and of partial eclipse, lines of equal magnitude and a totality polygon, with point spacing from 1° down to 0.025°, and lists open issues at extreme latitudes and the antimeridian. It does not describe its algorithm 26.
Occult and USNO
Occult 4 (David Herald) covers "solar and lunar eclipses, transits of Mercury and Venus" and, per Steve Preston's tutorial, downloads LOLA lunar limb data, offers "Show LOLA high resolution limb" and Kaguya options for graze profiles, references paths to WGS84 with altitude above mean sea level, and exports occultation paths to Google Earth KMZ 27 28. The tutorial does not describe the solar-eclipse global-circumstances output, so what Occult writes for eclipse limits remains an open item. USNO's Solar Eclipse Computer gives local circumstances only, "iteratively computing topocentric positions of the Sun and Moon", with IAU radii of 696,000 km and 1737.4 km and no limb profile 29.
Stellarium
Stellarium's src/core/SolarEclipseComputer.cpp (the class is SolarEclipseComputer, found by searching the repository) computes Besselian elements at run time from its own Sun and Moon positions, with derivatives from -minute differences, and provides generateEclipseMap, which classifies the eclipse by against 0.9972 and , finds P1 to P4 by getJDofContact, computes the greatest-eclipse point, the penumbral and umbral limits by computeNSLimitsOfShadow, the rise/set curves between P1–P2 and P3–P4 at one-minute steps, the maximum-at-horizon curve, the central line and umbral outlines. It writes a PNG map and a KML document with placemarks for greatest eclipse and first and last contact with Earth, and styled LineString and polygon features for the total, annular, hybrid and penumbral limits 9. Its constants are 6378.1366 km, 696,000 km, and the code constant s = 0.272281. The source comments that "durations seem to agree with NASA" with the two- choice 9.
Swiss Ephemeris
swe_sol_eclipse_where returns in geopos[0..1] the "geographic longitude of central line" and latitude, and in attr the fraction of diameter covered, the diameter ratio, the obscuration and the core-shadow diameter in km 10. The implementation, eclipse_where in swecl.c, does not use Besselian elements. It forms the Sun–Moon unit vector , the Moon's distance from the fundamental plane s0 , which is the almanac's and not the almanac's , the axis distance r0 , the umbra and penumbra diameters on the plane d0 and D0 , tests centrality by r0, finds the surface point at , and treats oblateness by dividing the coordinates by and iterating once on the latitude found. Constants: DMOON 3476300.0 m, DSUN 1392000000.0 m (alternatively 1391978489.9 m, "consistent with" the IAU 1976 angular radius), Earth radius 6378140 m. The umbra diameter at the surface is (s/dsmt*(2*drad - dmoon) - dmoon)*cosf1, positive meaning annular 30. There is no function for limits or outlines. A caller must construct them by sampling swe_sol_eclipse_how on a grid.
GitHub implementations
The full repository inventory and its comparison matrix are in GitHub repositories. This section keeps only what each repository does for a path product. The searches were "github besselian elements eclipse path central line umbra limits python", "Stellarium source SolarEclipseComputation", "skyfield solar eclipse path totality Besselian OR umbra github notebook Rhodes", and "eclipse GeoJSON OR KML path totality generator open source github Besselian". They found:
enrique7mc/solar-eclipse-2027(JavaScript,src/eclipse.js): elements from NASA GSFC for 2027 August 2, , , s. It uses a line–ellipsoid quadratic, limits by a sweep envelope perpendicular to the ground-relative motion, outlines at 90 angles and durations by bisection.scripts/check-elements.mjscompares with the NASA path table, "positions agree to about 1 km and durations to 0.1 s" 31.RHerAle/Eclipse-Engine(JavaScript,js/besselian.js, AGPL): elements "fitted to JPL DE440s" indata/eclipses.json, WGS84 flattening, central line at 6-second steps over h, limits with five iterations on ground-relative velocity, outlines at 181 angles to convergence, obscuration grid and contours. Validation is against the project's own Python chain 32.aravpanwar/besselian(Python): , , s for 2027, exact central-line solve, greatest eclipse versus greatest duration 215 km apart, checks against NASA (greatest-eclipse position to Earth radii, duration 382.5 s against 6m23s) 33.SR123/eclipse-2026(JavaScript,eclipse.js): NASA elements with $t_0 = $ 18:00 TDTTerrestrial Time (TT)The uniform time scale of the ephemerides and of the Besselian elements, equal to TAI + 32.184 s. Older eclipse tables call it TDT, TD or Ephemeris Time (ET). Elements are computed in TT and converted to UT1 with ΔT before any Earth rotation is applied., s, Meeus Astronomical Algorithms ch. 54 for the classification, per-location circumstances by contact bisection. It warns of edge sensitivity 34.RyuuNeko1107/umbra-rs(Rust): six crates,umbra-geofor central line and limits, all marked work in progress with precision targets "not published as guarantees until validated against JPL DE" 35.plhery/umbra-eclipse-atlas(TypeScript): elements from the Five Millennium Canon through@astronomy-bundle/solar-eclipse, exports GeoJSON, KML/KMZ, GPX and CSV. It calls itself "a planning aid, not an official prediction service" 36.Frencil/eclipsetracksissue 9: the Cesium app uses NASA surface-track tables and the issue to move to Besselian elements "remains open" 37.- Skyfield: discussion 801 has Brandon Rhodes explaining that the subpoint of the Sun is not the shadow, that a line–ellipsoid intersection "would be needed" and that Skyfield "lacks a built-in routine for calculating eclipse shadow paths". Issue 1078 and PR 1076 add detection and classification of solar eclipses by the lunar-eclipse minimum-angle method, not paths 11 38.
- celestialprogramming.com: JavaScript for generating Besselian polynomial coefficients from DE405 at five times by Gauss–Jordan fit, with , solar radius m and Earth radius m per IAU 2015 Resolution B3, citing Chauvenet, Green, Smart and the 2013 Supplement 39.
- MATLAB: David Eagle's implementation of Meeus's Elements requires the
ECLIPSE.ELSfile sold by Willmann-Bell 40.
No repository found implements limb-profiled limits or a terrain-corrected umbra. The 2027 visualiser, Eclipse-Engine and besselian all state that they use a smooth Moon. besselian notes that NASA's limb corrections "shifting path limits 1-2 km" appear 12 to 18 months before an event 33. This is a negative finding: as of the searches above, no open-source implementation of the limb-corrected path edge exists in Python, JavaScript, Rust or C.
A worked pipeline: polynomials to GeoJSON
The inputs are a set of NASA polynomial elements and a time step . The elements are as cubics in hours from in TDT, the constants and , and the ΔT the table was made with. TDT, TD and TT are one scale, and ET is the pre-1984 name for it.
- Evaluate elements and rates. , per hour. Convert and to radians, so that is in radians per hour 13.
- Shift for . arcseconds, so that longitudes come out in UT while the geometry stays in TT 32.
- Earth constants. Choose (WGS84: ). Compute , , , , , once per time 41.
- Central line. , , . If skip the time. Else , , then , , with 41 9.
- Duration, ratio, width at the central point. , , , , , duration hours, magnitude , ratio , width by Mikhailov's formula 42 9.
- Limits. For each cone, start , , with , . Scan for the two roots of the conditional equation, then iterate , , , , , until changes by less than . Assign north or south by the sign of . Drop points with or 41 42.
- Outline at each time. For from 0 to 360 in 1 to 4 degree steps, iterate as in step 6 to convergence. Where either break the ring (Eclipse-Engine) or substitute the terminator point in that direction (2027 visualiser) 32 31.
- Assemble GeoJSON. Write
LineStringfeatures forcenter,north_limitandsouth_limitwithtimearrays. Write onePolygonper time step forumbrawithproperties.utc. Write aPolygonfor the path formed by the northern limit forward and the southern limit backward, closed at the extreme points from the solution. Split any feature crossing the antimeridian, and near the poles test longitude jumps as well as distance, as Eclipse-Engine does 32. Use the SVS attribute convention of a UTC string and integer seconds past midnight per polygon 3. - Validate. Compare three central-line rows and the "Limits" row against the NASA path table for the eclipse, expecting 1 km and 0.1 s 1 31.
- Label the product. State the values, , ellipsoid, and that the Moon is smooth and the observer at sea level. Keep any limb-corrected product in a separate file.
Sources compared
| Product or code | Curves and formats | Limb | Terrain | Grade |
|---|---|---|---|---|
| NASA path tables 1 | HTML tables, 2-min rows, limits and centre, width, duration | No (1–2 km) | Sea level | primary |
| NASA bulletins 13 | Tables 3–8, graze zones at 30' longitude, Elev Fact | Yes, in Tables 6 and 8 (Watts) | Via Elev Fact | primary |
| SVS 2017 and 2024 3 4 | Shapefiles: umbra 1 s/10 s/1 min/10 min, path, centre, duration, obscuration contours | Yes (LOLA, SLDEM2015) | Yes (SRTM) | primary |
| NOAA SOS and Hub 7 8 | Repackaged SVS shapefiles | As SVS | As SVS | primary |
| Jubier 5 20 | Google Maps, KML/KMZ, grazing-zone maps | Yes (online LC) | Elevation tool | company |
| GreatAmericanEclipse 6 | ArcGIS maps, no data download found | Yes, via Jubier | Not stated | company |
| Irwin 22 | Map images of true-limb limits | Yes | Yes | trade |
| Photo Ephemeris 25 | Paths at 0.1° longitude | No | Sea level, DEM for local | company |
| Stellarium 9 | PNG and KML, all classic curves | No | No | company |
| Swiss Ephemeris 30 | Central point and umbra diameter only | No | Height in _how only |
company |
| 2027 visualiser, Eclipse-Engine, besselian 31 32 33 | In-browser polygons, GeoJSON-ready arrays, CSV/JSON | No | Local only | company / unsourced |
What a developer should do
- Download
eclipse2017_shapefiles_1s.zipand2024eclipse_shapefiles.zipfrom SVS and use them as the ground truth for any limb-corrected product. Compare a smooth-Moon umbra outline againstumbra17_1sat the same second to measure the limb and terrain effect directly 3 4. - Use the NASA path table as the ground truth for the smooth-Moon product and reproduce it to 1 km before adding anything 1.
- Read
SolarEclipseComputer.cppfor the classic curves andsrc/eclipse.jsof the 2027 visualiser for the compact ellipsoid formulation. Read Eclipse-Engine's comments for the antimeridian, pole and convergence pitfalls 9 31 32. - Do not build on the Swiss Ephemeris for global circumstances. It gives the centre only 10.
What this changes
The pipeline gains a validation contract: smooth-Moon output must match NASA tables, and limb-corrected output must be compared against SVS 1-second umbra polygons. It also fixes the product split: NASA-style tables and classic curves from Besselian polynomials on one side, limb-profiled polygons from the lunar DEM on the other.
Open questions
- The contents and attribute schema of NOAA's ArcGIS Hub "2024 Eclipse Shapefiles" item, which rendered only its title 8.
- Whether Occult 4 exports solar-eclipse limits with LOLA limb corrections, and in what format. The tutorial covers occultations only 28.
- The limb dataset, terrain DEM and export formats behind Irwin's true-limb 2024 path, shown only as an image table on the technical page 23.
- Jubier's KML file structure for a specific eclipse (which curves, at what sampling), which requires downloading a KMZ from his site 5.
- The timeanddate map methodology, unreachable at fetch time 43.
- A copy of the SVS 2024
umbra_hi.shpattribute table to confirm the one-second sampling and the time fields match the 2017 convention 4.
References
- 1primary Path of Total Solar Eclipse of 2024 Apr 08 (NASA GSFC eclipse web site, Espenak) Read. Column headers, 120-second rows, Limits row, footnote Delta T = 70.6 s. First rows quoted verbatim in the data-products note.
- 2primary Google Maps and Solar Eclipse Paths, acknowledgment page (NASA GSFC eclipse web site) Read. Maps built on Charlie Ridgway's code with Xavier Jubier; elements for the Moon's centre of mass from VSOP87/ELP2000-82; path-edge accuracy 1-2 km because of the lunar limb.
- 3primary NASA SVS 4518, 2017 Total Solar Eclipse Map and Shapefiles, Ernie Wright Read from the Wayback Machine snapshot of 2025-12-20. Lists the nine 2017 shapefiles and the 1-second set (6000 umbra shapes 17:12-18:52 UTC at ~100 m precision, path at 250 m, centre polyline, durations at 30 s), WGS84 lat-lon projection, LRO/Kaguya limb, DE421.
- 4primary NASA SVS 5123, The 2024 Total Solar Eclipse (map and shapefiles), Ernie Wright and Michala Garrison Read from the Wayback Machine snapshot of 2025-12-09 (svs.gsfc.nasa.gov refused connections). Lists 2024eclipse_shapefiles.zip contents (center, duration 30 s, ppath 5%, ppath01 1%, umbra_hi 1 s, umbra_lo 10 s, upath_hi, upath_lo), and the SRTM, LRO, DE421 inputs.
- 5company Jubier, X., Solar Eclipses - Interactive Google Maps Read via curl (HTTPS refused). Colour conventions for limits and centre line, KML/KMZ downloads per eclipse, grazing-zone maps, Five Millennium Canon database.
- 6company Great American Eclipse, About (Michael Zeiler) Read. Maps from Espenak's Besselian elements through Jubier's software, corrected for the lunar limb by up to several seconds, produced in ArcGIS; no shapefile downloads described.
- 7primary NOAA Science On a Sphere dataset, Solar Eclipse Paths: 2023 & 2024 Read. Shapefiles obtained from NASA SVS 5073 and processed in ArcGIS Pro; obscuration contour lines; credits NOAA Office of Education and CIRES.
- 8primary NOAA ArcGIS Hub, 2024 Eclipse Shapefiles Page rendered only its title when fetched; the search index summary says NASA data with center, path, duration and more. Not read beyond the title.
- 9company Stellarium, src/core/SolarEclipseComputer.cpp (master) Read the source (var/downloads/stellarium_SolarEclipseComputer.cpp). Besselian elements at run time with 6378.1366 km, 696,000 km, k=0.2725076 and s=0.272281; zetaFromQ from ES 2013 eq. 11.81; Newton solve of the limit polynomial; central line, duration, Mikhailov path width, outlines, rise/set by ellipse-circle Newton solve, maximum at rise/set; PNG and KML output. Cites ES 1961, 1992, 2013 and IERS 2003.
- 10company Swiss Ephemeris Programmer's Documentation, eclipse functions (Astrodienst) Read the eclipse sections. Return arrays of swe_sol_eclipse_where, _when_glob, _how, _when_loc; eclipse type flags; attr indices for magnitude, ratio, obscuration and core-shadow diameter.
- 11company skyfielders/python-skyfield discussion 801: Finding lat/lon during an eclipse (Brandon Rhodes) Read. Rhodes explains why the Sun's subpoint is not the shadow, that a line-ellipsoid intersection is needed, and that Skyfield has no shadow-path routine.
- 12primary Path of Total Solar Eclipse of 2017 Aug 21 (NASA GSFC eclipse web site, Espenak) Read. Delta T = 68.4 s; rows at 17:00, 18:00 and 19:00 UT quoted for validation.
- 13primary Espenak, F. and Anderson, J., Total Solar Eclipse of 2001 June 21, NASA/TP-1999-209484 Read the PDF (extracted with pdftotext, var/downloads/TP209484_2001.txt). Gives the polynomial evaluation, Table 2-8 definitions, k values, DE200/LE200, the off-axis duration formula d = D(1-(2a/W)2)1/2, the graze-zone algorithm, Elev Fact, the limb time-correction formula, and narrative umbra speeds.
- 14primary Explanation of Solar Eclipse Predictions (NASA GSFC eclipse web site, Espenak) Read. Polynomial form, path-table column definitions, graze zones, TDT and Delta T usage, smaller k for umbral contacts.
- 15primary Espenak, F. and Anderson, J., Total Solar Eclipse of 2008 August 01, NASA/TP-2007-214149, section 1 Eclipse Predictions Read the HTML. Same table set as 2001 at 3-min intervals; states the Elev Fact as tan(90-A) sin(D); k=0.2725076 penumbral and 0.272281 umbral; Watts limb data corrected after Morrison and Appleby (1981).
- 16company Solar Eclipse Predictions and the Mean Lunar Radius (EclipseWise, Fred Espenak) Read. History of k and the argument for k=0.272281 at all central (interior) contacts, which gives shorter durations and narrower paths than IAU calculations.
- 17primary NASA SVS 5073, The 2023 and 2024 Solar Eclipses: Map and Data, Ernie Wright Read from the Wayback Machine snapshot of 2026-01-02. Combined 2023 annular and 2024 total map with the same data inputs; the source NOAA cites for its shapefiles.
- 18primary NASA SVS 4517, Umbra Shapes, Ernie Wright Read from the Wayback Machine snapshot of 2025-12-10. Describes the limb-profile construction from a rotated DEM point cloud, SRTM observer elevations, the up-to-3 km southeastward shift in 2017, and the red ellipse / white limb / dark grey terrain shapes.
- 19peer-reviewed Wright, E. and Young, C. A., A Raster-oriented Method for Creating Eclipse Maps, The Astronomical Journal 168:163 (2024), doi:10.3847/1538-3881/ad6b23 Abstract read via the Crossref API (IOPscience blocked the fetch). States that ignoring the terrain of both bodies introduces errors of order kilometres in the ground track and seconds in duration and contact times, and that the raster method has been used since December 2016. Full text not read.
- 20company Jubier, X., Solar Eclipse Google Map Help Read via curl. Full curve colour code, tooltip fields (umbral depth, path width, obscuration, magnitude, ratio, umbral velocity), LC limb correction fetched online, IAU 1976 solar radius 959.63 arcsec versus ~959.98 photospheric, no refraction, elevation tool, Delta T extrapolation good to 0.5 s. Last updated July 2, 2017.
- 21company Jubier, X., Solar Eclipse Maestro help: LRO-Kaguya-Watts Lunar Limb Profiles Window Read via curl. Watts corrected by Morrison/Appleby 1981 and Rossello/Jordi 1991; Kaguya and LRO more accurate; reduced radius k2 used for the uncorrected path; IAU mean radius 1738.091 km, k=0.2725076; 0.241 degree Watts angle offset.
- 22trade Besselian Elements (John Irwin), Path of the 2024 April 8th Total Solar Eclipse Read. True-limb limits (orange) versus traditional smooth limits (red), accounting for lunar limb and Earth topography; datasets and formats not named.
- 23trade Besselian Elements (John Irwin), Technical Details of the true-limb Eclipse Path Determination Read. Solar radius 959.95 arcsec, recent Earth orientation parameters; the parameter table is an image and was not readable.
- 24trade Besselian Elements (John Irwin), Eclipse Limits and Centreline are jagged lines Read. Explains that the limb topography and Earth orography make true-limb lines jagged; solar radius 959.95 +/- 0.05 arcsec with lines at 959.90 and 960.00.
- 25company Photo Ephemeris, Technical Note: Solar Eclipse Functionality Read. NASA elements, Meeus Elements of Solar Eclipses and Astronomical Almanac 2023 for paths, 0.1 degree longitude sampling at sea level, no limb correction, +/-1-2 km path accuracy, elevation shift ~500 m per 1000 m, Delta T sources by period.
- 26vendor Radiant Drift API documentation, Eclipse Paths Read. GeoJSON for central path, totality limits, partial limits, lines of equal magnitude and totality polygon; spacing factor to 0.025 degrees; beta issues at high latitude and the antimeridian; no algorithm stated.
- 27company Occult v4 (David Herald), program page at lunar-occultations.com Read via curl (HTTPS failed). Feature list only: solar and lunar eclipses, transits, planetary satellite events.
- 28company Preston, S., Occult v4 Overview (IOTA tutorial PDF, April 2019) Read the PDF (var/downloads/OccultTutorial.txt). LOLA limb download, LOLA high-resolution and Kaguya options for graze profiles, WGS84 path coordinates, KMZ export for occultation paths; does not cover solar-eclipse global circumstances.
- 29primary USNO Solar Eclipse Computer (Astronomical Applications Department) Read. Local circumstances only, by iterating topocentric positions; IAU radii 696,000 km and 1737.4 km; no limb profile; refraction-corrected altitudes.
- 30company Swiss Ephemeris source, swecl.c, function eclipse_where (aloistr/swisseph mirror) Read the source (var/downloads/swecl.c). Vector method: s0, r0, d0, D0, centrality test, oblateness by z-scaling with one iteration, DMOON 3476300 m, DSUN 1392000000 m or 1391978489.9 m, Earth radius 6378140 m; returns the central point and umbra diameter only.
- 31company enrique7mc/solar-eclipse-2027, src/eclipse.js and README Read the README summary and the source (var/downloads/enrique_eclipse.js). NASA elements, f=1/298.257, k2=0.272281, Delta T=71.7 s, mu shift 0.00417807 deg/s, line-ellipsoid quadratic, sweep-envelope limits, 90-point outline, two-circle obscuration formula, bisected central duration; check script agrees with the NASA path table to ~1 km and 0.1 s.
- 32company RHerAle/Eclipse-Engine, js/besselian.js and README (eclipseradar.com, AGPL-3.0) Read the README summary and the source file (var/downloads/rherale_besselian.js). WGS84 flattening, Delta T shift at 1.002738*15 arcsec/s, central line at 6-s steps, limits perpendicular to ground-relative motion with 5 iterations and the 5 km low-latitude remark, outlines at 181 angles to convergence, obscuration grid 640x320x121 and contour refinement to 0.5 km, antimeridian and pole handling. Validation only against the project's own Python chain.
- 33company aravpanwar/besselian, README Read the README summary. k1=0.272488, k2=0.272281, Delta T=76.0 s for 2027, longitude shift Delta T*15/3600 deg (~32 km), exact centreline solve, greatest eclipse versus greatest duration differ by ~215 km and 0.6 s, checks against NASA numbers.
- 34company SR123/eclipse-2026, README and eclipse.js Read the README summary and grepped the source. NASA elements with t0 = 18:00 TDT and Delta T = 71.4 s, Meeus Astronomical Algorithms ch. 54, per-location contacts by bisection, warning about polynomial sensitivity at the path edge.
- 35unsourced RyuuNeko1107/umbra-rs, README Read the README summary. Pure-Rust engine with crates for ephemeris, Besselian elements, central line and limits; all work in progress, precision targets not yet validated.
- 36company plhery/umbra-eclipse-atlas, README Read the README summary. Elements from the Five Millennium Canon via @astronomy-bundle/solar-eclipse; exports GeoJSON, KML/KMZ, GPX and CSV; disclaims official status.
- 37unsourced Frencil/eclipsetracks, issue 9: Utilize Besselian Elements for more accurate everything Read. The Cesium app uses NASA surface-track tables; moving to Besselian elements on a WGS84 ellipsoid is an open enhancement.
- 38unsourced skyfielders/python-skyfield issue 1078: Solar Eclipse calculation routine Read. PR 1076 adds eclipse detection and classification by the lunar-eclipse minimum-angle method; no path computation.
- 39trade celestialprogramming.com, Computing Besselian Element Polynomial Coefficients (Greg Miller) Read. Generates elements from DE405 at five times and fits polynomials by Gauss-Jordan; k=0.2725076, solar radius 6.957e8 m and Earth radius 6.3781e6 m (IAU 2015 B3); cites Chauvenet, Green, Smart and ES 2013. No path code on the page.
- 40trade Eagle, D., A MATLAB Implementation of Elements of Solar Eclipses (MATLAB Central File Exchange, 2019) Read the listing. Implements Meeus's numerical methods; requires the ECLIPSE.ELS data file sold by Willmann-Bell; no formulas on the page.
- 41peer-reviewed Explanatory Supplement to the Astronomical Ephemeris and the American Ephemeris and Nautical Almanac (1961), chapter 9 Eclipses and Transits, section B Solar eclipses fundamental equations and section C predicted data The primary algebra for Besselian elements, the observer in the fundamental frame, the auxiliary elements a' b' c', central line, limits, outline, maximum-eclipse, rise/set and greatest-eclipse curves, with worked examples for 1961 Feb 15. Read the OCR full text on archive.org (djvu text); OCR errors were resolved against the 1992 edition and the Stellarium code.
- 42peer-reviewed Explanatory Supplement to the Astronomical Almanac (1992), chapter 8 Eclipses of the Sun and Moon, by Alan D. Fiala and John A. Bangert Sections 8.353 to 8.3565 and 8.361: the conditional equation with tan^2 f, the flattening iteration in gamma, the Q-scan and 1e-5 tolerance for limits, Mikhailov's path-width formula (8.3553-5), discriminants for contacts, eclipse-map conventions. Read the OCR full text; equation 8.3553-5 is scan-damaged and was reconstructed from Stellarium's transcription.
- 43company timeanddate.com, What Does the Magnitude of an Eclipse Mean? Not read directly; known from a search-index summary that distinguishes magnitude (diameter fraction) from obscuration (area fraction) and states centre-of-mass lunar positions without limb effects. The 2024 map page returned HTTP 403 and its archive copy contained only navigation.