Astrophyzix Flagship Series
LIVE NEW WEBGPU

Exoplanet Detection and Characterization Console

Live transit photometry pipeline with Box Least Squares periodogram, Mandel-Agol limb-darkened transit fitting, Keplerian radial velocity solver, and symplectic N-body orbital stability with MEGNO chaos indicator. Real confirmed systems from Kepler, K2, TESS, and ground-based discoveries. Built on the Astrophyzix Float64 compute core.

JPL DE441
BJD-TDB
FLOAT64
2.0

Overview

EXO-01 is a complete pipeline for exoplanet detection and characterization. It runs the same four core analyses that planetary scientists use to confirm new worlds: photometric transit search, transit modelling, radial velocity orbit recovery, and dynamical stability of multi-planet systems.

The console ships with six confirmed systems spanning the discovery space: TRAPPIST-1 (compact terrestrial chain around an ultra-cool dwarf), Kepler-90 (eight-planet G-type system), HD 209458 (the prototype hot Jupiter), K2-18 (atmospheric biosignature target), TOI-700 (TESS habitable-zone find), and 51 Pegasi (the historic 1995 discovery).

All numerical work runs in Float64 precision. Time stamps follow Barycentric Julian Date in the Barycentric Dynamical Time scale (BJD-TDB). Planetary constants come from JPL DE441. Frames are BCRS aligned with ICRS axes. Heavy kernels dispatch to a Web Worker; if the browser advertises WebGPU and SharedArrayBuffer the periodogram offloads to a WGSL compute shader.

Quick Start

1Open TARGETS. Pick a system. Start with HD 209458 if you want a strong, obvious signal.
2Switch to PHOTOMETRY. The synthetic light curve renders immediately. Press RUN BLS SEARCH and wait for the periodogram to populate.
3Compare the recovered period to the catalog value in the fit panel. The amber line on the phase-folded plot is the Mandel-Agol transit model.
4Open RADIAL VELOCITY. Slide eccentricity and argument of periastron. Watch the curve deform. The detectability flag tells you if K is above the spectrograph noise floor.
5Open STABILITY. Press PROPAGATE. Trails accumulate as the symplectic integrator marches forward. Press MEGNO CHAOS to test whether the system is regular or chaotic.
First-time visitors should run all five steps once with HD 209458 - it produces the cleanest, most pedagogical signal across every panel.

Guided Workflows

Workflow A :: Confirm a Hot Jupiter

Target: HD 209458 b. The first transiting exoplanet ever discovered, and the textbook example of a deep, repeatable signal.

1TARGETS. Select HD 209458. Note the host is a G0V star, 47 pc away.
2PHOTOMETRY. The light curve shows about four deep transits across the simulated baseline (depth around 1.5 percent).
3Press RUN BLS SEARCH. The periodogram should peak with SDE above 30 and a recovered period close to 3.525 days.
4RADIAL VELOCITY. Set eccentricity 0.01. Argument 121 degrees. K reads near 85 m/s, well above the 1 m/s detection floor of modern spectrographs.
5STABILITY. Single-planet system. Energy drift should stay below 1e-9 over 1000 years.

Workflow B :: Habitable-Zone Terrestrial Search

Target: TRAPPIST-1 e. A roughly Earth-sized rocky world in the conservative habitable zone of an ultra-cool dwarf.

1TARGETS. Select TRAPPIST-1. Seven planets are loaded simultaneously.
2PHOTOMETRY. The light curve is busy - multiple overlapping transit signatures from a compact resonant chain.
3RUN BLS SEARCH. The strongest signal usually corresponds to TRAPPIST-1 b at 1.511 days. Subsequent peaks identify the other planets.
4Click INJECT NOISE once. Run BLS again. Notice how the SDE drops but the dominant peaks survive - this is detection robustness in action.
5STABILITY. Reduce step size to 0.01 days for this compact system. PROPAGATE for 1000 years.
6MEGNO CHAOS. Y converging near 2 confirms the chain is regular - consistent with the observed Laplace-resonance protection.

Workflow C :: Multi-Planet Stability Audit

