Automate
Batch mode
Evaluate many configurations from the command line with the same GPU integrator as the interface.
npm run batch drives the single-file build of LightCurve in a headless Chrome or Edge (it builds it when missing) and writes one CSV row per case.
npm run batch -- scripts/examples/cases.csv -o results.csvnpm run batch -- cases.json --sweep geometry.phase=-150:150:10 --sweep geometry.rangeKm=550,1200A JSON array of objects, or a CSV whose columns are field paths. Every field is optional and merged onto the defaults of the interface.
| Field | Example |
|---|---|
date |
2026-10-05T21:00:00Z |
preset |
geo, starlink-v15, starlink-v2, eo, cubesat, hubble, iss, tiangong, falcon9-s2, sl16, ariane5-esca, centaur, sphere |
sensorSystem |
rasa11-qhy600, t500-stxl6303… |
tle |
Two- or three-line text |
station.lat, station.lon, station.altM, station.k |
Site |
geometry.mode, geometry.phase, geometry.tilt, geometry.az, geometry.el, geometry.rangeKm |
Geometry |
materials.bus.albedo, attitude.yaw… |
Any field of the state |
preset,date,station.lat,station.lon,station.altM,geometry.mode,geometry.az,geometry.el,geometry.rangeKm,materials.bus.albedogeo,2026-10-05T21:00:00Z,43.9317,5.7122,650,azel,180,38,37500,0.22geo,2026-10-05T21:00:00Z,43.9317,5.7122,650,azel,180,38,37500,0.5starlink-v15,2026-10-05T18:40:00Z,43.9317,5.7122,650,phase,,,700,Options
Section titled “Options”| Option | Meaning |
|---|---|
-o, --out FILE |
Output CSV (default: standard output) |
--sweep PATH=A:B:STEP or PATH=v1,v2,… |
Expand every case over these values (repeatable) |
--chrome PATH |
Browser executable (or the CHROME_PATH variable) |
--resolution N |
Sensor-image resolution (default 320 px) |
Output columns
Section titled “Output columns”Observed and exo-atmospheric magnitudes, magnitude at 1,000 km, extinction and k, signed phase, range, azimuth, true and apparent elevations, altitude, airmass, Sun elevation, sunlit fraction, Moon elevation, sky background, sensor system, SNR, limiting magnitude, brightest-pixel electrons and saturation, A·σ, flux breakdown, observability status, and an error column when a case fails.