Target: Kepler-90 system. Eight planets is the current tied record alongside our own Solar System.

1TARGETS. Select Kepler-90.
2STABILITY. Set integration span to 5000 years. Step size 0.05 days.
3PROPAGATE. Watch the inner three planets (b, c, i) form a tight cluster at small radii while the outer giants (g, h) trace large arcs.
4MEGNO CHAOS. Y near 2 confirms long-term regularity.
If energy drift exceeds 1e-6 your timestep is too large for the smallest orbital period in the system.

Tab Guide

Targets

System catalog. Click a card to load it. The summary panel shows host star parameters and a per-planet line for each confirmed planet (period and radius). Loading a system synthesizes a fresh light curve, builds the N-body initial state, and resets all derived results.

Photometry

Three stacked plots:

  • Light Curve - flux versus BJD-TDB. Cyan points are individual cadences. Dashed line is the photometric mean.
  • BLS Periodogram - signal detection efficiency versus trial period on a log scale. Amber dashed line marks the highest peak. Legend shows recovered period and SDE.
  • Phase-Folded Transit - the full data folded on the recovered period with the Mandel-Agol model overlaid in amber.

Radial Velocity

The plot shows the Keplerian RV curve in cyan with simulated observations in amber. Y-axis spans plus/minus 1.4 K so the full waveform is always visible.

Eccentricity slider deforms the curve from sinusoidal at e=0 toward a sawtooth at e=0.9. Real exoplanet eccentricities are typically below 0.4 for short-period systems.

Argument omega rotates the curve in phase space. In the absence of transits omega is degenerate with T0 in single-tracer fits.

Stability

Top-down view of orbits in the heliocentric frame. Star is amber. Planets are cyan. Trails accumulate as the integration progresses. The leapfrog DKD symplectic mapping conserves energy to round-off level when the timestep is well chosen.

Stack

Runtime probe of every capability the module can leverage. OK means available. FALLBACK means a graceful CPU or single-thread substitute is active. OFF means the API is unavailable and not used. Memory accounting reflects live Float64 buffers.

Method

Mathematical and algorithmic documentation. Reference for every derived quantity and the literature behind each algorithm.

Controls Reference

ControlTabAction
RUN BLS SEARCHPhotometryCompute Box Least Squares periodogram across 240 trial periods.
INJECT NOISEPhotometryAdd 300 ppm Gaussian noise via Box-Muller.
RESETPhotometryRegenerate the original clean light curve.
Eccentricity eRadial VelocityRange 0 to 0.9. Deforms the Keplerian waveform.
Argument omegaRadial VelocityRange 0 to 360 deg. Phase rotation of periastron.
SOLVE KEPLERIANRadial VelocityRe-solve M = E - e sin E via Newton-Raphson.
PHASE FOLDRadial VelocityRe-render at current parameters.
Integration spanStabilityRange 100 to 10000 years.
Step sizeStabilityRange 0.005 to 0.5 days. Shorter is more accurate.
PROPAGATEStabilityRun leapfrog DKD to the requested span.
MEGNO CHAOSStabilityCompute the Mean Exponential Growth chaos indicator.
HALTStabilityAbort the running integration cleanly.

Reading the Plots

Light Curve

Transits appear as periodic dips. Depth is approximately (Rp/Rs)^2. A 1 percent dip indicates Rp/Rs near 0.10 - characteristic of a Jupiter-sized planet around a Sun-sized star. Earth-Sun analogs produce dips near 100 ppm and require photometric stability beyond typical noise floors.

BLS Periodogram

SDE above 7 is the conventional detection threshold. Above 12 is publication quality. Aliases (harmonics) appear at integer ratios of the true period. A multi-planet system shows multiple peaks at unrelated periods.

Phase-Folded Fit

A clean transit has four contact points: ingress start, ingress end, egress start, egress end. The flat bottom is full transit. Curvature in the bottom indicates limb darkening. Asymmetry can indicate spots, rings, or moons.

Radial Velocity Curve

For a circular orbit (e=0) the curve is a pure sinusoid. As eccentricity grows the curve develops a sharp peak and slow trough. The amber dots represent simulated observations with realistic noise on the order of 0.18 K.

N-Body View

Top-down projection on the orbital plane. The amber dot is the host star at the barycentre. Cyan dots are planets at their current positions. Trails show the recent orbital path. Closed elliptical trails indicate stable orbits; opening or wandering trails indicate energy non-conservation or chaos.

Troubleshooting

BLS periodogram is flat or all noise
The light curve was likely overwhelmed by injected noise. Press RESET to regenerate the clean signal, then run BLS again. For shallow-transit systems like K2-18 multiple noise injections can push the signal below detection.
N-body integration shows large energy drift
The timestep is too large for the smallest orbital period in the system. For TRAPPIST-1 use dt below 0.02 days. For wider systems 0.1 days is usually adequate. Drift below 1e-6 is acceptable; below 1e-9 is excellent.
WebGPU shows FALLBACK in the Stack tab
Browser does not advertise WebGPU yet, the GPU adapter is unavailable, or COOP/COEP headers are not set on the host page. The CPU path is fully functional and produces identical numerical results.
SharedArrayBuffer shows OFF
Cross-origin isolation requires server-set Cross-Origin-Opener-Policy and Cross-Origin-Embedder-Policy headers. Blogger does not set these by default. The module gracefully falls back to standard ArrayBuffer with explicit copies.
Tab switches feel slow
The first render of a canvas at full device pixel ratio includes a one-time setup cost. Subsequent redraws on the same tab use a stable buffer.
MEGNO returns Y above 50
The system is strongly chaotic on the integration timescale, or the timestep is too coarse to resolve close encounters. Reduce step size and re-run.
Recovered period does not match catalog
Check whether you are reading the dominant peak or an alias. Common aliases occur at P, P/2, 2P, and at integer multiples for low-cadence data. The first numbered peak in the periodogram is the highest SDE; secondary peaks are typically aliases or other planets.

Scientific References

The following peer-reviewed sources underpin the algorithms in this console. All implementations follow the original publications, validated against published parameters from the NASA Exoplanet Archive.

  • Mandel and Agol 2002 - Analytic Light Curves for Planetary Transit Searches. ApJ 580 L171. Source for the limb-darkened transit model.
  • Kovacs, Zucker, Mazeh 2002 - A Box-Fitting Algorithm in the Search for Periodic Transits. A&A 391 369. Source for the BLS periodogram.
  • Eastman, Siverd, Gaudi 2010 - Achieving Better Than 1 Minute Accuracy in the Heliocentric and Barycentric Julian Dates. PASP 122 935. Source for the BJD-TDB convention.
  • Wisdom and Holman 1991 - Symplectic Maps for the N-Body Problem. AJ 102 1528. Source for the symplectic integration scheme.
  • Cincotta, Giordano, Simo 2003 - Phase Space Structure of Multidimensional Systems by Means of the MEGNO Indicator. Physica D 182 151. Source for the chaos diagnostic.
  • IAU 2015 Resolution B3 - Recommended Nominal Conversion Constants for Selected Solar and Planetary Properties. Source for stellar and planetary nominal units.
  • JPL DE441 - Park, Folkner, Williams, Boggs 2021. Source for planetary GM constants and ephemeris baseline.
  • NASA Exoplanet Archive - All system parameters cross-validated against the published Confirmed Planets table.

Glossary

BCRSBarycentric Celestial Reference System. Origin at the Solar System barycentre.
BJDBarycentric Julian Date. Time of arrival corrected to the Solar System barycentre.
BLSBox Least Squares. Periodogram for box-shaped transit signals.
DE441JPL planetary ephemeris constants set, current as of 2021.
DKDDrift-Kick-Drift. Second-order symplectic leapfrog ordering.
IAU SOFAInternational Astronomical Union Standards of Fundamental Astronomy library.
KRadial velocity semi-amplitude in m/s.
MEGNOMean Exponential Growth of Nearby Orbits. Y near 2 indicates regular motion; Y growing without bound indicates chaos.
ppmParts per million. Standard unit for transit depth and photometric noise.
RVRadial velocity. Doppler shift of stellar spectral lines along the line of sight.
SDESignal Detection Efficiency. Normalized BLS power.
TDBBarycentric Dynamical Time. The independent variable of the JPL ephemeris.
TTTerrestrial Time. Time scale for geocentric ephemerides.
TTVTransit Timing Variations. Departures from strict periodicity caused by mutual gravitational interactions.
WGSLWebGPU Shading Language. Source language for compute kernels.
FLUX vs BJD-TDB STREAMING
SDE vs PERIOD (DAYS) IDLE
PHASE-FOLDED FLUX
RV (M/S) vs JD
0.000
90deg
ORBITAL CONFIGURATION (TOP DOWN) READY
1000yr
0.05d

All numerical results carry a provenance hash recording the integrator family, time scale, ephemeris constants, and parameter set used to produce them. Manifest is persisted to IndexedDB for cross-session reproducibility.

  • Constants: JPL DE441, IAU 2015 Resolution B3
  • Time: BJD-TDB via IAU SOFA TT/TDB conversion
  • Frame: BCRS, J2000.0 mean equator and equinox
  • Integrator: Dormand-Prince 5(4) for fitting, Wisdom-Holman symplectic for stability
  • Validation: cross-checked against NASA Exoplanet Archive published parameters

Box Least Squares Periodogram

For each trial period P in a logarithmic grid, the light curve is folded modulo P and a box-shaped transit template of duration q*P is convolved through the folded series. The signal detection efficiency is SDE = (max - mean) / sigma evaluated across the period grid. Implementation follows Kovacs, Zucker, and Mazeh 2002.

Mandel-Agol Transit Model

Analytic flux during a transit assuming uniform or quadratically limb-darkened source. Inputs: planet-to-star radius ratio k, normalized impact parameter b, scaled semi-major axis a/Rs, inclination i, and quadratic limb darkening coefficients u1, u2. The model reproduces the four contact points, ingress and egress curvature, and the central depth without numerical integration.

Keplerian Radial Velocity

The reflex motion of the host star is RV(t) = K * [cos(omega + nu) + e * cos(omega)] + gamma where nu is the true anomaly obtained from Kepler's equation M = E - e * sin(E) solved by Newton-Raphson iteration to a tolerance of 1e-12. The semi-amplitude relates to planet mass via K = (2 * pi * G / P)^(1/3) * Mp * sin(i) / (Ms + Mp)^(2/3) / sqrt(1 - e^2).

Symplectic N-Body Stability

Multi-planet stability is evaluated using a Wisdom-Holman second-order symplectic mapping with Jacobi coordinates. Total energy and angular momentum are tracked as conservation diagnostics; a relative drift exceeding 1e-8 is flagged as numerical breakdown rather than physical instability. For chaos diagnosis the Mean Exponential Growth of Nearby Orbits indicator MEGNO is computed alongside the orbit; values converging to 2 indicate quasi-periodic motion, divergent values indicate chaos.

Time Scales and Frames

Photometric time stamps are reported in Barycentric Julian Date in the Barycentric Dynamical Time scale (BJD-TDB) following the recommendation of Eastman, Siverd, and Gaudi 2010. TT to TDB conversion uses the IAU SOFA series expansion. All position vectors are expressed in the Barycentric Celestial Reference System aligned with ICRS axes.

Compute Pipeline

Heavy kernels (BLS grid search, Mandel-Agol model evaluation across parameter grids, symplectic stepping for long integrations) dispatch to a Web Worker when available. Where the runtime advertises WebGPU and SharedArrayBuffer, the BLS grid is offloaded to a WGSL compute shader operating on Float64-emulated buffers. State vectors are held in Float64Array views over a SharedArrayBuffer to enable zero-copy hand-off between main thread, worker, and GPU staging buffers.

ASTROPHYZIX :: EXO-01 FLOAT64 :: BJD-TDB :: DE441
Copyright (c) 2026 Astrophyzix.org. All rights reserved.
Redistribution, mirroring, scraping, or republication of this module, its source code, embedded datasets, scientific methodology, or any derivative thereof is not allowed without the express written consent of Astrophyzix.org.