Scientific lunar calculator

The scientific lunar calculator delivers ICRS state vectors, phase, libration and stellar occultations through an ELP-2000/82B + VSOP87D + JPL DE440 fallback pipeline, IAU 2006 frames + IAU 2000A nutation and selectable refraction (Bennett, Saemundsson or Mendes-Pavlis). Every output ships with a GUM/JCGM 100:2008 uncertainty budget, JCGM 101 Monte Carlo propagation, CCSDS 502.0-B-3 OEM export, a parameter sandbox, a libration heatmap, a SHA-256 reproducibility hash and an APA bibliography with DOI - ready to cite in a paper.

More sections will be translated soon. Check the methodology page for full English documentation.

DE440 NPB IAU 2006 IAU 2000A nutation VSOP87D Uncertainty RSS IERS Bulletin A Besselian eclipse Galactic aberration Lense-Thirring GR Lunar libration physical
View methodology and specifications (English) EN Open methodology, IAU/IERS-compliant, citable for academic use.
Foto: Lua e Terra vistas da nave Orion (Artemis I). Crédito NASA / Xinhua.
How to read the badges: computed value computed from your data constant / metadata constant or methodology metadata demonstration demonstrative computation / synthetic data

Scientific lunar dashboardcomputed

Full Moon

Quarta-feira, 29 de julho de 2026 às 12:00 (America/New_York)

Observador: 39,9625°, -83,0061° · alt 0m · topocentric

Iluminação
99,97%
k = (1+cos i)/2
Idade lunar
14,82d
desde Lua Nova
Distância
405.024,118 km
63,50 R⊕ · 116,56 ∅L
Diâmetro aparente
29,904'
arcmin
Magnitude
-12,57
brilho aparente
Tempo da luz
1,351s
Lua → Terra
Lunação Brown
#1281
ciclo astronômico
Libração óptica
-3,36° / +2,64°
total 4,27°
Ângulo do limbo brilhante
147,1°
posição do limbo
Posição orbital
86%
perigeu → apogeu
Live astronomical telemetryTT16:01:08.184006LTC+57.8µsΔT75.07sJD2461251.16666
Impact: Primary (observable position) Secondary (pro-grade) Sub-arcsec (GR) Informational

Layer 1 Posição e eventos observáveis

Coordenadas equatoriais aparentes (RA/Dec), horizontais topocêntricas (Az/Alt), eventos diários (nascer, trânsito, pôr), fração iluminada, ângulo de fase.

Equatorial and topocentric positioncomputed

Equatorial geocêntrica (J2000)

RA
20:40:39 (310,16437°)
Dec
-20:25:06.42 (-20,41845°)
Longitude eclíptica λ
307,21686°
Latitude eclíptica β
-2,01851°

Topocêntrica (do observador)

Altitude geométrica
-60,960°
Altitude aparente
-60,960°
Azimute
303,878°
Hour angle
154,150°
Refração atmosférica
0,00000°

Sol agora (referência)

RA Sol
08:35:47
Dec Sol
+18:37:57.33
Longitude eclíptica
126,55809°
Distância Sol
1,015235 AU

Correções aparentes

Nutação Δψ (longitude)
9,523"
Nutação Δε (obliquidade)
7,826"
Aberração anual longitude
20,424" (Full)
Constante de aberração anual k
20,49552" (Meeus 1998 cap 23)
Aberração diurna máxima na latitude do observador
0,24527" (Meeus 1998 seção 23.3, k_d = 0,3200 cos(lat))
Obliquidade verdadeira
23,43800°

Local events and timecomputed

Lua local

Nascer
21:09:30
Trânsito
01:23:11
Pôr
06:12:58

Sol local

Nascer
06:28:04
Trânsito
13:38:31
Pôr
20:48:58

Escalas de tempo

JD UTC
2.461.251,16666
JD TT
2.461.251,16746
ΔT canônico (s)
75,075 (TT−UT1, cadeia IERS)
ΔT Espenak-Meeus (s)
75,075 (estimativa polinomial)
UT1−UTC (s)
-0,006

Sidereal time

Local Sidereal Time
06:57:15
LST graus
104,3146°
UTC ISO
2026-07-29T15:59:59Z
Local ISO
2026-07-29T11:59:59-04:00

Earth orientation parameters (EOP)

UT1−UTC
-0.006019 s
Polar Motion x_p, y_p
não fornecido (sem correção)
Ephemeris
de440

UT1-UTC comes from the engine; polar motion uses this form fields when filled.

Selected time scales

JD UTC
2.461.251,166655

TT-TDB model: FB + Irwin-Fukushima · IAU 2000 Resolution B1.7 constants. TCL declarative (Lunar Coordinate Time, IAU 2018 Resolution B2).

Station displacement (IERS 2010)[ref]

Solid Earth tide
✓ iers2010_step1_step2 (79,20 mm vertical computed)
Ocean loading
✓ fes2014b (0,85 mm vertical computed) FES2014b parametric stub (M2 only). BLQ-per-station bundle pending for real-world accuracy.
Pole tide
✓ on (0,00 mm vertical computed) xp/yp nao fornecidos: calculado com 0,0 (sem deslocamento)
Ocean pole tide
✓ on (2,00 mm vertical declared (stub)) Desai 2002: sub-modelo nao implementado em StationDisplacement; magnitude tipica declarada (stub).
Atm pressure loading
off
Hydrological loading
off

Total computed: 82,05 mm vertical, 45,04 mm horizontal

Magnitudes COMPUTED by StationDisplacement.php (IERS Conv 2010 sec. 7) from current lat/lon, Moon/Sun positions and instant. Ocean pole tide stays declarative (sub-model not implemented); ocean/hydrological loading use parametric stubs (per-station BLQ in future versions).

Observability filterscomputed

Filter status

Elevation
PASS
Airmass
FAIL
Solar elongation
PASS
Local hour angle
PASS
Daylight
PASS
Magnitude
PASS

Target fails at least 1 filter.

Evaluated values

Altitude (cutoff)
-60,960° ≥ -90,0°
Airmass (Pickering)
≤ 38,0
Solar elongation
177,877° ∈ [0°, 180°]
|HA| local
154,150° ≤ 180°
Sun altitude
59,93°
Magnitude
-12,57 ≤ 99,0

Filters do not modify the ephemeris calculation; they report pass/fail per axis.

Observational ephemeris table output format

Time resolution
seconds
Extended precision
OFF
CSV-friendly
OFF

Equivalent to TIME_DIGITS, EXTRA_PREC and CSV_FORMAT in the standard observational table.

Geometry, photometry and orbitcomputed

Fase e fotometria

Elongação
177,877°
Ângulo de fase i
2,118°
Fração sinódica
0,50183
Bright limb angle
147,047°
Ângulo paraláctico
42,769°

Distâncias

Geocêntrica
399.461,7277572 km
Topocêntrica
405.024,118 km
Em raios terrestres
63,5019 R⊕
Paralaxe horizontal
0,91487°

Órbita anomalística

Posição (% perigeu→apogeu)
85,58%
Anomalia média M
225,973°
Distância ao perigeu
42.961,720 km
Distância ao apogeu
7.238,280 km
Próx. do perigeu
14,42%
Próx. do apogeu
85,58%
Posição
Toward_perigee
Tendência orbital
approaching_perigee
Candidata a superlua
não
Perigeu (ref.)
356.500,000 km
Apogeu (ref.)
406.700,000 km

Orientação do disco

Colongitude
270,659°
Libração lon (Meeus)
-3,714°
Libração lat (Meeus)
-1,791°
Subsolar lon
0,659°
Subsolar lat
2,019°

Tracking rates

interval seconds
60,0000
dra deg per min
0,0085
ddec deg per min
0,0029
dalt deg per min
-0,1499
daz deg per min
0,3425
dra arcsec per sec
0,5127
ddec arcsec per sec
0,1721
dalt arcsec per sec
-8,9929
daz arcsec per sec
20,5471

Marés (aproximação)

Coeficiente
100 / 100
Regime
syzygy

Layer 2 Quantidades estendidas

Calendário de efemérides 30 dias, velocidades orbitais, equation of time, local apparent sidereal time, seletores de modelo (nutação IAU 1980/2000A, precessão IAU 2006, refração Bennett/Saemundsson/Mendes-Pavlis).

Extended quantities (DE440)computed

Hour angle (HA)

HA decimal
154,1502°
HA sexagesimal
+10h 16m 36.05s
HA em horas
10,27668 h
LST (referência)
104,3146°

Ângulo horário do astro relativo ao meridiano local. HA = LST − RA.

Sub-Earth selenographic point

Lon (selenográfica)
-179,3412°
Lat (selenográfica)
1,0093°

Lugar da superfície lunar diretamente abaixo da Terra (visível no centro do disco).

Sub-solar selenographic point

Lon (selenográfica)
0,6588°
Lat (selenográfica)
2,0185°

Lugar onde o Sol está no zênite lunar (centro do hemisfério iluminado).

Selenographic colongitude

Colongitude
270,6588°

Longitude selenográfica do terminator (90° = lua cheia).

Libração óptica (extendida)

Lon (l)
-3,7138°
Lat (b)
-1,7908°
Total (√(l²+b²))
4,1230°

Oscilação geométrica permitindo ver mais da Lua que 50% da superfície.

Magnitude visual V

V (Allen 1976)
-12,569
Δ (geocêntrica)
0,002670 AU
r (heliocêntrica)
1,015235 AU

Magnitude aparente Allen 1976. Lua cheia típica V = −12.7.

Air mass X

X (Pickering 2002)
- (abaixo do horizonte)
Altitude aparente
-60,960°

Massa de ar atmosférica. X=1 zênite, X=2 alt 30°, X=10+ horizonte.

Coordenadas heliocêntricas

Lon heliocêntrica
0,6588°
Lat heliocêntrica
-2,0185°

Posição da Lua centrada no Sol (referencial baricêntrico aprox).

Constelação atual

Constelação
Capricornus
RA
310,1644°
Dec
-20,4185°

Constelação IAU 1930 onde a Lua se encontra na esfera celeste.

Moon-Sun angular separation

Elongação (graus)
177,8767°
Elongação (horas)
11,8584 h

Ângulo Sun-Earth-Moon. 0=conjunção (lua nova), 180=oposição (lua cheia).

Bright limb PA + Parallactic angle

Bright limb PA
147,047°
Parallactic angle
42,769°

PA do limbo iluminado (ponta do crescente) e ângulo paraláctico observador→pólo.

30-day ephemeris table

Export CSV

Daily geocentric position at 00:00 UTC. Use the CSV export for offline analysis.

Date UTCJD UTCRADecDistance (km)Phase (%)Ang. diam. (')v (km/s)
2026-07-290.00000301.8562-22.9562401,150.399.650.8940.0000
2026-07-300.00000314.2448-18.9902398,549.499.850.8990.0000
2026-07-310.00000326.1626-14.1715395,585.798.110.9060.0000
2026-08-010.00000337.7237-8.7070392,341.894.400.9140.0000
2026-08-020.00000349.1170-2.8110388,871.788.780.9220.0000
2026-08-030.000000.58273.2953385,214.181.370.9310.0000
2026-08-040.0000012.39649.3729381,412.372.400.9400.0000
2026-08-050.0000024.851515.1489377,538.262.170.9500.0000
2026-08-060.0000038.224720.2993373,713.951.110.9590.0000
2026-08-070.0000052.705324.4420370,125.839.750.9690.0000
2026-08-080.0000068.281527.1649367,022.628.710.9770.0000
2026-08-090.0000084.635528.1077364,695.218.670.9830.0000
2026-08-100.00000101.168627.0841363,435.710.310.9860.0000
2026-08-110.00000117.218724.1697363,482.14.200.9860.0000
2026-08-120.00000132.329219.6841364,962.30.750.9820.0000
2026-08-130.00000146.361514.0826367,854.10.100.9750.0000
2026-08-140.00000159.43077.8398371,974.92.140.9640.0000
2026-08-150.00000171.78411.3775377,003.86.570.9510.0000
2026-08-160.00000183.7090-4.9597382,529.112.960.9370.0000
2026-08-170.00000195.4830-10.8993388,105.920.840.9240.0000
2026-08-180.00000207.3486-16.2226393,310.229.720.9110.0000
2026-08-190.00000219.4954-20.7455397,780.239.190.9010.0000
2026-08-200.00000232.0385-24.3053401,243.348.880.8930.0000
2026-08-210.00000244.9960-26.7581403,528.858.460.8880.0000
2026-08-220.00000258.2753-27.9887404,569.167.650.8860.0000
2026-08-230.00000271.6880-27.9289404,393.576.190.8860.0000
2026-08-240.00000285.0008-26.5739403,115.083.800.8890.0000
2026-08-250.00000298.0066-23.9880400,912.290.240.8940.0000
2026-08-260.00000310.5829-20.2963398,007.595.250.9010.0000
2026-08-270.00000322.7155-15.6682394,641.798.560.9080.0000

Kinematicscomputed

Velocidade orbital

0,9792 km/s

Velocidade orbital (km/h)

3.525,0 km/h

Light travel time

1,3325 s

Equation of timecomputed

EoT (minutos)

-6,4967 min

EoT (segundos)

-389,80 s

Significado

Sundial offset = -EoT. Diferença entre tempo solar aparente e médio.

Sidereal timecomputed

Local Apparent Sidereal Time (LAST)

06:57:15 (104,3146°)

Modelos ativosconstant / metadata

Configuração científica do snapshot

AspectoModelo
EngineOC Scientific Lunar Engine v2.0.0
Ephemerisauto
Apparent / geometricapparent
Nutationiau2000a
Precessioniau2006
Aberrationannual_diurnal
Refractionbennett
Frameicrs
Light-timeon
State vector (with_velocity)on
DE440 compareon

Layer 3 Dinâmica orbital e predição

Vetor de estado ICRS (posição + velocidade J2000), elementos Besselianos de eclipse, ocultações estelares previstas, heatmap mensal de libração, cross-check ephemerides DE440.

State vector ICRS (geocêntrico)computed

Posição (km) e velocidade (km/s) no frame inercial ICRS/J2000.0. Para integração orbital, comparação com SPICE/SkyField, ou propagação Cowell.

Position X

239.407,525 km

Position Y

-287.511,496 km

Position Z

-139.967,290 km

Velocity X

0,771382 km/s

Velocity Y

0,528985 km/s

Velocity Z

0,321112 km/s

Próximo eclipse (elementos Besselianos, Meeus Cap. 54)computed

Predição precisa do eclipse mais próximo do instante consultado, baseada em elementos Besselianos no instante de máximo (greatest eclipse). γ é a distância mínima do eixo da sombra ao centro da Terra (em raios terrestres). Subpoint: ponto onde o eclipse é máximo na superfície terrestre.

Tipo

Total
Solar · total

Magnitude

1,0417
central=(L1−L2)/(L1+L2)

γ (gamma)

0,8978 R⊕
distância mínima eixo-Terra

Instante de máximo (UTC)

2026-08-12T17:46:14Z
+14,07 d do instante consultado

Duração central

2m 20s
no centro da trilha

Subpoint (lat / lon)

65,150° / -25,180°
onde o eclipse é máximo

L1 / L2

L1=0,5372 · L2=-0,0089
raios penumbra/umbra

Total solar eclipse: umbra cone reaches Earth surface (mag>1).

Comparação contra JPL DE440computed

Diferença posicional entre OcseLite (ELP-2000/82B) e a efeméride numérica JPL DE440 (Park et al. 2021). Para validar o erro absoluto contra a referência canônica.

lite ra deg

309,7725

lite dec deg

-20,5139

lite distance km

399.461,7200

de440 ra deg

309,7785

de440 dec deg

-20,5125

de440 distance km

399.461,7200

delta ra arcsec

-21,6126

delta dec arcsec

-5,3354

delta distance km

0,0000

delta total arcsec

22,2615

envelope arcsec

60,0000

Lunar occultations (next 30 days)computed

Lunar occultations (next 30 days)

Stars to Vmag 5.0 from the Hipparcos catalogue.

  1. HIP 78265Vmag 2.8925.4 min50.1%limb -0.01 km vs mean (selenographic -79.3/52.4, LOLA profile)northern graze line near lat 3.4, lon 49.2 (southern near -28.8, 43.1)
  2. HIP 94643Vmag 4.8615.9 min86.1%limb -1.23 km vs mean (selenographic 69.4/100.3, LOLA profile)northern graze line near lat -49.5, lon -156.0 (southern near -72.5, -34.7)
  3. HIP 96465Vmag 4.5928.7 min88.3%limb -2.10 km vs mean (selenographic 57.6/94.6, LOLA profile)northern graze line near lat -7.4, lon 52.6 (southern near -38.3, 60.8)
  4. HIP 105515Vmag 4.2862.7 min98.5%limb -2.10 km vs mean (selenographic 39.9/87.2, LOLA profile)northern graze line near lat 16.9, lon 29.2 (southern near -14.3, 42.1)

Immersion (UTC) - Duration - Moon phase

Catalogue: Hipparcos. Topocentric for the coordinates you supplied, with contacts refined against the real lunar limb. Star positions are propagated by proper motion from the catalogue epoch and precessed to date. Each event states the geometry it used.

Monthly libration heatmapcomputed

Monthly libration

Longitude and latitude over 28 days

DayLon (deg)Lat (deg)
D1+3.08+6.64
D2+4.64+6.27
D3+5.97+5.56
D4+6.98+4.56
D5+7.64+3.32
D6+7.90+1.90
D7+7.75+0.38
D8+7.20-1.17
D9+6.27-2.64
D10+5.02-3.98
D11+3.51-5.11
D12+1.82-5.97
D13+0.04-6.51
D14-1.75-6.70
D15-3.45-6.54
D16-4.96-6.03
D17-6.22-5.20
D18-7.16-4.09
D19-7.73-2.77
D20-7.90-1.30
D21-7.66+0.23
D22-7.02+1.76
D23-6.02+3.19
D24-4.70+4.46
D25-3.15+5.48
D26-1.43+6.22
D27+0.37+6.62
D28+2.14+6.68

Layer 4 Metrologia e incerteza

Orçamento de erro RSS, GUM JCGM 100, matriz de covariância 6×6 do state vector (estimativa DE440-class), propagação Monte Carlo N=10⁴ (JCGM 101).

Uncertainty budget (RSS 1σ)computed

Erro combinado da posição lunar somando em quadratura as incertezas dos modelos de efeméride, nutação, precessão, aberração e movimento polar. RSS total na ordem de poucos arcsec.

Efeméride

5,0000

Nutação

0,0010

Precessão

0,0500

Frame bias

0,0250

Aberração

0,0005

Paralaxe

0,1000

Refração

5,0000

Movimento polar

0,3000

ΔT

0,5000

RSS total

7,0960

Distância

50,0000 km

Uncertainty budget (GUM)computed

Uncertainty budget (GUM)

Per JCGM 100:2008, with Type A and Type B inputs

u_c2.8868e-1
U (k=2, ~95%)5.7735e-1
nu_eff (Welch-Satterthwaite)32222788046928416.0
InputTypeu(x)%
jd_ttB1.000e-90.0
lunar_dist_radialB5.774e-40.0
eop_polar_motionA5.000e-50.0
ut1_minus_utcB2.500e-40.0
refraction_modelB2.887e-1100.0
observer_positionB5.774e-40.0
Lense-Thirring nodal rate0.0010 mas/yr

Allan deviation of TT-TDB residuals (Riley NIST SP 1065)

tau (s)sigma_y(tau)
86,4001.4341e-5
172,8002.8649e-5
345,6005.7154e-5
691,2001.1365e-4
1,382,4002.2083e-4
2,764,8004.1904e-4
5,529,6006.9702e-4
Download CCSDS OEM file

Sensitivity coefficients c_i = partial f / partial X_i computed under linear propagation (GUM eq. 13). Per-quantity numerical Jacobian via central finite differences scheduled for next release; Monte Carlo cross-validation per JCGM 101:2008 Annex C is available via the API endpoint.

Covariance matrix (6×6 state vector)demonstration

State vector 6×6 covariance

Estimative (DE440-class, Park et al. 2021); JPL DE441 covariance not bundled.
r_xr_yr_zv_xv_yv_z
r_x2.250e-102.494e-111.871e-11-3.375e-124.050e-129.000e-13
r_y2.494e-114.320e-103.024e-115.612e-12-3.741e-122.494e-12
r_z1.871e-113.024e-114.320e-101.559e-123.118e-12-2.494e-12
v_x-3.375e-125.612e-121.559e-122.250e-124.500e-131.440e-13
v_y4.050e-12-3.741e-123.118e-124.500e-132.250e-122.160e-13
v_z9.000e-132.494e-12-2.494e-121.440e-132.160e-131.440e-12
σ position (cm)
(1.50, 2.08, 2.08)
σ velocity (mm/s)
(1.500, 1.500, 1.200)
Condition number
3.51e+2
Plane-of-sky 1σ ellipse
SMAA=0.010 mas / SMIA=0.009 mas

Estimative matrix based on documented DE440 accuracy (Park et al. 2021). JPL does not distribute the actual DE441 covariance; values shown are representative, not calibrated.

Monte Carlo orbital (10,000 samples)demonstration

Monte Carlo orbital (N=10000, JCGM 101)

Box-Muller + Cholesky sampling from the 6×6 covariance.
Percentile|Δr| (cm)|Δθ| (μas)
1%0.5973.08
Median 50%2.88514.90
Mean3.01715.58
Std dev1.3196.81
99%6.54633.80
Maximum9.08546.91
|Δr| (cm): min 0.09, max 9.08

Samples from the 6D Gaussian N(0, P) projected to position magnitude |Δr| and equivalent angle |Δθ| at sight-line range (399462 km). Fixed seed for reproducibility.

Station displacement (IERS 2010)computed

Station displacement (IERS 2010 §7)

Geophysical model applied: solid-earth tide + pole tide + parametric ocean loading + atmospheric IB + hydrological seasonal
⚙ Geophysical controls
Active components
ContributionUp (mm)North (mm)East (mm)
Solid Earth tide-79.20-36.11+23.93
Pole tide-9.87-0.48-0.09
Atmospheric loading (IB)+0.00+0.00+0.00
Hydrological seasonal+1.12+0.00+0.00
Ocean loading (FES stub)-0.85-0.86+0.86
Total ENU-88.81-37.45+24.70

Applied parameters: lat=39.9625°, lon=-83.0061°, h=0 m, P=1013.25 hPa, xp=50 mas, yp=300 mas.

IERS Conv. 2010 §7 models applied: (1) solid-earth tide step-1 with Love numbers h2=0.6078 / l2=0.0847, summed Sun+Moon; (2) pole tide via x_p / y_p inputs; (3) atmospheric IB -0.35 mm/hPa; (4) hydrological seasonal stub ±2 mm sinusoidal; (5) ocean loading FES2014b parametric (M2 dominant). For real <1 mm accuracy at coastal stations, BLQ-file per-station is required.

Academic citation (Zenodo DOI)constant / metadata

Academic citation via DOI (Zenodo)

Deterministic snapshot - SHA-256 hash 1cad8eb300ee

This snapshot is deterministic (the SHA-256 hash uniquely identifies inputs+model). To register it as a permanent Zenodo DOI:

View Zenodo metadata (preview)
{
    "metadata": {
        "upload_type": "dataset",
        "title": "Lunar ephemeris snapshot 1cad8eb300ee - 2026-07-29T16:00:00+00:00 (engine=auto)",
        "description": "<p>Deterministic lunar ephemeris snapshot computed by the OCalendario scientific lunar calculator.</p>\n<dl>\n<dt>Epoch (UTC)</dt><dd>2026-07-29T16:00:00+00:00</dd>\n<dt>Observer</dt><dd>lat 39.9625 deg, lon -83.0061 deg, alt 0 m</dd>\n<dt>Engine</dt><dd>auto</dd>\n<dt>Reproducibility hash (SHA-256)</dt><dd><code>1cad8eb300ee2cd2503010e26675fc5755bc84397a453ec5a06aa3352b27739a</code></dd>\n</dl>\n<p>The deposited file contains the full JSON snapshot of the engine output: ICRS state vector, apparent/topocentric RA/Dec, horizontal coordinates, sub-observer/sub-solar points, phase geometry, GUM uncertainty budget, Monte Carlo summary, post-Newtonian decomposition, light-time iteration trace, and metadata.</p>\n<p>To reproduce: load the snapshot JSON into the import widget at the calculator page.</p>\n<p>Citation: see APA bibliography exported alongside this dataset.</p>",
        "creators": [
            {
                "name": "OCalendario Equipe",
                "affiliation": "ocalendario.com.br"
            }
        ],
        "access_right": "open",
        "license": "cc-by-sa-4.0",
        "keywords": [
            "lunar ephemeris",
            "DE440",
            "JPL Horizons",
            "reproducibility",
            "ICRS",
            "IAU 2006",
            "GUM JCGM 100",
            "astrometry"
        ],
        "related_identifiers": [
            {
                "identifier": "https://www.ocalendario.com.br/scientific-lunar-calculator/methodology",
                "relation": "isDocumentedBy"
            },
            {
                "identifier": "doi:10.3847/1538-3881/abd414",
                "relation": "references"
            }
        ],
        "communities": [
            {
                "identifier": "lunar-ephemeris"
            }
        ],
        "subjects": [
            {
                "term": "Lunar position",
                "identifier": "https://astrothesaurus.org/uat/955"
            },
            {
                "term": "Ephemerides",
                "identifier": "https://astrothesaurus.org/uat/464"
            }
        ],
        "notes": "Snapshot generated by ocalendario.com.br scientific lunar calculator. Reproducibility hash: 1cad8eb300ee2cd2503010e26675fc5755bc84397a453ec5a06aa3352b27739a"
    }
}
curl instructions to deposit (requires token)
# 1. Set ZENODO_TOKEN env var (sandbox or live)
export ZENODO_TOKEN="<your-zenodo-personal-access-token>"

# 2. Create deposition
curl -X POST "https://sandbox.zenodo.org/api/deposit/depositions" \
     -H "Content-Type: application/json" \
     -H "Authorization: Bearer $ZENODO_TOKEN" \
     -d '{     "metadata": {         "upload_type": "dataset",         "title": "Lunar ephemeris snapshot 1cad8eb300ee - 2026-07-29T16:00:00+00:00 (engine=auto)",         "description": "<p>Deterministic lunar ephemeris snapshot computed by the OCalendario scientific lunar calculator.<\/p>\n<dl>\n<dt>Epoch (UTC)<\/dt><dd>2026-07-29T16:00:00+00:00<\/dd>\n<dt>Observer<\/dt><dd>lat 39.9625 deg, lon -83.0061 deg, alt 0 m<\/dd>\n<dt>Engine<\/dt><dd>auto<\/dd>\n<dt>Reproducibility hash (SHA-256)<\/dt><dd><code>1cad8eb300ee2cd2503010e26675fc5755bc84397a453ec5a06aa3352b27739a<\/code><\/dd>\n<\/dl>\n<p>The deposited file contains the full JSON snapshot of the engine output: ICRS state vector, apparent\/topocentric RA\/Dec, horizontal coordinates, sub-observer\/sub-solar points, phase geometry, GUM uncertainty budget, Monte Carlo summary, post-Newtonian decomposition, light-time iteration trace, and metadata.<\/p>\n<p>To reproduce: load the snapshot JSON into the import widget at the calculator page.<\/p>\n<p>Citation: see APA bibliography exported alongside this dataset.<\/p>",         "creators": [             {                 "name": "OCalendario Equipe",                 "affiliation": "ocalendario.com.br"             }         ],         "access_right": "open",         "license": "cc-by-sa-4.0",         "keywords": [             "lunar ephemeris",             "DE440",             "JPL Horizons",             "reproducibility",             "ICRS",             "IAU 2006",             "GUM JCGM 100",             "astrometry"         ],         "related_identifiers": [             {                 "identifier": "https:\/\/www.ocalendario.com.br\/scientific-lunar-calculator\/methodology",                 "relation": "isDocumentedBy"             },             {                 "identifier": "doi:10.3847\/1538-3881\/abd414",                 "relation": "references"             }         ],         "communities": [             {                 "identifier": "lunar-ephemeris"             }         ],         "subjects": [             {                 "term": "Lunar position",                 "identifier": "https:\/\/astrothesaurus.org\/uat\/955"             },             {                 "term": "Ephemerides",                 "identifier": "https:\/\/astrothesaurus.org\/uat\/464"             }         ],         "notes": "Snapshot generated by ocalendario.com.br scientific lunar calculator. Reproducibility hash: 1cad8eb300ee2cd2503010e26675fc5755bc84397a453ec5a06aa3352b27739a"     } }'

# 3. Capture deposition_id from response, upload snapshot.json file:
# curl -X PUT "https://sandbox.zenodo.org/api/deposit/depositions/<deposition_id>/files/snapshot.json" \
#      -H "Authorization: Bearer $ZENODO_TOKEN" \
#      --data-binary @snapshot.json

# 4. Publish:
# curl -X POST "https://sandbox.zenodo.org/api/deposit/depositions/<deposition_id>/actions/publish" \
#      -H "Authorization: Bearer $ZENODO_TOKEN"

# DOI returned in response 'doi' field, format: 10.5281/zenodo.NNNNNNN

Dry-run mode: Zenodo payload ready, no posting performed. For production, configure $siteConfig[zenodo_token] on the server and implement the actual POST.

Layer 5 Correções pós-Newtonianas

Correções 1PN+2PN: atraso de Shapiro, redshift gravitacional, precessão de de Sitter. Escalas de tempo relativísticas TT/TDB/TCB. Lunar Laser Ranging (LLR).

Correções relativísticas aceitas (Relatividade Geral padrão)computed

Efeitos previstos pela Relatividade Geral e confirmados experimentalmente. Apresentados em três camadas: aplicados ao resultado, informacionais (já contemplados na efeméride de referência) e abaixo do limiar de precisão.

Correções relativísticas (Grupo 1)[ref]

✓ Aplicadas ao resultado:

Atraso de Shapiro extra (logarítmico)
+25.998 ns → Δdistância +7.757 m
Termo Terra (round-trip)
244.820 ps
Termo Sol (depende da elongação)
25.876 ns (elongação Sol-Lua 177,8767°)
Maré galáctica integrada (J2000 → agora)
238.500 um (Δt = 26,6 anos, direção Sgr A*)
Yarkovsky lunar integrado
259.978 mm (direção radial Terra-Lua)

Termo logarítmico somado por cima do r/c Newtoniano que o engine já aplica. r/c já está no baseline. As duas últimas linhas são magnitudes residuais sub-LLR, informativas (não somadas à posição lunar: a maré galáctica é diferencial e a extrapolação de aceleração constante não vale em órbita ligada).

ℹ Informacional (taxa secular, não somada ao instante):

Precessão de de Sitter (geodésica)
19,1882 mas/ano (taxa de longo prazo)
Acumulado desde J2000.0
509.907 mas

Confirmada por LLR (Williams 2004) a 19,2 ± 0,13 mas/ano. É uma taxa, não uma correção pontual; somar como delta a um único instante seria fisicamente incorreto.

⊘ Abaixo da precisão (teórico):

Maré galáctica (gradiente diferencial)
6.7826e-22 m/s² (abaixo do limite LLR)

Gradiente do potencial galáctico sobre o sistema Terra-Lua; sub-microarcsec por século. Valor reportado para transparência.

Movimento polar (Chandler wobble): matriz W (IERS Conv. 2010 Eq. 5.3):

xp (polar motion)
0,00000″
yp (polar motion)
0,00000″
s′ (TIO locator)
-1.24898e-5″ (IERS Conv. 2010 Eq. 5.13)
Deslocamento meridional R·√(xp² + yp²)
0,0000 m
Deslocamento ITRS→TIRS na estação
0,0003 m

xp e yp nulos: matriz W reduz à identidade. Forneça valores do IERS Bulletin A para ativar a correção (≈9 m no equador para xp ≈ 0,3″).

Post-Newtonian decomposition (1PN, 2PN, frame-dragging)computed

Post-Newtonian decomposition (1PN, 2PN, frame-dragging)

Analytic magnitudes per term. DE440 already contains the terms marked.
TermMagnitudeFormulaIn DE440
0PN Newtonian (Kepler + perturbacoes)
Brouwer & Clemence 1961
399462 kmr = solucao classica das equacoes de Newton para Sol+Terra+Lua
1PN Solar (Schwarzschild Sol)
Brumberg & Kopeikin 1989 NCimB 103:63
11.65 mdr ~ 3*GM_sun*a_EM / (c^2 * r_ES)
1PN Terra (Schwarzschild Terra)
Soffel et al. 2003 AJ 126:2687
700.00 mmdr ~ GM_Earth * v_M^2 / c^2 acumulado por orbita
de Sitter (precessao geodesica do perigeu lunar)
Bertotti & Iess 2000 NCimB 115B:867 (LLR confirmation)
19.20 mmdomega/dt = (3/2)*n*GM_sun / (c^2*a_ES) ~ 1.92 cm/ano
2PN Solar (proxima ordem em v^2/c^2)
Damour, Soffel, Xu 1991 PRD 43:3273
0.0001 mmdr_2PN ~ dr_1PN * (v_helio/c)^2 ~ dr_1PN * 9.9e-9
Frame-dragging Sol (Lense-Thirring solar)
Iorio 2011 GReGr 43:1697
0.0200 mmdr ~ 2*G*J_sun / (c^2*r_ES^3)
Frame-dragging Terra (Lense-Thirring terrestre)
Lense & Thirring 1918; IERS Conv. 2010 sec 10
0.0008 mmdr ~ 2*G*J_Earth / (c^2*r_EM^3)
Total 1PN
12.35 m
Total 2PN
0.0001 mm
Total frame-dragging
0.0208 mm

Informative decomposition. DE440 already integrates 1PN solar+earth and de Sitter (Park et al. 2021); 2PN is folded into recent JPL models but represents less than 1 mm. Frame-dragging from Sun and Earth angular momentum is typically not in public DEs.

See also the Newtonian multipolar decomposition (Earth J2/J4/J6, Sun J2, Moon C20/C22) in the next tile: non-relativistic effects of mass asymmetry of the bodies.

Multipolar gravitational potential (Earth J2/J4/J6 + Sun J2 + Moon C20/C22)computed

Multipolar gravitational potential (zonal and sectoral harmonics)

Vallado §8.6 zonal+sectoral; coefficients from EGM2008 (Earth), Pijpers 1998 (Sun), LP150Q (Moon).
⚙ Multipolar controls
TermCoefficientAccel at Moon orbitPhysical role
Earth J2+1.083e-31.034e-9 m/s²Earth oblateness; small secular contribution to lunar nodal precession (the observed 18.6-yr nodal regression is dominated by solar perturbations, not by J2 alone)
Earth J4-1.620e-61.643e-16 m/s²Spheroid deviation (third zonal)
Earth J6+5.407e-79.791e-21 m/s²Higher zonal, negligible at Moon
Sun J2+2.0e-73.855e-14 m/s²Sun oblateness; relevant for GR tests (Cassini/Saturn)
Moon C20-2.034e-4U = -5.74e-1 m²/s²Lunar oblateness; libration in latitude
Moon C22+2.245e-5U = 6.34e-2 m²/s²Lunar triaxiality; 1:1 spin-orbit resonance
Lunar node regression (Earth J2, secular)
6.74 arcsec/ano (192314.69 anos/ciclo)

Earth J2 is the dominant non-spherical perturbation on the lunar orbit (~5e-7 m/s²). J4 and J6 are 1000× smaller. Sun J2 is negligible in the Earth-Moon system (but critical for Saturn/Cassini ranging). Moon C20/C22 do not affect the lunar orbit around Earth: they govern libration and 1:1 spin-orbit resonance.

Light-time iteration (multi-pass + Shapiro)computed

Light-time iteration (multi-pass + Shapiro)

Fixed-point: tau_{n+1} = r(t-tau_n)/c com re-avaliacao da efemeride na epoca retardada (Meeus cap. 33/47; Expl. Suppl. 3rd ed. sec. 7.2). Shapiro: tau_S = (2*GM_sun/c^3)*ln((r_SE+r_SM+r_EM)/(r_SE+r_SM-r_EM)).
nτ (μs)Δτ vs prev (ps)r evaluated (km)
11351015.060402405024.1
21351015.1997901.394e+5405024.2
31351015.1997901.932e-2405024.2
41351015.1997900.000e+0405024.2
51351015.1997900.000e+0405024.2
Newtonian τ
1351015.033731 μs
Shapiro contribution (Sun)
0.026671 μs
Final τ
1351015.199790 μs
Converged at
n=3

Light-time iteration coupled with Shapiro converges in 2-3 passes for the Earth-Moon system. The Sun-Shapiro term equals ~24 μs (equivalent to ~7 mm in range). Reference: Shapiro 1964 PRL 13:789; IERS Conventions 2010 §10.1.

Time scale chain (UTC → TCB)computed

Relativistic coordinate time chain (IAU 1991/2006)

IAU 1991 A4 (TCB/TCG), IAU 2000 B1.9 (L_G), IAU 2006 B3 (L_B/TDB), IERS Conv. 2010 §10
⚙ Coordinate time controls
ScaleJDDefinition
UTC2461251.16665509Civil time with leap seconds
UT12461251.16665509Earth rotation time (IERS)
TAI2461251.16708333International Atomic Time
TT2461251.16745583Terrestrial Time (TAI + 32.184 s)
TCG2461251.16746845Geocentric Coordinate Time (IAU 1991)
TDB2461251.16745583Barycentric Dynamical Time (TT + periodic)
TCB2461251.16773658Barycentric Coordinate Time (IAU 1991)
Pairwise deltas (seconds)
TT − TAI+32.184000 s
TAI − UTC+37.000000 s
UT1 − UTC+0.000000 s
TT − UTC+69.184014 s
TDB − TT+0.000000 s
TCG − TT+1.090287 s
TCB − TDB+24.256645 s
TCB − TCG+23.166360 s
ΔT = TT − UT1+69.184014 s
Demo: Earth ↔ Moon clock network
Earth clock rate / TCB
0.9999999844237426
Moon clock rate / TCB
0.9999999848212101
Earth↔Moon drift (μs/day)
+34.341 μs/dia

Moon clock runs faster than Earth clock due to weaker gravitational potential and lower velocity. IAU constants: L_G=6.9693e-10 (TCG/TT), L_B=1.5505e-8 (TCB/TDB), L_C=1.4808e-8 (TCB/TCG).

Lunar Laser Ranging (residuals & light-time)demonstration

Lunar Laser Ranging: residuals & two-way light time

ILRS NPT/CRD ingestion scaffold (offline, not implemented). Predicted light time + literature RMS.
⚙ LLR controls

APOLLO (Apache Point, NM, USA): current range: 399461.7 km · one-way: 1.347690 s · round-trip: 2.695381 s

Error budget: atmosphere ~10 cm · retro-array signature ~1 cm · relativistic Shapiro (round trip, modeled) ~53.2 ns

StationLat (°)Lon (°)h (m)RMS (cm)Reference
APOLLO (Apache Point, NM, USA)+32.78-105.8227801.5Murphy 2013
OCA / Grasse (France)+43.75+6.9212702.5Viswanathan 2018
McDonald (TX, USA)+30.68-104.0220704.0Murphy 2013 (historical)
Matera (MLRO, Italy)+40.65+16.705363.0Viswanathan 2018
Retroreflector array (Moon)Selenodetic lat (°)Selenodetic lon (°)Commissioned
Apollo 11 (Mare Tranquillitatis)+0.673+23.4731969
Apollo 14 (Fra Mauro)-3.644-17.4791971
Apollo 15 (Hadley-Apennine)+26.133+3.6291971
Lunokhod 2 (Le Monnier)+25.850+30.4501973
Lunokhod 1 (Mare Imbrium)+38.315-35.0001970

CRD parser demo: Synthetic: N=50 points, RMS = 0.009 cm, range -0.015..0.017 cm (station APOL, seed=2026, noise σ=0.0 cm, ILRS CRD v2.01 format)

Sub-centimeter residuals (APOLLO ~1.5 cm) constrain General Relativity: strong equivalence principle (|η| < 4.5×10⁻⁴), temporal variation of the gravitational constant (dG/dt / G < 5×10⁻¹⁴ /yr), and de Sitter geodetic precession. This tile is a literature-summary scaffold; full ingestion of ILRS NPT/CRD files with least-squares fit to DE440/INPOP parameters is future work.

Cowell N-body propagator (interactive)demonstration

Cowell N-body propagator (DOPRI8(7))

Prince-Dormand 1981 adaptive 13-stage: Earth point-mass + J2 + Sun third-body
🔬 Demo results with default parameters. Adjust controls below and click Compute to customize.
⚙ Propagation controls
MethodDOPRI8(7) adaptive (Prince-Dormand 1981)
Steps accepted / rejected / attempted15 / 0 / 15
RMS step (s)6811.415
Energy drift |ΔE/E|9.753e-4
Final position r (km)[302867.398, -223014.967, -136157.531]
Final velocity v (km/s)[0.635048, 0.795055, 0.073838]
Final JD2461252.16745583
Drift vs. two-body (same hours)
Position drift perturbed vs two-body (km)58.003
|ΔE/E| perturbed5.443e-4
|ΔE/E| two-body4.925e-15
Sanity 2-body < 1e-6PASS

Dormand-Prince RK8(7) integrator with adaptive PI control. Forces: Earth point-mass (GM), J2 zonal and Sun third-body (direct+indirect). Initial state reconstructed from main result RA/Dec/distance, with nominal 1.022 km/s tangential velocity in the equatorial plane: sufficient to demonstrate perturbation magnitudes, not a full DE440 ephemeris.

Kalman filter (interactive)demonstration

Kalman filter (KF / EKF)

Demo 1D constant-velocity (linear KF) or 2D orbit tracker (EKF range-only)
🔬 Demo results with default parameters. Adjust controls below and click Compute to customize.
⚙ Filter controls
DemoConstantVelocity1D (KF)
Steps executed50
Final statepos=50.1099 vel=1.0134
RMS position vs truth0.4971
Final trace(P)0.229698
NIS mean1.4034
trace(P) decay
#0
6.1911
#1
0.5675
#2
0.3347
#3
0.2593
#4
0.2352
#5
0.2303
#6
0.2299
#7
0.2298
#8
0.2297
#9
0.2297

Linear KF (predict/update) with Box-Muller Gaussian noise. EKF uses analytic Jacobians for central inverse-square gravity. Mean NIS close to measurement dimension indicates well-calibrated filter (chi-squared).

Particle filter (interactive)demonstration

Particle filter (Bootstrap SIR)

Gordon-Salmond-Smith (1993) benchmark: 1D nonlinear non-Gaussian tracking
🔬 Demo results with default parameters. Adjust controls below and click Compute to customize.
⚙ Filter controls
ModelGordon-Salmond-Smith 1993 (1D)
Particles2000
Steps executed50
Resampling threshold (ESS)0.50 × N = 1000.0
Resamples triggered40
ESS min / avg / max5.2 / 659.0 / 1805.6
Final estimate7.1511
Final truth8.2214
RMS estimate vs truth4.1142
Estimate (blue) vs truth (orange)
k=0
t=+11.80 e=+2.65
k=5
t=+25.45 e=+25.92
k=11
t=+18.53 e=+18.39
k=16
t=+10.91 e=+5.55
k=22
t=+14.28 e=+13.07
k=27
t=+15.70 e=+15.44
k=33
t=+9.91 e=+9.58
k=38
t=+9.52 e=+10.20
k=44
t=+2.69 e=+0.49
k=49
t=+8.22 e=+7.15

Bootstrap SIR (Arulampalam 2002) with systematic resampling (Kitagawa 1996). Resample triggered when ESS drops below fractional threshold over N. Bimodal model (x²/20 measurement) is the classic PF benchmark, adverse to KF/EKF.

SPICE kernel generator (interactive)demonstration

SPICE kernel generator (SPK Type 9)

Writes a NAIF DAF/SPK .bsp file in pure PHP: validated against CSPICE via spiceypy
🔬 Demo results with default parameters. Adjust controls below and click Generate kernel to customize.
⚙ Kernel controls
SPK typeType 9 (Lagrange, unequal steps)
Target / center301 / 399
FrameJ2000
Duration (h)24
States synthesized10
Interpolation degree7
Bytes written4096
SHA-256 (16 chars)b0fcd2d83d7febe3
LOCIDWDAF/SPK
LOCFMTLTL-IEEE
ND / NI2 / 6
FWARD / BWARD / FREE3 / 3 / 513
DAF header validYES

⬇ Download moon_b0fcd2d8.bsp

File is a NAIF DAF/SPK Type 9 .bsp, little-endian IEEE 754. Loadable in CSPICE, spiceypy, NAIF Toolkit and other standard NAIF tools. Generated files expire after 1 hour.

Lean/Coq formal proofs (interactive)demonstration

Formal witnesses: numerical (PHP) + Lean drafts

Verifies in PHP the identities proven in Lean 4 (Mathlib) and in paper-proofs
🔬 Witnesses executed with default parameters. Adjust controls below and click Verify to customize.
⚙ Witness controls
NPB det (T1)JD=2461251.16746 → det=0.999999999999999667
|det − 1|3.331e-16
Tolerance 1e-12✓ passes
Orthogonality (T3)N=30 (×3 eixos), seed=42
max ||R·Rᵀ − I||_F3.140e-16
Tolerance 1e-14✓ passes
Registered theorems
IDStatementStatus
T1_NPB_DET_ONEdet(N * P * B) = 1 for all t in R (IAU 2006 precession-nutation-bias).Lean draft (sorry body, not typechecked)
T2_KEPLER_THIRDT^2 = (4 pi^2 / G(M+m)) a^3 follows from Newton inverse-square law.paper_proof
T3_ROT_ORTHOGONALFor all theta in R, R_x(theta), R_y(theta), R_z(theta) satisfy R * R^T = I and det R = 1.Lean draft (sorry body, not typechecked)
T4_ELP_CONVERGENCEThe ELP-2000 Poisson series converges absolutely on any bounded interval [t0, t1] subset R.paper_proof

Each theorem has two evidence layers: PHP numerical witness (executable here) and Lean 4 draft against Mathlib in lean/. Full paper-proofs live in PAPER_PROOFS.md.

Monte Carlo - uncertainty propagation (JS Worker)demonstration

Monte Carlo (JS Worker, interactive)

Edit formula, samples and uncertainties. Computation runs 100% client-side via Web Worker.
Mean
Sigma

Tempo e fotônica lunarescomputed

Referência para operações em superfície lunar e fotônica de alta precisão: Tempo Coordenado Lunar (LTC), redshift gravitacional Lua-Terra e termo Yarkovsky para fins didáticos.

Tempo e fotônica relativísticos[ref]

LTC: ganho diário médio (Ashby e Patla 2024)
+56,3906 µs/dia
Aferição contra o valor publicado
56,0199 µs/dia (Eq. 35; nosso motor difere +0,3707 µs/dia = 0,66%, resíduo do modelo analítico de campo fraco)
Correção eccentric · cos(f) (Eq. 35 do paper)
+0.07536 µs/dia (f = 226,0°)
Distância Terra-Lua (instantânea)
399.461,7277572 km (fonte: efeméride; informativa, não realimenta a fórmula para evitar dupla contagem do termo cos(f))
LTC: ganho diário total (relógio lunar avança)
+56,46596 µs/dia
Acumulado desde J2000.0
+546.113 ms
Doppler relativístico completo (ztotal)[ref]
+1.12622e-7 (redshift)
Decomposição (radial + transversal + gravitacional)
zradial = +1.13280e-7  (linha de visada)
ztransv = +5.44076e-12  (γ−1, dilatação Lorentz)
zgrav  = -6.63950e-10  (Schwarzschild)
Velocidade radial / transversa / total
+33.96062 / 988,33960 / 988,92289 m/s (radial > 0 = afastando)
λ observado em 550,0 nm
550,000062 nm (Δλ = +61.942 fm)
Rotação de Wigner do qubit fotônico (θW)[ref]
5.35154e-11 rad (11,0384 μas; 5.35154e-5 μrad)
Polarização: inicial → final
45,00° → 45.0000000031° (Δ = +3.06621e-9°)
Fidelidade quântica F = cos²(θW)
F = 1 − 2.86390e-21 (infidelidade = sin²(θW); regime quasi-perfeito)
Yarkovsky lunar (recuo térmico)
7.3934e-19 m/s² (abaixo de detecção LLR)

Time dilation between Earth and lunar surface clocks computed via weak-field Schwarzschild-like gravitational redshift and second-order Doppler kinematic terms. Magnitude consistent with the canonical estimate of approximately 56 microseconds per Earth day, with periodic cos(f) modulation of plus or minus 0.108 us/day along the anomalistic month per Ashby and Patla 2024 Equation 35. The Eq. 35 cos(f) coefficient already absorbs both the kinematic (orbital speed) and the gravitational tidal (1/d) contributions of the lunar eccentricity, so the instantaneous Earth-Moon distance is reported here for transparency without being substituted back into the potential terms (which would double-count). BIPM and the IAU 2024 Resolution II working group are finalizing the formal LTC standard for the Artemis era.

Layer 6 Efeitos relativísticos sub-observacionais

Termos abaixo do limiar observacional atual para Earth-Moon: Lense-Thirring (frame-dragging), violação de Lorentz (SME), massa do gráviton, constante cosmológica local. Cálculo demonstrativo.

Correções relativísticas e galácticasdemonstration

Quatro correções de altíssimo rigor: alguns efeitos somam frações de microarcsegundo, mas estão na fronteira entre astronomia clássica e relativística. Úteis para validação acadêmica e curiosidade técnica.

Aberração galáctica

Δα (RA)
-109,3156″
Δδ (Dec)
-39,4223″
Magnitude total
116,2068″ (DC ~169,3″ já em ICRS; AC = -53,0475″)
Apex galáctico
266,4051° / -28,9362°
Rotação galáctica
246,0 km/s (dipolo CMB: 369,8 km/s, outra direção)
Drift secular
5 μ″/ano

Aberração completa da rotação galáctica do Sol (~246 km/s; os ~370 km/s são o dipolo CMB, em outra direção), já embutida por construção nos catálogos ICRS/Gaia, e por isso não é correção aplicável. O drift secular observável é ~5 μ″/ano rumo ao centro galáctico (Gaia EDR3, Klioner 2021).

Termos de Relatividade Geral de ordem superior

Lense-Thirring (drift 30d)
0,222 μ″
Schwarzschild (Sol)
0,216577″ (χ=177,88°)
Earth self-deflection
0,574 mas
Total das deflexões de luz (RSS)
0,216578″ (só Schwarzschild + Terra; a deriva de 30 d não entra: grandezas não-comensuráveis)
Gravidade Newtoniana Earth-Moon
1.83396e+20 N
Força Gravitomagnética (Lorentz GR)
9.38834e+6 N (5.1192e-14× Newton)

Frame dragging (Earth) + deflexão da luz (Sol) + auto-deflexão (Earth). Total angular ~10 a 30 μ″ na Lua. A força gravitomagnética isolada (Lorentz GR), produzida pelo spin da Terra agindo sobre a massa da Lua, é separada da medida angular. Soffel & Klioner 2003; Mashhoon 2008 (gr-qc/0311030); IAU 2000 B1.3/B1.4.

Coeficiente solar J2 (achatamento)

J2 constante
2.20000e-7
R
695.700,000 km
Aceleração perturbativa
3.94223e-17 km/s²
Drift posição (30d)
7.10598e-6″

Quadrupolo solar perturba a Lua via Sol. ~10⁻⁶ ″/30d (desprezível mas mensurável). Pireaux & Rozelot (2003).

Libração física (Eckhardt 1981 + IAU 2009)

ρ (latitude)
0,8310″
σ (longitude)
2,6365″
τ (twist)
0,0115″
Amplitude total
2,7643″
Pólo α₀
271,9608°
Pólo δ₀
67,9286°
W (meridiano)
128,4381°

Forçada por torques Sol/Terra + oscilações livres do interior lunar. Complementa a libração óptica (geométrica). Implementação truncada (8 termos), indicativa em poucos arcsec.

Technical snapshotconstant / metadata

Provenance
engine = OC Scientific Lunar Engine v2.0.0
ephemeris_mode = OCSE-Lite-2026A · frame = icrs
nutation = iau2000a · precession = iau2006 · aberration = annual_diurnal
ΔT (canônico, TT−UT1) = 75,075s · ΔT (Espenak-Meeus est.) = 75,075s · UT1−UTC = -0,0060s · TAI−UTC = 37s
era_2006 = 0,000000 graus · gst_iau2006 = 0,000000 graus
TDB-TT = 0,0000 ms (Fairhead-Bretagnon)
eop_source = default
iers_bulletin_a_daily = present, age 81d, updated 2026-05-09T11:49:17Z STALE
naif_earth_pck = present (4.8 MB) | naif_lunar_pck = present (12.3 MB)
Permalink
https://www.ocalendario.com.br/scientific-lunar-calculator?lang=en
Identificador determinist
lunar-20260729-0000-tzutc-lat0-lon0-ocscientificlunarenginev2.0.0-ofdate-iau1980-iau1976

Slug-key legivel gerado a partir dos parametros canonicos do calculo (data, hora, fuso, lat, lon) mais o nome e versao do motor. ID identico significa calculo identico, independente de filtros de UI.

Exports

Machine-readable do estado completo.

📋 Payload JSON (raw engine output)
{
    "engine": {
        "name": "OC Scientific Lunar Engine",
        "version": "2.0.0",
        "ephemeris_model": "OCSE-Lite-2026A",
        "ephemeris_requested_mode": "de440",
        "ephemeris_fallback": null,
        "reference_frame": "ICRF/J2000",
        "observer_mode": "topocentric",
        "time_scales": {
            "jd_utc": 2461251.1666550925,
            "jd_ut1": 2461251.1666550227,
            "jd_tai": 2461251.1670833332,
            "jd_tt": 2461251.1674558334,
            "delta_t_seconds": 75.074584,
            "delta_t_effective_seconds": 69.19004917144775,
            "delta_t_input_seconds": 69,
            "delta_t_mode": "auto",
            "ut1_minus_utc_seconds": -0.006019360887096772,
            "tai_minus_utc_seconds": 37,
            "leap_seconds_default": 37
        },
        "uncertainty": {
            "position_arcmin_typical": 5,
            "rise_set_minutes_typical": 3,
            "tracking_rate_arcsec_per_sec_typical": 3,
            "notes": "Truncated-series approximation. Position residual ~5 arcsec at J2000, larger near kernel boundaries. Use the full DE440 path for sub-arcsec precision."
        },
        "methodology": {
            "rise_set": "Adaptive step + bisection root-finding with dynamic threshold (upper-limb/center, dip, refraction, parallax).",
            "phase": "Elongation + phase-angle photometry (k = (1 + cos(i)) / 2).",
            "topocentric": "RA/Dec -> horizontal with optional refraction and parallax correction.",
            "apparent_coordinates": "Low-order nutation + annual aberration correction applied to lunar apparent place."
        }
    },
    "observer": {
        "latitude_deg": 39.9625,
        "longitude_deg": -83.0061,
        "altitude_m": 0,
        "pressure_hpa": 1013.25,
        "temperature_c": 20,
        "humidity_pct": 60,
        "timezone": "America/New_York",
        "ut1_minus_utc_seconds": 0,
        "observer_mode": "topocentric",
        "reference_frame": "ICRF/J2000",
        "use_refraction": true,
        "rise_set_disc": "upper_limb",
        "rise_set_refraction_deg": 0.5667,
        "event_step_seconds": 300,
        "tai_minus_utc_seconds": 37,
        "delta_t_mode": "auto",
        "delta_t_seconds": 69,
        "tracking_interval_seconds": 60,
        "birth_date_iso": "",
        "polar_motion_xp_arcsec": null,
        "polar_motion_yp_arcsec": null,
        "wavelength_nm": 550,
        "refraction_model": "bennett",
        "use_wgs84_parallax": true,
        "ephemeris_mode": "de440",
        "nutation_model": "iau2000a",
        "hemisphere_override": "auto",
        "calendar_system": "gregorian",
        "display_mode": "standard",
        "scientific_mode": true,
        "with_velocity": true,
        "compare_de440": true,
        "include_monthly_ephemeris": false,
        "frame_mode": "icrs",
        "apparent_mode": "apparent",
        "engine_mode": "auto",
        "precession_model": "iau2006",
        "aberration_model": "annual_diurnal",
        "light_time_correction": true,
        "shapiro_in_light_time": true,
        "occultation_catalog": "hipparcos",
        "occultation_vmag_max": 0,
        "monte_carlo_trials": 0,
        "gum_coverage_factor": 2
    },
    "time": {
        "utc_iso": "2026-07-29T15:59:59Z",
        "local_iso": "2026-07-29T11:59:59-04:00",
        "local_sidereal_deg": 104.314559,
        "local_sidereal_hms": "06:57:15",
        "jd_utc": 2461251.1666550925,
        "jd_ut1": 2461251.1666550227,
        "jd_tt": 2461251.1674558334,
        "delta_t_seconds": 69.19004917144775
    },
    "sun": {
        "ra_deg": 128.945695,
        "ra_hms": "08:35:47",
        "dec_deg": 18.632591,
        "dec_dms": "+18:37:57.33",
        "lambda_deg": 126.558089,
        "distance_au": 1.015234727,
        "distance_km": 151876953.391
    },
    "moon": {
        "ra_deg": 310.164368,
        "ra_hms": "20:40:39",
        "dec_deg": -20.41845,
        "dec_dms": "-20:25:06.42",
        "ra_mean_deg": 313.077816,
        "ra_mean_hms": "20:52:19",
        "dec_mean_deg": -17.569163,
        "dec_mean_dms": "-17:34:08.99",
        "ra_topocentric_deg": 309.841496,
        "ra_topocentric_hms": "20:39:22",
        "dec_topocentric_deg": -20.740943,
        "dec_topocentric_dms": "-20:44:27.40",
        "ra_astrometric_j2000_deg": 309.448571,
        "ra_astrometric_j2000_hms": "20:37:48",
        "dec_astrometric_j2000_deg": -20.835786,
        "dec_astrometric_j2000_dms": "-20:50:08.83",
        "lambda_deg": 307.216855,
        "lambda_mean_deg": 310.626983,
        "beta_deg": -2.018514,
        "distance_km": 399461.7277572275,
        "distance_earth_radii": 62.629843,
        "distance_topocentric_km": 405024.1177572275,
        "distance_topocentric_earth_radii": 63.501946,
        "angular_diameter_arcmin": 29.9038,
        "horizontal_parallax_deg": 0.914871,
        "argument_of_latitude_deg": 339.5606,
        "source": "DE440+Meeus-elements",
        "helio_range_rate_km_s": -0.232964,
        "distance_km_baseline": 399461.72,
        "distance_km_with_gr": 399461.7277572275,
        "distance_topocentric_km_baseline": 405024.11,
        "distance_topocentric_km_with_gr": 405024.1177572275
    },
    "topocentric": {
        "altitude_geometric_deg": -60.960044,
        "altitude_apparent_deg": -60.960044,
        "azimuth_deg": 303.878221,
        "hour_angle_deg": 154.150192,
        "refraction_deg": 0,
        "polar_motion_w": {
            "w_matrix": [
                [
                    1,
                    -6.055224924441455e-11,
                    0
                ],
                [
                    6.055224924441455e-11,
                    1,
                    0
                ],
                [
                    0,
                    0,
                    1
                ]
            ],
            "sp_arcsec": -1.2489797958225055e-5,
            "xp_arcsec": 0,
            "yp_arcsec": 0,
            "observer_tirs_km": {
                "x": 596.0798045768612,
                "y": -4858.957032372487,
                "z": 4074.7950520466584
            },
            "displacement_m": 0.00029642644236447396,
            "meridional_displacement_m": 0,
            "has_correction": false
        },
        "ecliptic_lon_deg": 306.841874,
        "ecliptic_lat_deg": -2.252932
    },
    "phase": {
        "name": "Full Moon",
        "fraction_0_1": 0.50182991,
        "age_days": 14.819333,
        "elongation_deg": 177.876701,
        "phase_angle_deg": 2.11773,
        "illumination_pct": 99.96585,
        "bright_limb_position_angle_deg": 147.046826,
        "parallactic_angle_deg": 42.768676
    },
    "upcoming_primary_phases": [
        {
            "phase_key": "new_moon",
            "phase_name": "New Moon",
            "target_phase_angle_deg": 0,
            "local_iso": "2026-08-12T13:36:44-04:00",
            "local_label": "12/08/2026 13:36",
            "utc_iso": "2026-08-12T17:36:44Z",
            "approx_uncertainty_minutes": 60
        },
        {
            "phase_key": "first_quarter",
            "phase_name": "First Quarter",
            "target_phase_angle_deg": 90,
            "local_iso": "2026-08-19T22:46:20-04:00",
            "local_label": "19/08/2026 22:46",
            "utc_iso": "2026-08-20T02:46:20Z",
            "approx_uncertainty_minutes": 60
        },
        {
            "phase_key": "full_moon",
            "phase_name": "Full Moon",
            "target_phase_angle_deg": 180,
            "local_iso": "2026-08-28T00:18:29-04:00",
            "local_label": "28/08/2026 00:18",
            "utc_iso": "2026-08-28T04:18:29Z",
            "approx_uncertainty_minutes": 60
        },
        {
            "phase_key": "last_quarter",
            "phase_name": "Last Quarter",
            "target_phase_angle_deg": 270,
            "local_iso": "2026-08-05T22:21:27-04:00",
            "local_label": "05/08/2026 22:21",
            "utc_iso": "2026-08-06T02:21:27Z",
            "approx_uncertainty_minutes": 60
        }
    ],
    "tracking_rates": {
        "interval_seconds": 60,
        "dra_deg_per_min": 0.008545253,
        "ddec_deg_per_min": 0.002867901,
        "dalt_deg_per_min": -0.149882062,
        "daz_deg_per_min": 0.342451562,
        "dra_arcsec_per_sec": 0.512715196,
        "ddec_arcsec_per_sec": 0.172074074,
        "dalt_arcsec_per_sec": -8.992923701,
        "daz_arcsec_per_sec": 20.547093699
    },
    "anomalistic_orbit": {
        "distance_km": 399461.72,
        "mean_anomaly_deg": 225.973398,
        "distance_from_perigee_km": 42961.72,
        "distance_from_apogee_km": 7238.28,
        "near_perigee_pct": 14.418885,
        "near_apogee_pct": 85.581115,
        "orbital_trend": "approaching_perigee",
        "position_label": "toward_perigee",
        "supermoon_candidate": false,
        "perigee_reference_km": 356500,
        "apogee_reference_km": 406700
    },
    "orientation": {
        "colongitude_deg": 270.658766,
        "libration_longitude_deg_approx": -3.713791,
        "libration_latitude_deg_approx": -1.790782,
        "subsolar_lon_deg_approx": 0.658766,
        "subsolar_lat_deg_approx": 2.018514,
        "subobserver_lon_deg_approx": -179.341234,
        "subobserver_lat_deg_approx": 1.009257
    },
    "apparent_corrections": {
        "nutation_longitude_deg": 0.002645267,
        "nutation_obliquity_deg": 0.002173778,
        "annual_aberration_longitude_deg": 0.005673195,
        "true_obliquity_deg": 23.437995891,
        "annual_aberration_eccentricity_term_omitted": false,
        "annual_aberration_constant_arcsec": 20.49552,
        "diurnal_aberration_max_arcsec": 0.24526879440676563
    },
    "events": {
        "moonrise_local": "21:09:30",
        "moonset_local": "06:12:58",
        "transit_local": "01:23:11",
        "transit_altitude_deg": 27.106961,
        "transit_method": "meridian_hour_angle_zero",
        "transit_local_sidereal_deg": 304.6745,
        "transit_local_sidereal_hms": "20:18:42",
        "event_timezone": "America/New_York",
        "rise_set_status": "normal",
        "rise_set_method": "adaptive-scan+binary-root",
        "horizon_threshold_deg": 0.097714,
        "horizon_components": {
            "disc_mode": "upper_limb",
            "semi_diameter_deg": 0.249198,
            "dip_deg": 0,
            "refraction_deg": 0.5667,
            "parallax_deg": 0.913612
        }
    },
    "tides": {
        "coefficient_0_100_approx": 100,
        "regime": "syzygy",
        "classification_source": "spring-neap approximation from synodic geometry"
    },
    "multicultural_calendars": {
        "jd": 2461250.5,
        "gregorian": "2026-07-29",
        "julian": "2026-07-16",
        "hijri": {
            "year": 1448,
            "month": 2,
            "day": 13,
            "month_name": "Safar",
            "iso": "1448-02-13 AH"
        },
        "hebrew": {
            "year": 5786,
            "month": 5,
            "day": 15,
            "month_name": "Av",
            "iso": "5786-05-15 AM"
        },
        "chinese": {
            "year": 2026,
            "is_simplified": true,
            "cycle60_year": "Bǐng-Wǔ",
            "stem": "Bǐng",
            "branch": "Wǔ",
            "zodiac": "Horse",
            "lunar_month": 6,
            "lunar_day": 15,
            "iso": "2026 (Horse) Month 6, day 15"
        }
    },
    "folk_names": {
        "full_moon_of_month": {
            "name": "Buck Moon",
            "name_en": "Buck Moon",
            "name_pt_br": "Lua do Cervo",
            "origin": "Algonquin",
            "meaning": "Bucks grow new antlers in July.",
            "meaning_pt_br": "Chifres dos cervos crescem em julho.",
            "season_north": "Summer",
            "season_south": "Winter",
            "month": 7
        },
        "new_moon_of_month": {
            "name": "New Moon",
            "name_en": "New Moon",
            "name_pt_br": "Lua Nova",
            "origin": "-",
            "meaning": "New Moon does not receive a standard folk name (except Black Moon).",
            "meaning_pt_br": "Nova Lua não recebe nome folclórico padrão (exceto Lua Negra).",
            "month": 7
        },
        "tupi_guarani": {
            "term": "Jacy guaçu",
            "phase_input": "Full Moon"
        }
    },
    "kinematics": {
        "orbital_velocity_km_s": 0.9792,
        "orbital_velocity_km_h": 3525,
        "distance_km_used": 399461.7,
        "travel_times": {
            "foot": {
                "vehicle": "Walking (5 km/h)",
                "speed_kmh": 5,
                "travel_hours": 79892.34391727443,
                "travel_human": "9.1 years"
            },
            "bike": {
                "vehicle": "By bicycle (20 km/h)",
                "speed_kmh": 20,
                "travel_hours": 19973.085979318606,
                "travel_human": "2.3 years"
            },
            "car": {
                "vehicle": "By car (100 km/h)",
                "speed_kmh": 100,
                "travel_hours": 3994.6171958637215,
                "travel_human": "166.4 days"
            },
            "plane": {
                "vehicle": "Commercial aircraft (900 km/h)",
                "speed_kmh": 900,
                "travel_hours": 443.84635509596905,
                "travel_human": "18.5 days"
            },
            "concorde": {
                "vehicle": "Concorde (2180 km/h)",
                "speed_kmh": 2180,
                "travel_hours": 183.23932091117987,
                "travel_human": "7.6 days"
            },
            "sr71": {
                "vehicle": "SR-71 Blackbird (3540 km/h)",
                "speed_kmh": 3540,
                "travel_hours": 112.84229366846671,
                "travel_human": "4.7 days"
            },
            "apollo": {
                "vehicle": "Apollo 11 (~5050 km/h avg)",
                "speed_kmh": 5050,
                "travel_hours": 79.1013306111628,
                "travel_human": "3.3 days"
            },
            "iss": {
                "vehicle": "ISS (27600 km/h)",
                "speed_kmh": 27600,
                "travel_hours": 14.473250709651165,
                "travel_human": "14.5 h"
            },
            "parker": {
                "vehicle": "Parker Solar Probe (635266 km/h)",
                "speed_kmh": 635266,
                "travel_hours": 0.6288101670581648,
                "travel_human": "37.7 min"
            },
            "light": {
                "vehicle": "Speed of light (1.08e9 km/h)",
                "speed_kmh": 1079252848,
                "travel_hours": 0.00037012801988582026,
                "travel_human": "1.33 s"
            }
        },
        "light_travel_seconds": 1.332500025875326,
        "light_travel_seconds_baseline": 1.3325,
        "light_travel_seconds_with_gr": 1.332500025875326
    },
    "equation_of_time": {
        "minutes": -6.4967,
        "total_seconds": -389.8,
        "human": "−6m 30s",
        "sundial_offset": 6.4967
    },
    "extras": {
        "next_blue_moon": {
            "utc_iso": "2028-12-31T16:48:08Z",
            "local_iso": "2028-12-31 11:48:08",
            "month": 12,
            "year": 2028,
            "tz": "America/New_York"
        },
        "next_black_moon": {
            "utc_iso": "2027-08-31T17:40:56Z",
            "local_iso": "2027-08-31 13:40:56",
            "month": 8,
            "year": 2027,
            "tz": "America/New_York"
        },
        "lunar_standstill": {
            "cycle_years": 18.6125,
            "next_major_year": 2043.46,
            "next_minor_year": 2034.16,
            "last_major_year": 2024.85,
            "declination_amplitude_deg_major": 28.5,
            "declination_amplitude_deg_minor": 18.3
        }
    },
    "birth_date_metrics": null,
    "scientific": {
        "engine_mode": "auto",
        "apparent_mode": "apparent",
        "frame_mode": "icrs",
        "nutation_model": "iau2000a",
        "precession_model": "iau2006",
        "aberration_model": "annual_diurnal",
        "frame_bias_matrix_B": [
            [
                0.9999999999999942,
                -7.0782797442e-8,
                8.056148939e-8
            ],
            [
                7.0782794779e-8,
                0.999999999999997,
                3.3060414542e-8
            ],
            [
                -8.056149173e-8,
                -3.306040884e-8,
                0.9999999999999962
            ]
        ],
        "precession_matrix_P": [
            [
                0.9999790100006273,
                -0.0059424919707224645,
                -0.0025819270600201598
            ],
            [
                0.005942492055507213,
                0.9999823432090285,
                -7.638783255084e-6
            ],
            [
                0.002581926864881917,
                -7.704458125041e-6,
                0.9999966667915977
            ]
        ],
        "nutation_matrix_N": [
            [
                0.9999999989342292,
                4.2359993850979e-5,
                1.8362258267176e-5
            ],
            [
                -4.2359297163945e-5,
                0.999999998383124,
                -3.793997873397e-5
            ],
            [
                -1.8363865374752e-5,
                3.7939200881187e-5,
                0.9999999991116928
            ]
        ],
        "npb_matrix": [
            [
                0.9999793078577047,
                -0.005900203556531237,
                -0.0025634848190236982
            ],
            [
                0.005900106464832013,
                0.9999825931881505,
                -4.5435731744514e-5
            ],
            [
                0.0025637082769918067,
                3.0309958228675e-5,
                0.9999967132351871
            ]
        ],
        "state_vector_icrs": {
            "position_km_x": 239407.525008,
            "position_km_y": -287511.495628,
            "position_km_z": -139967.289987,
            "velocity_km_s_x": 0.77138184,
            "velocity_km_s_y": 0.528985175,
            "velocity_km_s_z": 0.321112478,
            "reference_epoch": "J2000.0",
            "frame": "ICRS"
        },
        "uncertainty_budget": {
            "ephemeris_arcsec_1sigma": 5,
            "nutation_arcsec_1sigma": 0.001,
            "precession_arcsec_1sigma": 0.05,
            "frame_bias_arcsec_1sigma": 0.025,
            "aberration_arcsec_1sigma": 0.0005,
            "parallax_arcsec_1sigma": 0.1,
            "refraction_arcsec_1sigma": 5,
            "polar_motion_arcsec_1sigma": 0.3,
            "delta_t_arcsec_1sigma": 0.5,
            "rss_total_arcsec_1sigma": 7.095994,
            "distance_km_1sigma": 50
        },
        "de440_comparison": {
            "lite_ra_deg": 309.772451,
            "lite_dec_deg": -20.513944,
            "lite_distance_km": 399461.72,
            "de440_ra_deg": 309.778455,
            "de440_dec_deg": -20.512462,
            "de440_distance_km": 399461.72,
            "delta_ra_arcsec": -21.6126,
            "delta_dec_arcsec": -5.3354,
            "delta_distance_km": 0,
            "delta_total_arcsec": 22.2615,
            "within_envelope": true,
            "envelope_arcsec": 60,
            "frame": "ICRS J2000.0"
        },
        "eclipse_imminence": {
            "group": "solar",
            "subtype": "total",
            "type": "total",
            "when_utc": "2026-08-12T17:46:14Z",
            "magnitude": 1.0417,
            "gamma": 0.8978,
            "central_duration_s": 140.3,
            "subpoint_lat_deg": 65.1503,
            "subpoint_lon_deg": -25.1799,
            "days_until": 14.074,
            "l1": 0.5372,
            "l2": -0.00891,
            "sun_distance_au": 1.013291,
            "moon_distance_km": 366974.9,
            "visible_from_observer": null,
            "note": "Total solar eclipse: umbra cone reaches Earth surface (mag>1)."
        },
        "provenance": {
            "algorithms": {
                "lunar_position": "Chapront-Touze & Chapront 1988 (ELP-2000/82B truncated)",
                "planetary": "Bretagnon & Francou 1988 (VSOP87D)",
                "nutation": "IAU 2000A (Mathews, Herring & Buffett 2002 / IERS Conventions 2010, 1365 luni-solar + 687 planetary terms)",
                "precession": "Capitaine, Wallace & Chapront 2003 (IAU 2006 P03)",
                "frame_bias": "IERS Conventions 2010, B matrix (xi_0, eta_0, da_0)",
                "delta_t": "Espenak & Meeus 2006 polynomial",
                "aberration": "Annual + diurnal aberration (Kaplan 2005)",
                "refraction": "Bennett 1982 (default) / Saemundsson 1986 (optional), wavelength reference 590 nm",
                "topocentric": "WGS84 ellipsoid + horizontal parallax"
            },
            "data_sources": {
                "iers": "IERS Conventions 2010; Bulletin A (UT1-UTC, polar motion) accepted as manual override",
                "iau": "IAU SOFA / NOFA",
                "jpl": "JPL Planetary and Lunar Ephemerides DE440 (Park et al. 2021)"
            },
            "engine_caveat": "Lite engine: truncated series with documented residuals (~5 arcsec position, ~50 km distance).",
            "inputs": {
                "date": {
                    "value": "2026-07-29",
                    "default_used": true,
                    "unit": "ISO 8601 date",
                    "sanitization": "regex YYYY-MM-DD + clamp year [1700, 9000]"
                },
                "time": {
                    "value": "12:00:00",
                    "default_used": true,
                    "unit": "ISO 8601 time HH:MM",
                    "sanitization": "regex \\d{2}:\\d{2}"
                },
                "tz": {
                    "value": "America/New_York",
                    "default_used": true,
                    "unit": "IANA timezone",
                    "sanitization": "string trim, fallback America/Sao_Paulo"
                },
                "jd_input": {
                    "value": null,
                    "default_used": true,
                    "unit": "Julian Date",
                    "sanitization": "is_finite, range [1721057.5, 2500000.5]"
                },
                "mjd_input": {
                    "value": null,
                    "default_used": true,
                    "unit": "Modified Julian Date",
                    "sanitization": "is_finite, range [-179000, 100000]"
                },
                "jd_tt_input": {
                    "value": null,
                    "default_used": true,
                    "unit": "Julian Date in TT scale",
                    "sanitization": "is_finite"
                },
                "jd_ut1_input": {
                    "value": null,
                    "default_used": true,
                    "unit": "Julian Date in UT1 scale",
                    "sanitization": "is_finite"
                },
                "jd_tai_input": {
                    "value": null,
                    "default_used": true,
                    "unit": "Julian Date in TAI scale",
                    "sanitization": "is_finite"
                },
                "cjd_input": {
                    "value": null,
                    "default_used": true,
                    "unit": "Chronological Julian Date",
                    "sanitization": "is_finite"
                },
                "lat": {
                    "value": 39.9625,
                    "default_used": true,
                    "unit": "degrees",
                    "sanitization": "clamp [-90, 90]"
                },
                "lon": {
                    "value": -83.0061,
                    "default_used": true,
                    "unit": "degrees",
                    "sanitization": "clamp [-180, 180]"
                },
                "alt": {
                    "value": 0,
                    "default_used": true,
                    "unit": "metres above WGS84",
                    "sanitization": "clamp [-430, 12000]"
                },
                "pressure": {
                    "value": 1013.25,
                    "default_used": true,
                    "unit": "hPa",
                    "sanitization": "is_finite"
                },
                "temp": {
                    "value": 20,
                    "default_used": true,
                    "unit": "degrees Celsius",
                    "sanitization": "is_finite"
                },
                "humidity": {
                    "value": 60,
                    "default_used": true,
                    "unit": "percent relative humidity",
                    "sanitization": "is_finite"
                },
                "observer_mode": {
                    "value": "topocentric",
                    "default_used": true,
                    "unit": "enum",
                    "sanitization": "enum {topocentric, geocentric}"
                },
                "lunar_target": {
                    "value": "com",
                    "default_used": true,
                    "unit": "enum",
                    "sanitization": "enum LunarRetroreflectors::REFLECTORS or com"
                },
                "frame": {
                    "value": "ICRF/J2000",
                    "default_used": true,
                    "unit": "reference frame label",
                    "sanitization": "string trim"
                },
                "refraction": {
                    "value": true,
                    "default_used": true,
                    "unit": "boolean",
                    "sanitization": "absence => true; \"0\" => false"
                },
                "rise_disc": {
                    "value": "upper_limb",
                    "default_used": true,
                    "unit": "enum",
                    "sanitization": "enum {upper_limb, center}"
                },
                "rise_refraction": {
                    "value": 0.5667,
                    "default_used": true,
                    "unit": "degrees",
                    "sanitization": "is_finite"
                },
                "refraction_model": {
                    "value": "bennett",
                    "default_used": true,
                    "unit": "enum",
                    "sanitization": "enum {bennett, saemundsson, mendes_pavlis, none}"
                },
                "elev_cutoff_deg": {
                    "value": -90,
                    "default_used": true,
                    "unit": "degrees",
                    "sanitization": "clamp [-90, 90]"
                },
                "airmass_max": {
                    "value": 38,
                    "default_used": true,
                    "unit": "airmass dimensionless",
                    "sanitization": "clamp [1, 100]"
                },
                "solar_elong_min_deg": {
                    "value": 0,
                    "default_used": true,
                    "unit": "degrees",
                    "sanitization": "clamp [0, 180], swap if > max"
                },
                "solar_elong_max_deg": {
                    "value": 180,
                    "default_used": true,
                    "unit": "degrees",
                    "sanitization": "clamp [0, 180], swap if < min"
                },
                "lha_cutoff_deg": {
                    "value": 180,
                    "default_used": true,
                    "unit": "degrees",
                    "sanitization": "clamp [0, 180]"
                },
                "skip_daylight": {
                    "value": false,
                    "default_used": true,
                    "unit": "boolean",
                    "sanitization": "enum {0, 1}"
                },
                "magnitude_max": {
                    "value": 99,
                    "default_used": true,
                    "unit": "magnitudes V band",
                    "sanitization": "clamp [-30, 99]"
                },
                "extra_precision": {
                    "value": false,
                    "default_used": true,
                    "unit": "boolean",
                    "sanitization": "enum {0, 1}"
                },
                "time_digits": {
                    "value": "seconds",
                    "default_used": true,
                    "unit": "enum",
                    "sanitization": "enum {seconds, minutes, hours, fracsec}"
                },
                "csv_format": {
                    "value": false,
                    "default_used": true,
                    "unit": "boolean",
                    "sanitization": "enum {0, 1}"
                },
                "event_step": {
                    "value": 300,
                    "default_used": true,
                    "unit": "seconds",
                    "sanitization": "clamp [60, 3600]"
                },
                "tracking_interval": {
                    "value": 60,
                    "default_used": true,
                    "unit": "seconds",
                    "sanitization": "clamp [10, 600]"
                },
                "ut1_utc": {
                    "value": 0,
                    "default_used": true,
                    "unit": "seconds",
                    "sanitization": "is_finite"
                },
                "tai_utc": {
                    "value": 37,
                    "default_used": true,
                    "unit": "seconds",
                    "sanitization": "is_finite"
                },
                "dt_mode": {
                    "value": "auto",
                    "default_used": true,
                    "unit": "enum",
                    "sanitization": "enum {auto, manual}"
                },
                "dt_seconds": {
                    "value": 69,
                    "default_used": true,
                    "unit": "seconds",
                    "sanitization": "is_finite"
                },
                "time_scale_output": {
                    "value": [
                        "UTC"
                    ],
                    "default_used": true,
                    "unit": "array of enum",
                    "sanitization": "array intersect {TT,TAI,UTC,UT1,TDB,TCG,TCB,TCL,GPS}"
                },
                "engine_mode": {
                    "value": "auto",
                    "default_used": true,
                    "unit": "enum",
                    "sanitization": "enum {lite, de440, auto}"
                },
                "apparent_mode": {
                    "value": "apparent",
                    "default_used": true,
                    "unit": "enum",
                    "sanitization": "enum {apparent, geometric}"
                },
                "nutation_model": {
                    "value": "iau2000a",
                    "default_used": true,
                    "unit": "enum",
                    "sanitization": "enum {iau1980_eq, iau2000a, iau2000b}"
                },
                "precession_model": {
                    "value": "iau2006",
                    "default_used": true,
                    "unit": "enum",
                    "sanitization": "enum {iau1976, iau2006}"
                },
                "aberration_model": {
                    "value": "annual_diurnal",
                    "default_used": true,
                    "unit": "enum",
                    "sanitization": "enum {annual, annual_diurnal}"
                },
                "occultation_catalog": {
                    "value": "hipparcos",
                    "default_used": true,
                    "unit": "enum",
                    "sanitization": "enum {hipparcos, tycho2, gaia_dr3}"
                },
                "monte_carlo_trials": {
                    "value": 0,
                    "default_used": true,
                    "unit": "count",
                    "sanitization": "enum {0, 10000, 100000, 1000000}"
                },
                "gum_coverage_factor": {
                    "value": 2,
                    "default_used": true,
                    "unit": "k coverage factor",
                    "sanitization": "enum {1, 2, 3}"
                },
                "ephemeris_selector": {
                    "value": "de440",
                    "default_used": true,
                    "unit": "enum",
                    "sanitization": "enum {de440, de441, inpop21a, epm2021}"
                },
                "light_time_correction": {
                    "value": true,
                    "default_used": true,
                    "unit": "boolean",
                    "sanitization": "enum {0, 1, on}"
                },
                "with_velocity": {
                    "value": true,
                    "default_used": true,
                    "unit": "boolean",
                    "sanitization": "enum {0, 1, on}"
                },
                "compare_de440": {
                    "value": true,
                    "default_used": true,
                    "unit": "boolean",
                    "sanitization": "enum {0, 1, on}"
                },
                "wavelength_nm": {
                    "value": 550,
                    "default_used": true,
                    "unit": "nanometres",
                    "sanitization": "clamp [300, 1100]"
                },
                "polar_motion_xp_arcsec": {
                    "value": 0,
                    "default_used": true,
                    "unit": "arcseconds",
                    "sanitization": "clamp [-1, 1]"
                },
                "polar_motion_yp_arcsec": {
                    "value": 0,
                    "default_used": true,
                    "unit": "arcseconds",
                    "sanitization": "clamp [-1, 1]"
                },
                "solid_earth_tide_model": {
                    "value": "iers2010_step1_step2",
                    "default_used": true,
                    "unit": "enum",
                    "sanitization": "enum {iers2010_step1_step2, iers2003, iers1996, off}"
                },
                "ocean_loading_model": {
                    "value": "fes2014b",
                    "default_used": true,
                    "unit": "enum",
                    "sanitization": "enum {fes2014b, fes2022, tpxo9, got4_10c, off}"
                },
                "pole_tide_model": {
                    "value": true,
                    "default_used": true,
                    "unit": "boolean",
                    "sanitization": "enum {0, 1, on}"
                },
                "ocean_pole_tide": {
                    "value": true,
                    "default_used": true,
                    "unit": "boolean",
                    "sanitization": "enum {0, 1, on}"
                },
                "atmospheric_pressure_loading": {
                    "value": false,
                    "default_used": true,
                    "unit": "boolean",
                    "sanitization": "enum {0, 1, on}"
                },
                "hydrological_loading": {
                    "value": false,
                    "default_used": true,
                    "unit": "boolean",
                    "sanitization": "enum {0, 1, on}"
                },
                "output_angle_format": {
                    "value": "decimal",
                    "default_used": true,
                    "unit": "enum",
                    "sanitization": "enum {decimal, sexagesimal}"
                },
                "output_unit_distance": {
                    "value": "km",
                    "default_used": true,
                    "unit": "enum",
                    "sanitization": "enum {km, au, earth_radii, thousand_km}"
                },
                "output_frame": {
                    "value": "j2000",
                    "default_used": true,
                    "unit": "enum",
                    "sanitization": "enum {mean_of_date, true_of_date, j2000, icrs}"
                },
                "birth_date": {
                    "value": "",
                    "default_used": true,
                    "unit": "ISO 8601 date",
                    "sanitization": "regex YYYY-MM-DD or empty"
                },
                "calendar_system": {
                    "value": "gregorian",
                    "default_used": true,
                    "unit": "enum",
                    "sanitization": "enum {gregorian, julian}"
                },
                "hemisphere": {
                    "value": "auto",
                    "default_used": true,
                    "unit": "enum",
                    "sanitization": "enum {auto, north, south}"
                },
                "show_formulas": {
                    "value": false,
                    "default_used": true,
                    "unit": "boolean",
                    "sanitization": "enum {0, 1}"
                },
                "language": {
                    "value": "en",
                    "default_used": true,
                    "unit": "enum",
                    "sanitization": "enum {pt_br, en, es}"
                },
                "earth_rotation_model": {
                    "value": "iers2010",
                    "default_used": true,
                    "unit": "enum",
                    "sanitization": "enum {iers2010, iau2000}"
                },
                "frame_origin": {
                    "value": "geocentric",
                    "default_used": true,
                    "unit": "enum",
                    "sanitization": "enum {geocentric, topocentric, barycentric, heliocentric}"
                },
                "frame_epoch": {
                    "value": "J2000.0",
                    "default_used": true,
                    "unit": "enum",
                    "sanitization": "enum {J2000.0, B1950.0, of-date, of_date_2000}"
                },
                "frame_version": {
                    "value": "ICRS",
                    "default_used": true,
                    "unit": "enum",
                    "sanitization": "enum {FK4, FK5, ICRS, ITRS}"
                },
                "frame_correction": {
                    "value": "cio_based",
                    "default_used": true,
                    "unit": "enum",
                    "sanitization": "enum {cio_based, equinox_based}"
                },
                "geoid_correction": {
                    "value": true,
                    "default_used": true,
                    "unit": "boolean",
                    "sanitization": "enum {0, 1, on}"
                },
                "ellipsoid_flattening_override": {
                    "value": null,
                    "default_used": true,
                    "unit": "dimensionless 1/f override",
                    "sanitization": "is_finite or null"
                },
                "catalog_choice": {
                    "value": "none",
                    "default_used": true,
                    "unit": "enum",
                    "sanitization": "enum {gaia_dr3, hipparcos, tycho2, none}"
                },
                "eclipse_search_window_days": {
                    "value": 90,
                    "default_used": true,
                    "unit": "days",
                    "sanitization": "clamp [1, 365]"
                },
                "occultation_min_mag": {
                    "value": 6.5,
                    "default_used": true,
                    "unit": "magnitudes V band",
                    "sanitization": "is_finite"
                },
                "transit_min_distance_arcmin": {
                    "value": 60,
                    "default_used": true,
                    "unit": "arcminutes",
                    "sanitization": "min 0"
                },
                "advanced_gr": {
                    "value": true,
                    "default_used": true,
                    "unit": "boolean",
                    "sanitization": "absence => true; \"0\" => false"
                },
                "qty_relativistic_time": {
                    "value": true,
                    "default_used": true,
                    "unit": "boolean",
                    "sanitization": "absence => true; \"0\" => false"
                },
                "redshift_wavelength_nm": {
                    "value": 550,
                    "default_used": true,
                    "unit": "nanometres",
                    "sanitization": "clamp [100, 2000]"
                },
                "qubit_polarization_deg": {
                    "value": 45,
                    "default_used": true,
                    "unit": "degrees",
                    "sanitization": "clamp [0, 360]"
                },
                "ltc_compare_location": {
                    "value": "earth_surface",
                    "default_used": true,
                    "unit": "enum",
                    "sanitization": "enum {earth_surface, iss, lunar_surface}"
                },
                "eta_nordtvedt": {
                    "value": 0,
                    "default_used": true,
                    "unit": "dimensionless eta parameter",
                    "sanitization": "clamp [-1e-3, 1e-3]"
                },
                "dot_g_over_g_per_year": {
                    "value": 0,
                    "default_used": true,
                    "unit": "inverse years",
                    "sanitization": "clamp [-1e-11, 1e-11]"
                },
                "years_backward_g": {
                    "value": 1000,
                    "default_used": true,
                    "unit": "years",
                    "sanitization": "clamp [100, 100000]"
                },
                "m_g_eV": {
                    "value": 0,
                    "default_used": true,
                    "unit": "electron volts",
                    "sanitization": "clamp [0, 1e-15]"
                },
                "sme_s_xx": {
                    "value": 0,
                    "default_used": true,
                    "unit": "dimensionless SME tensor",
                    "sanitization": "clamp [-1e-6, 1e-6]"
                },
                "sme_s_yy": {
                    "value": 0,
                    "default_used": true,
                    "unit": "dimensionless SME tensor",
                    "sanitization": "clamp [-1e-6, 1e-6]"
                },
                "sme_s_zz": {
                    "value": 0,
                    "default_used": true,
                    "unit": "dimensionless SME tensor",
                    "sanitization": "clamp [-1e-6, 1e-6]"
                },
                "enable_cosmological_lambda": {
                    "value": false,
                    "default_used": true,
                    "unit": "boolean",
                    "sanitization": "enum {0, 1}"
                },
                "cosmo_lambda_value": {
                    "value": null,
                    "default_used": true,
                    "unit": "inverse metres squared",
                    "sanitization": "clamp [0, 1e-48] or null"
                }
            }
        },
        "monthly_ephemeris": [
            {
                "date_utc": "2026-07-29",
                "ra_deg": 301.85623,
                "dec_deg": -22.956216,
                "distance_km": 401150.34,
                "phase_pct": 99.6465,
                "angular_diameter_arcmin": 0.8936
            },
            {
                "date_utc": "2026-07-30",
                "ra_deg": 314.244845,
                "dec_deg": -18.990244,
                "distance_km": 398549.367,
                "phase_pct": 99.8515,
                "angular_diameter_arcmin": 0.8994
            },
            {
                "date_utc": "2026-07-31",
                "ra_deg": 326.162598,
                "dec_deg": -14.17147,
                "distance_km": 395585.665,
                "phase_pct": 98.1094,
                "angular_diameter_arcmin": 0.9062
            },
            {
                "date_utc": "2026-08-01",
                "ra_deg": 337.723745,
                "dec_deg": -8.707036,
                "distance_km": 392341.768,
                "phase_pct": 94.4013,
                "angular_diameter_arcmin": 0.9137
            },
            {
                "date_utc": "2026-08-02",
                "ra_deg": 349.117018,
                "dec_deg": -2.810956,
                "distance_km": 388871.723,
                "phase_pct": 88.7788,
                "angular_diameter_arcmin": 0.9218
            },
            {
                "date_utc": "2026-08-03",
                "ra_deg": 0.582719,
                "dec_deg": 3.295299,
                "distance_km": 385214.109,
                "phase_pct": 81.3722,
                "angular_diameter_arcmin": 0.9306
            },
            {
                "date_utc": "2026-08-04",
                "ra_deg": 12.396422,
                "dec_deg": 9.372855,
                "distance_km": 381412.295,
                "phase_pct": 72.3989,
                "angular_diameter_arcmin": 0.9399
            },
            {
                "date_utc": "2026-08-05",
                "ra_deg": 24.851485,
                "dec_deg": 15.148927,
                "distance_km": 377538.163,
                "phase_pct": 62.1731,
                "angular_diameter_arcmin": 0.9495
            },
            {
                "date_utc": "2026-08-06",
                "ra_deg": 38.224727,
                "dec_deg": 20.299262,
                "distance_km": 373713.947,
                "phase_pct": 51.1143,
                "angular_diameter_arcmin": 0.9592
            },
            {
                "date_utc": "2026-08-07",
                "ra_deg": 52.705338,
                "dec_deg": 24.44196,
                "distance_km": 370125.792,
                "phase_pct": 39.7506,
                "angular_diameter_arcmin": 0.9685
            },
            {
                "date_utc": "2026-08-08",
                "ra_deg": 68.281451,
                "dec_deg": 27.164863,
                "distance_km": 367022.584,
                "phase_pct": 28.7066,
                "angular_diameter_arcmin": 0.9767
            },
            {
                "date_utc": "2026-08-09",
                "ra_deg": 84.635475,
                "dec_deg": 28.107681,
                "distance_km": 364695.23,
                "phase_pct": 18.6665,
                "angular_diameter_arcmin": 0.9829
            },
            {
                "date_utc": "2026-08-10",
                "ra_deg": 101.168596,
                "dec_deg": 27.084051,
                "distance_km": 363435.731,
                "phase_pct": 10.3064,
                "angular_diameter_arcmin": 0.9863
            },
            {
                "date_utc": "2026-08-11",
                "ra_deg": 117.218682,
                "dec_deg": 24.169707,
                "distance_km": 363482.093,
                "phase_pct": 4.2046,
                "angular_diameter_arcmin": 0.9862
            },
            {
                "date_utc": "2026-08-12",
                "ra_deg": 132.329176,
                "dec_deg": 19.684113,
                "distance_km": 364962.267,
                "phase_pct": 0.7524,
                "angular_diameter_arcmin": 0.9822
            },
            {
                "date_utc": "2026-08-13",
                "ra_deg": 146.361511,
                "dec_deg": 14.082626,
                "distance_km": 367854.115,
                "phase_pct": 0.0972,
                "angular_diameter_arcmin": 0.9745
            },
            {
                "date_utc": "2026-08-14",
                "ra_deg": 159.430714,
                "dec_deg": 7.839836,
                "distance_km": 371974.914,
                "phase_pct": 2.1377,
                "angular_diameter_arcmin": 0.9637
            },
            {
                "date_utc": "2026-08-15",
                "ra_deg": 171.784093,
                "dec_deg": 1.377534,
                "distance_km": 377003.802,
                "phase_pct": 6.5698,
                "angular_diameter_arcmin": 0.9508
            },
            {
                "date_utc": "2026-08-16",
                "ra_deg": 183.70901,
                "dec_deg": -4.959716,
                "distance_km": 382529.098,
                "phase_pct": 12.9625,
                "angular_diameter_arcmin": 0.9371
            },
            {
                "date_utc": "2026-08-17",
                "ra_deg": 195.482983,
                "dec_deg": -10.899311,
                "distance_km": 388105.918,
                "phase_pct": 20.8361,
                "angular_diameter_arcmin": 0.9236
            },
            {
                "date_utc": "2026-08-18",
                "ra_deg": 207.348612,
                "dec_deg": -16.222593,
                "distance_km": 393310.159,
                "phase_pct": 29.7212,
                "angular_diameter_arcmin": 0.9114
            },
            {
                "date_utc": "2026-08-19",
                "ra_deg": 219.495351,
                "dec_deg": -20.745491,
                "distance_km": 397780.17,
                "phase_pct": 39.1926,
                "angular_diameter_arcmin": 0.9012
            },
            {
                "date_utc": "2026-08-20",
                "ra_deg": 232.038474,
                "dec_deg": -24.305263,
                "distance_km": 401243.332,
                "phase_pct": 48.8801,
                "angular_diameter_arcmin": 0.8934
            },
            {
                "date_utc": "2026-08-21",
                "ra_deg": 244.995963,
                "dec_deg": -26.758056,
                "distance_km": 403528.783,
                "phase_pct": 58.4623,
                "angular_diameter_arcmin": 0.8883
            },
            {
                "date_utc": "2026-08-22",
                "ra_deg": 258.275275,
                "dec_deg": -27.98873,
                "distance_km": 404569.074,
                "phase_pct": 67.6532,
                "angular_diameter_arcmin": 0.8861
            },
            {
                "date_utc": "2026-08-23",
                "ra_deg": 271.688011,
                "dec_deg": -27.928929,
                "distance_km": 404393.489,
                "phase_pct": 76.1869,
                "angular_diameter_arcmin": 0.8864
            },
            {
                "date_utc": "2026-08-24",
                "ra_deg": 285.000844,
                "dec_deg": -26.573889,
                "distance_km": 403115.004,
                "phase_pct": 83.8041,
                "angular_diameter_arcmin": 0.8893
            },
            {
                "date_utc": "2026-08-25",
                "ra_deg": 298.006629,
                "dec_deg": -23.988006,
                "distance_km": 400912.248,
                "phase_pct": 90.2449,
                "angular_diameter_arcmin": 0.8941
            },
            {
                "date_utc": "2026-08-26",
                "ra_deg": 310.582909,
                "dec_deg": -20.296347,
                "distance_km": 398007.46,
                "phase_pct": 95.2492,
                "angular_diameter_arcmin": 0.9007
            },
            {
                "date_utc": "2026-08-27",
                "ra_deg": 322.715468,
                "dec_deg": -15.668189,
                "distance_km": 394641.722,
                "phase_pct": 98.5649,
                "angular_diameter_arcmin": 0.9084
            }
        ]
    },
    "shapiro_in_pipeline": true,
    "shapiro_in_pipeline_meta": {
        "shapiro_extra_seconds_earth": 1.2281905168777418e-10,
        "shapiro_extra_ns_earth": 0.12281905168777418,
        "note": "Earth-Shapiro term injected into the final iteration of the light-time fixed-point loop. Solar term is left to the post-hoc layer."
    },
    "input_adjustments": [],
    "gr_corrections_applied": {
        "shapiro_extra_delay_ns": 25.998144858023956,
        "shapiro_extra_delay_s": 2.5998144858023956e-8,
        "pipeline_applied": true,
        "pipeline_earth_term_ns": 0.12281905168777418,
        "residual_extra_ns": 25.875325806336182,
        "residual_extra_s": 2.5875325806336183e-8,
        "delta_distance_km": 0.007757227525032356,
        "delta_distance_m": 7.757227525032357,
        "note": "Earth-Shapiro term already absorbed by the engine light-time loop; only the solar (residual) term applied here to avoid double-counting.",
        "residual_vector": {
            "applied_to_position": false,
            "status": "below_precision",
            "time_since_j2000_s": 838612800,
            "time_since_j2000_yr": 26.574036048368697,
            "galactic_tide": {
                "acceleration_m_s2": 6.782581570374105e-22,
                "delta_meters": 0.00023849979143599753,
                "delta_x_m": -1.3093638549836264e-5,
                "delta_y_m": -0.00020818646794448225,
                "delta_z_m": -0.0001156485488673152,
                "direction_unit_icrs": [
                    -0.0549,
                    -0.8729,
                    -0.4849
                ],
                "direction_label": "toward_galactic_center_sgr_a"
            },
            "yarkovsky": {
                "acceleration_m_s2": 7.393377004924752e-19,
                "delta_meters": 0.25997754031950326,
                "delta_x_m": 0.15714553294982095,
                "delta_y_m": -0.1861913752743406,
                "delta_z_m": -0.09069936448479324,
                "direction_label": "radial_along_earth_moon_line"
            },
            "total_magnitude_m": 0.2601591180295824,
            "note": "INFORMATIONAL ONLY (not applied to the lunar position since 2026-07-17). Residual perturbation magnitudes from galactic tide (Sgr A* gradient) and lunar Yarkovsky thermal recoil under the (invalid for bound orbits) constant-acceleration extrapolation Delta r = (1/2) a (t - J2000)^2. The galactic tide is differential (Earth and Moon free-fall together, so the absolute term cancels) and both contributions sit far below the LLR detection floor; they are not part of the DE440 or ELP baseline series."
        }
    },
    "_meta": {
        "reproducibility_id_short": "lunar-20260729-0000-tzutc-lat0-lon0-ocscientificlunarenginev2.0.0-ofdate-iau1980-iau1976",
        "reproducibility_id_full": "lunar-20260729-0000-tzutc-lat0-lon0-ocscientificlunarenginev2.0.0-ofdate-iau1980-iau1976",
        "permalink": "https://www.ocalendario.com.br/scientific-lunar-calculator?lang=en",
        "generated_at_utc": "2026-07-29T21:32:25+00:00"
    },
    "_inputs": {
        "lang": "en"
    }
}

Layer 7 Referências primárias

IAU SOFA, IERS Conventions 2010, JPL DE440 (Park et al. 2021), Meeus 1998, papers citados nas seções.

Bibliografia (citação APA)

Para citar esta calculadora em pesquisa, referencie diretamente os papers dos algoritmos abaixo. Cada entrada tem âncora estável (#bib-elp82b, #bib-vsop87, etc).

  1. Chapront-Touze, M., & Chapront, J. (1988). ELP 2000-85: a semi-analytical lunar ephemeris adequate for historical times. Astronomy and Astrophysics, 190(1-2), 342-352.
  2. Bretagnon, P., & Francou, G. (1988). Planetary theories in rectangular and spherical variables: VSOP87 solution. Astronomy and Astrophysics, 202, 309-315.
  3. Park, R. S., Folkner, W. M., Williams, J. G., & Boggs, D. H. (2021). The JPL Planetary and Lunar Ephemerides DE440 and DE441. The Astronomical Journal, 161(3), 105. doi:10.3847/1538-3881/abd414
  4. Konopliv, A. S., Park, R. S., Yuan, D. N., Asmar, S. W., Watkins, M. M., Williams, J. G., Fahnestock, E., Kruizinga, G., Paik, M., Strekalov, D., Harvey, N., Smith, D. E., & Zuber, M. T. (2013). The JPL lunar gravity field to spherical harmonic degree 660 from the GRAIL Primary Mission. Journal of Geophysical Research: Planets, 118(7), 1415-1434. doi:10.1002/jgre.20097
  5. Capitaine, N., Wallace, P. T., & Chapront, J. (2003). Expressions for IAU 2000 precession quantities. Astronomy and Astrophysics, 412(2), 567-586. doi:10.1051/0004-6361:20031539
  6. Petit, G., & Luzum, B. (Eds.) (2010). IERS Conventions (2010). IERS Technical Note 36, Verlag des Bundesamts fuer Kartographie und Geodaesie.
  7. Wahr, J. M. (1981). The forced nutations of an elliptical, rotating, elastic and oceanless Earth. Geophysical Journal of the Royal Astronomical Society, 64(3), 705-727. doi:10.1111/j.1365-246X.1981.tb02691.x
  8. International Astronomical Union (1991). Resolution A4: Recommendations from the Working Group on Reference Systems. Proceedings of the XXIst IAU General Assembly, Buenos Aires.
  9. International Astronomical Union (2000). Resolution B1.9: Re-definition of Terrestrial Time (TT). Proceedings of the XXIVth IAU General Assembly, Manchester.
  10. International Astronomical Union (2006). Resolution B3: Re-definition of Barycentric Dynamical Time (TDB). Proceedings of the XXVIth IAU General Assembly, Prague.
  11. Klioner, S. A. (2008). Relativistic scaling of astronomical quantities and the system of astronomical units. Astronomy & Astrophysics, 478(3), 951-958. doi:10.1051/0004-6361:20077786
  12. Espenak, F., & Meeus, J. (2006). Five Millennium Canon of Solar Eclipses: -1999 to +3000. NASA Technical Publication TP-2006-214141.
  13. Meeus, J. (1998). Astronomical Algorithms (2nd ed.). Willmann-Bell, Richmond, Virginia.
  14. IAU SOFA Board (2021). IAU SOFA Software Collection: standards of fundamental astronomy. International Astronomical Union, http://www.iausofa.org.
  15. International Earth Rotation and Reference Systems Service (2024). IERS Bulletin A: rapid service / prediction of UT1-UTC and polar motion. U.S. Naval Observatory, weekly issues, https://www.iers.org.
  16. Bennett, G. G. (1982). The calculation of astronomical refraction in marine navigation. The Journal of Navigation, 35(2), 255-259. doi:10.1017/S0373463300022037
  17. Saemundsson, T. (1986). Astronomical refraction. Sky and Telescope, 72, 70.
  18. Prince, P. J., & Dormand, J. R. (1981). High order embedded Runge-Kutta formulae. Journal of Computational and Applied Mathematics, 7(1), 67-75. doi:10.1016/0771-050X(81)90010-3
  19. Hairer, E., Norsett, S. P., & Wanner, G. (1993). Solving Ordinary Differential Equations I: Nonstiff Problems (2nd ed.). Springer-Verlag, Berlin Heidelberg.
  20. Tapley, B. D., Schutz, B. E., & Born, G. H. (2004). Statistical Orbit Determination. Academic Press, Burlington, MA.
  21. Crassidis, J. L., & Junkins, J. L. (2011). Optimal Estimation of Dynamic Systems (2nd ed.). CRC Press, Boca Raton, FL.
  22. Gordon, N. J., Salmond, D. J., & Smith, A. F. M. (1993). Novel approach to nonlinear/non-Gaussian Bayesian state estimation. IEE Proceedings F (Radar and Signal Processing), 140(2), 107-113.
  23. Arulampalam, M. S., Maskell, S., Gordon, N., & Clapp, T. (2002). A tutorial on particle filters for online nonlinear/non-Gaussian Bayesian tracking. IEEE Transactions on Signal Processing, 50(2), 174-188. doi:10.1109/78.978374
  24. Kitagawa, G. (1996). Monte Carlo filter and smoother for non-Gaussian nonlinear state space models. Journal of Computational and Graphical Statistics, 5(1), 1-25.
  25. Acton Jr., C. H. (1996). Ancillary data services of NASA's Navigation and Ancillary Information Facility. Planetary and Space Science, 44(1), 65-70. doi:10.1016/0032-0633(95)00107-7
  26. NAIF (Navigation and Ancillary Information Facility) (2024). SPICE Toolkit Documentation: DAF Required Reading, SPK Required Reading. NASA Jet Propulsion Laboratory, https://naif.jpl.nasa.gov.
  27. Joint Committee for Guides in Metrology (2008). Evaluation of measurement data: Supplement 1 to the "Guide to the expression of uncertainty in measurement": Propagation of distributions using a Monte Carlo method (JCGM 101:2008). Bureau International des Poids et Mesures (BIPM).
  28. Hog, E., Fabricius, C., Makarov, V. V., Urban, S., Corbin, T., Wycoff, G., Bastian, U., Schwekendiek, P., & Wicenec, A. (2000). The Tycho-2 catalogue of the 2.5 million brightest stars. Astronomy and Astrophysics, 355, L27-L30.
  29. Gaia Collaboration, Vallenari, A., Brown, A. G. A., Prusti, T., et al. (2023). Gaia Data Release 3. Summary of the content and survey properties. Astronomy and Astrophysics, 674, A1. doi:10.1051/0004-6361/202243940
  30. Andrae, R., Fouesneau, M., Sordo, R., et al. (2023). Gaia Data Release 3. Analysis of the Gaia BP/RP spectra using the General Stellar Parameterizer from Photometry. Astronomy and Astrophysics, 674, A27. doi:10.1051/0004-6361/202243462
  31. Smith, D. E., Zuber, M. T., Neumann, G. A., et al. (2010). Initial observations from the Lunar Orbiter Laser Altimeter (LOLA). Geophysical Research Letters, 37(18), L18204. doi:10.1029/2010GL043751
  32. Murphy, T. W. (2013). Lunar laser ranging: the millimeter challenge. Reports on Progress in Physics, 76(7), 076901. doi:10.1088/0034-4885/76/7/076901
  33. Viswanathan, V., Fienga, A., Minazzoli, O., Bernus, L., Laskar, J., & Gastineau, M. (2018). The new lunar ephemeris INPOP17a and its application to fundamental physics. Monthly Notices of the Royal Astronomical Society, 476(2), 1877-1888. doi:10.1093/mnras/sty096
  34. International Laser Ranging Service (2024). Consolidated Ranging Data (CRD) Format Specification v2.01. ILRS, https://ilrs.gsfc.nasa.gov.
  35. Pavlis, N. K., Holmes, S. A., Kenyon, S. C., & Factor, J. K. (2012). The development and evaluation of the Earth Gravitational Model 2008 (EGM2008). Journal of Geophysical Research: Solid Earth, 117(B4), B04406. doi:10.1029/2011JB008916
  36. Pijpers, F. P. (1998). Helioseismic determination of the solar gravitational quadrupole moment. Monthly Notices of the Royal Astronomical Society, 297(3), L76-L80.
  37. de Moura, L., & Ullrich, S. (2021). The Lean 4 theorem prover and programming language. Automated Deduction – CADE 28, LNCS 12699, 625-635. doi:10.1007/978-3-030-79876-5_37
  38. The mathlib Community (2020). The Lean mathematical library. Proceedings of the 9th ACM SIGPLAN International Conference on Certified Programs and Proofs (CPP 2020), 367-381. doi:10.1145/3372885.3373824
  39. Sicilia, M. A., Garcia-Barriocanal, E., & Sanchez-Alonso, S. (2017). Community curation in open dataset repositories: insights from Zenodo. Procedia Computer Science, 106, 54-60. doi:10.1016/j.procs.2017.03.009
Citing this calculator? See the full methodology page. English methodology document with uncertainty budget, frame transformation pipeline, validation tests and BibTeX entry; meets A&A peer-review documentation standards.
Open methodology (EN) →

Found a bug? Want to suggest a feature?

Email us at rcgwebsites@gmail.com and please include:

  • Full URL you were on (with all query string parameters)
  • Engine name + version and reproducibility hash (visible in the "Snapshot técnico" card)
  • What you expected to see vs what you actually saw
  • Steps to reproduce (if applicable)
  • Optional but valuable for academics: proposed root cause, proposed fix with scientific basis (cite paper/textbook DOI/ISBN if relevant)

We reply within ~5 business days. Suggestions for new tools, calculators, or methodology improvements are equally welcome.

Como usar a calculadora lunar científica

Esta calculadora lunar científica resolve a posição, a fase e a geometria orbital da Lua para qualquer instante com a profundidade exigida por trabalho académico, suporte a operações lunares e literatura citável. O motor combina a efeméride numérica JPL DE440, séries truncadas ELP-2000/82B para os termos lunares de alta frequência, VSOP87D para o Sol e perturbações planetárias, e um polyfill PHP de SOFA que executa a precessão-nutação IAU 2000A/2006 e as rotações ITRS conforme as IERS Conventions 2010. Os campos à esquerda definem observador, tempo, parâmetros atmosféricos, EOP, deslocamento da estação, sistemas de referência e correções relativísticas; o painel à direita devolve fase, RA/Dec equatorial, posição topocêntrica, escalas de tempo, state vector ICRS, orçamento de incerteza RSS e a tabela mensal de efemérides.

O que a calculadora entrega

  • Spotlight: fase, iluminação, idade lunar, distância Terra-Lua sub-métrica (km com 7 decimais, R⊕, diâmetros lunares), magnitude aparente, tempo de luz
  • Geometria orbital: Lunação Brown, libração óptica, bright limb angle, brilho cinéreo, fase no ciclo perigeu-apogeu
  • Eventos locais: rise/transit/set da Lua e do Sol, critério selecionável (limbo superior ou centro do disco), refração no horizonte parametrizável
  • Posição: RA/Dec equatorial em ICRS/J2000, topocêntrica (altitude, azimute, hour angle, refração), longitude e latitude eclípticas, coordenadas selenográficas dos pontos sub-Terra e sub-Sol
  • Sol e tempo: posição solar, escalas JD em UTC/TT/TDB, ΔT (Espenak-Meeus), sidereal time local, leap seconds aplicados
  • Correções relativísticas: 15 módulos distribuídos em três grupos (RG padrão confirmada, alvos de precisão na superfície lunar e cronómetro lunar, laboratório teórico em sandbox), com toggle independente e relatório por linha
  • Orientação selenográfica: colongitude, libração lat/lon, ponto sub-solar, tracking rates RA/Dec, posição milimétrica dos retrorrefletores LLR (Apollo 11/14/15, Lunokhod 1/2)
  • Extras científicos: orçamento de incerteza RSS (1σ) com componente de modelo, EOP e refração; comparativo cross-engine ELP×DE440; bibliografia APA com DOI; tabela mensal de efemérides; payload JSON bruto; permalink reproduzível com hash SHA-256

Backbone computacional

A engine carrega a efeméride JPL DE440 via kernel SPK (Park et al. 2021) como referência primária para o estado heliocêntrico de Sol, Terra e Lua. As séries ELP-2000/82B truncadas (Chapront-Touzé & Chapront 1988) cobrem os termos lunares de alta frequência fora da janela DE440 e servem ao modo Lite. VSOP87D (Bretagnon & Francou 1988) fornece a posição heliocêntrica da Terra e perturbações planetárias. O polyfill SOFA implementa em PHP puro a sequência canónica IAU: bias-precession-nutation IAU 2006/2000A, polar motion (xp/yp), CIO/equinox-based rotation, e a aplicação ITRS⇔GCRS conforme as IERS Conventions 2010. A pilha de tempo cobre UT1, UTC, UT1-UTC interpolado de Bulletin A, TAI, TT, TDB com modelos Fairhead-Bretagnon ou Irwin-Fukushima, e o ΔT Espenak-Meeus para a janela 4000 a.C. - 3000 d.C. Detalhes em methodology.php § 3.

Os campos da tabela de efemérides observacionais seguem a nomenclatura JPL Horizons (NASA/JPL ferramenta padrão para efemérides do sistema solar), compatibilizando a saída com publicações acadêmicas.

Grupo 1 - Relatividade Geral confirmada

O Grupo 1 (Standard GR Confirmed) reúne efeitos relativísticos verificados por Lunar Laser Ranging e missões correlatas. Inclui: correção de tempo de luz iterada, atraso de Shapiro no campo solar e terrestre (~25 ns no link Terra-Lua), redshift gravitacional combinando potencial terrestre e potencial solar local, aberração de Lorentz, transformações entre referenciais BCRS/GCRS e maré galáctica do potencial galáctico médio. Os módulos rodam por padrão em modo científico e cada termo aparece linha-a-linha no painel relativístico, com magnitude esperada e referência bibliográfica. Formalismo e referências em methodology.php § 3.8.A.

Grupo 2 - Alvos de precisão na superfície lunar e cronómetro lunar

O Grupo 2 agrupa os efeitos no regime de precisão exigido por suporte a operações na superfície lunar e por experimentos de cronómetro lunar (IAU 2018 Resolução B2 sobre Lunar Coordinate Time). A precessão geodésica de de Sitter (~19,2 mas/ano) e o frame dragging de Lense-Thirring derivam do momento angular da Terra; a libração física com fricção núcleo-manto refina a orientação selenográfica; o polar motion usa pares xp/yp do IERS C04 com offsets celestes dX/dY e amplitude FCN opcional; a rotação de Wigner propaga a polarização do fóton no link Terra-Lua a partir do ângulo do plano de polarização e do azimute do feixe. Formalismo em methodology.php § 3.8.B.

Grupo 3 - Laboratório teórico (parâmetros hipotéticos)

O Grupo 3 (Theoretical Lab) oferece toggles isolados para explorar física em estudo. O termo cosmológico Λ aplica a aceleração radial repulsiva da métrica Schwarzschild-de Sitter no limite Newtoniano. O screening de Yukawa avalia uma massa de gráviton declarativa. O termo Yarkovsky lunar estima aceleração térmica diurna. Os coeficientes SMEXX, s̄YY, s̄ZZ testam violação de invariância de Lorentz no formalismo Kostelecký-Russell. Por fim, o painel de overrides declarativos permite reescrever GM, GM, GM, c e os harmônicos zonais terrestres J2/J3/J4 para sensibilidade paramétrica. Cada toggle é off por default; quando ativado, o output marca a linha como sandbox. Detalhes em methodology.php § 3.8.C e § 4.24.

Guia dos campos de entrada e dos resultados

Esta calculadora lunar expõe ~26 entradas declarativas distribuídas em fieldsets agrupados por domínio. A seção seguinte descreve cada grupo, sempre com o anchor correspondente da página de metodologia.

Entradas - Observador (geometria, alvo lunar, defleção da vertical)

  • Data e Hora: instante base no fuso IANA selecionado. Padrão: agora, fuso de Brasília.
  • Latitude / Longitude / Altitude / Timezone IANA: coordenadas elipsoidais WGS84 do observador. Negativo no hemisfério sul/oeste. A altitude alimenta paralaxe e refracção.
  • Modo do observador: topocêntrico (com paralaxe da posição) ou geocêntrico (centro da Terra).
  • Alvo lunar (LLR): centro de massa ou um dos cinco retrorrefletores - Apollo 11, Apollo 14, Apollo 15, Lunokhod 1, Lunokhod 2 - com posição milimétrica no frame selenocêntrico.
  • Defleção da vertical ξ / η: componentes norte e leste do desvio entre a vertical local e a normal ao elipsoide WGS84, usadas no abaixamento horizôntico em SLR/LLR.

Entradas - Atmosfera e refração

  • Pressão (hPa) / Temperatura (°C) / Umidade (%): alimentam refração de Bennett 1982 e, quando ativada, a refração óptica/IR de Mendes-Pavlis 2004 (FCULa) usada em SLR e LLR (reduz o erro de mapping de ~5 mm para ~1 mm a 10° de elevação).
  • Aplicar refração: Sim aplica Bennett à altitude aparente; Não reporta a altitude geométrica.
  • Critério rise/set: limbo superior (uso astronômico padrão) ou centro do disco.
  • Refração no horizonte: valor assumido para o cálculo de rise/set. Padrão 0,5667°.

Entradas - Filtros de Observabilidade

  • Janela de elevação: altitude mínima e máxima do alvo acima do horizonte topocêntrico.
  • Janela de elongação solar: faixa permitida do ângulo Sol-Lua, útil para descartar conjunções inviáveis.
  • Cutoff de hour angle local / magnitude visual máxima: filtros operacionais por eixo (elevação, magnitude).
  • Resolução do tempo na saída: granularidade temporal das janelas de visibilidade reportadas.

Entradas - EOP e tempo de precisão

  • Fonte EOP: manual, IERS Bulletin A interpolado ou IERS C04. A escolha controla quais valores entram no NPB e na rotação ITRS.
  • UT1-UTC (DUT1, s) / TAI-UTC: diferença entre tempo rotacional e UTC; total de leap seconds (37 em 2026).
  • LOD (s): length of day residual.
  • Celestial Pole dX / dY (mas): offsets do polo celeste em relação ao modelo IAU 2006/2000A.
  • FCN amplitude / phase: nutação livre do núcleo (Free Core Nutation).
  • ΔT modo / manual: Auto usa Espenak-Meeus; Manual aceita um valor TT-UT1 explícito.
  • Modelo TT-TDB: Fairhead & Bretagnon 1990 ou Irwin & Fukushima 1999.
  • Escalas de tempo na saída: conjunto multi-escolha (UTC, UT1, TAI, TT, TDB, JD, MJD) reportado em paralelo. Detalhes em methodology.php § 4.21.

Entradas - Deslocamento da estação (IERS Conventions 2010 sec. 7)

  • Maré sólida da Terra: step 1 + step 2 do IERS 2010.
  • Loading oceânico: modelo FES2014b (default) com fallback a GOT4.10 e TPXO9.
  • Maré polar / maré polar oceânica: resposta elástica e oceânica ao polar motion.
  • Pressão atmosférica e carga hidrológica: deslocamento associado a variabilidade de pressão e carga d'água continental. Detalhes em methodology.php § 4.22.

Entradas - Sistemas de Referência Modernos

  • Frame selenocêntrico: ME (Mean Earth/Polar Axis, padrão DE440) ou PA (frame dinâmico IAU 2009).
  • Aberração galáctica: deriva de 5,8 µas/ano em ICRF3 (Charlot et al. 2020) opcional.
  • Refração Mendes-Pavlis FCULa: toggle para o modelo de refração óptica/IR usado em SLR/LLR.
  • CO2 atmosférico (ppm): entra no índice de refração (Ciddor 1996, efeito CO2 conforme Edlén 1966).
  • Defleção da vertical ξ / η: repete os componentes do bloco do observador para uso conjunto com FCULa. Detalhes em methodology.php § 4.23.

Entradas - Constantes e física teórica

  • Massa do gráviton (Yukawa): default 0 = RG; valores positivos simulam V(r) = -GM/r · e-r/λg.
  • SME s̄XX, s̄YY, s̄ZZ: tensor de violação de Lorentz (referência LLR Bourgoin 2017).
  • Constante cosmológica Λ: toggle para o termo Schwarzschild-de Sitter local.
  • GM, GM, GM, c: overrides declarativos sobre os defaults IAU 2015 / DE440 / CODATA. Vazio = sem override.
  • Harmônicos zonais J2 / J3 / J4 da Terra: overrides aplicados ao potencial geopotencial. Detalhes em methodology.php § 4.24.

Saídas - Painel, geometria orbital e posição

  • Spotlight: iluminação k = (1 + cos i)/2; idade lunar (ciclo sinódico ~29,53 d); distância em km com 7 decimais (DE440 reporta ~10 cm internos), R⊕ e diâmetros lunares (∅L = 3.474,8 km); diâmetro aparente em arcmin; magnitude aparente (Allen 1976); tempo de luz.
  • Lunação Brown: ciclo sinódico contado a partir da Lua Nova de 1923-01-17.
  • Libração óptica: deslocamento angular em longitude e latitude.
  • Bright limb angle: direção do limbo iluminado medida do norte celestial.
  • Brilho cinéreo: intensidade da luz refletida pela Terra na face escura.
  • RA / Dec equatorial J2000: em HMS / DMS ou graus.
  • Topocêntrica: altitude geométrica e aparente, azimute, hour angle, paralaxe horizontal.
  • Eclíptica: longitude λ e latitude β.

Saídas - Tempo, eventos, geometria selenográfica e fotometria

  • Tempo: JD UTC, JD TT, JD TDB, MJD, sidereal time local, ΔT efetivo, leap seconds aplicados.
  • Eventos: rise/transit/set da Lua e do Sol nos horários locais.
  • Nutação Δψ / Δε, aberração anual, obliquidade verdadeira, elongação ψ, ângulo de fase i, fração sinódica.
  • Selenografia: colongitude, libração lat/lon, ponto sub-solar (zenith), ponto sub-Terra, posições dos polos norte e sul lunar amarradas à topografia LRO LOLA.
  • Tracking rates: taxas de variação de RA e Dec por segundo. Detalhes em methodology.php § 5.

State vector, orçamento de incerteza e provenance

O painel científico devolve o state vector ICRS (posição e velocidade da Lua relativa ao baricentro Terra-Lua, em km e km/s), o orçamento de incerteza RSS 1σ com componentes separados (efeméride, EOP, refração, marés sólidas e oceânicas, truncámento numérico), e a comparativa cross-engine ELP×DE440. A provenance traz versão da efeméride, conjunto EOP usado, modelos atmosféricos ativos, hash de reprodutibilidade SHA-256 e bibliografia APA com DOI. Detalhes em methodology.php § 7.

Escopo atual e o que não é modelado

Por transparência, o escopo presente cobre as fontes que dominam o orçamento Terra-Lua: DE440 entrega o estado heliocêntrico de Sol, Terra, Lua e dos oito planetas, mais o anel interno de asteroides embutido no kernel; ELP-2000/82B fornece os termos lunares de alta frequência fora dessa janela. Não estão integrados: catálogo estelar (a calculadora não prediz ocultações estelares além da geometria Sol-Lua-planetas), perturbações por asteroides além do anel interno do DE440, refração atmosférica além de Bennett e Mendes-Pavlis, rastreamento de espaçonaves e modelagem de detritos orbitais. Limitações completas em methodology.php § 9.

Exportar e reproduzir

Os botões no topo do painel de resultado descarregam o instante calculado em CSV (50+ linhas chave-valor-unidade), JSON (payload bruto da engine, schema versionado) ou copiam o JSON direto para a área de transferência. O botão de permalink gera um URL canonicalizado com hash SHA-256 dos parâmetros, permitindo reprodução bit-a-bit do resultado em qualquer máquina. O nome do arquivo já inclui data, horário e localização. Detalhes em methodology.php § 10.

Advanced features (Layer 5)

The Layer 5 of the scientific lunar calculator exposes interactive tiles for reproducible numerical experimentation, each one with a <details> "⚙ Controls" panel and a POST form using namespaced inputs. All modules below run as pure PHP server-side (no binary dependencies), return auditable metrics and have been validated against canonical references. The engine quick selector at the top of the form (Auto / Lite / DE440) drives the ephemeris backbone used by every tile that depends on lunar state.

Cowell propagator (DOPRI8 RK8(7))

Dormand-Prince RK8(7) adaptive integrator implemented in pure PHP for N-body propagation of the geocentric lunar orbit. Force model includes Earth point-mass, terrestrial zonal harmonic J2 and solar third-body. Namespaced inputs cowell_*: horizon in hours (1-720), relative tolerance, J2 and Sun toggles. Outputs: energy drift (ΔE/E_0), accepted vs rejected step counts, final state vector in km and km/s, and a direct comparison against the two-body solution. Useful as sanity check on the numerical-truncation budget and as a sandbox for J2 and solar perturbation sensitivity.

Kalman filters (linear KF + EKF)

Linear Kalman filter and Extended Kalman Filter in pure PHP, with two pre-configured benchmarks: a 1D constant-velocity model (KF) and a 2D orbit with noisy angular measurements (EKF). Inputs kf_*: demo (CV-1D or EKF-orbit-2D), step count, σ_z (measurement noise), σ_q (process noise) and seed. Outputs: RMS against the generated ground truth, trace of the covariance matrix P, mean NIS (Normalized Innovation Squared) for statistical-consistency checks, and a sparkline of the trace(P) history.

Particle filter (Bootstrap SIR)

Bootstrap Sequential Importance Resampling with systematic resampling and adaptive ESS threshold. The tile runs by default the canonical Gordon, Salmond & Smith (1993) benchmark - non-linear scalar system with quadratic measurements. Inputs pf_*: particle count (100-10000), step count, seed, ESS threshold. Outputs: RMS against the ground truth, min/avg/max ESS and resample-event counter. Appropriate when the posterior is multimodal and the EKF collapses.

SPICE kernel writer (NAIF DAF/SPK type 9)

Generator of type 9 SPK kernels (Lagrange unequal time steps) in the NAIF DAF binary format, written directly in PHP from the numerical propagation. Inputs spice_*: horizon in hours, number of states, NAIF target ID and center ID. Outputs: file SHA-256, download link to the .bsp served by /lua/calculadora-lunar/_download-bsp.php (secure endpoint with hash validation and automatic cleanup of files older than 1 hour). The format has been validated round-trip against the CSPICE library through spiceypy (server-side check; no UI button for the round-trip yet).

Numerical witnesses for Lean/Coq proofs

Pairing between formal proofs (Lean 4 drafts) and verifiable numerical witnesses. Two main tests: NPB determinant (positivity of the covariance matrix in filtering) and rotation orthogonality (R Rᵀ = I for the IAU 2006/2000A precession-nutation matrices). Inputs lean_*: reference JD, sample count, seed. Outputs: residual table, Lean 4 syntax drafts and the written-out paper proofs in Markdown. The Lean proofs are not typechecked by the server - they are citable drafts shipped alongside their numerical counter-checks.

Monte Carlo (Web Worker, client-side)

Monte Carlo sandbox running in a Web Worker in the browser, with an editable formula textarea and support for 10 k to 1 M samples. Each variable accepts mean and σ; outputs include mean and standard deviation per variable and for the composed expression. The choice of pure JS (instead of WASM) costs ~30 % runtime but removes the toolchain dependency; WASM migration is deferred.

LLR residuals (Lunar Laser Ranging)

Tile llr_* with a station dropdown (APOLLO, OCA, McDonald, Matera) and a retroreflector dropdown (Apollo 11/14/15, Lunokhod 1/2). Synthetic parser in CRD (Consolidated Laser Ranging Data) format with controlled noise injection. Outputs: round-trip light time, per-station RMS table and parser demo. Real ILRS data ingestion is not implemented - synthetic CRD only.

Enhanced existing tiles

  • Time scale chain: inputs time_* with custom JD, scale (UTC/UT1/TAI/TT/TDB/TCG/TCB), explicit UT1-UTC and TAI-UTC.
  • Multipolar gravity: inputs mp_* with distance override and toggles for solar J2 and lunar C20/C22.
  • Station displacement: inputs sd_* with lat/lon/height, pressure, xp/yp and five per-component toggles (solid tide, ocean loading, polar tide, ocean polar tide, atmosphere).
  • Citation and DOI: DRY-RUN route to Zenodo (real publication depends on user token, not yet provided).

Infrastructure and fixes

A new endpoint /lua/calculadora-lunar/_download-bsp.php has been added (SHA-256 validation, automatic cleanup of files older than 1 hour). Bug fixes in this batch: right-column overflow, oversized grids and active state of the engine selector.

Limitations

Listed below is what the calculator does not do today. Each item is a deliberate boundary - not a bug - and is consistent with the scope declared in methodology.php § 9.

  • Automatic DOI publication on Zenodo: the route runs in DRY-RUN. Real publication requires a user API token, not yet configured.
  • Monte Carlo in WASM: not implemented. Pure-JS Web Worker is used instead, ~30 % slower.
  • Lean typecheck of the formal proofs: not run server-side. The Lean 4 proofs are citable drafts; the accompanying paper proofs are written out in full.
  • Real ILRS data ingestion: not implemented. The LLR tile operates only on synthetic CRD with injected noise.
  • UI button for spiceypy round-trip: not exposed. Validation was performed server-side in a single batch; the tile generates the kernel and returns the SHA, but no in-browser button to re-verify CSPICE reading is provided.
  • Full orbit determination chain: the building blocks are ready (Cowell + KF/EKF + PF), but the fitting loop (batch least squares) is not wired end-to-end.
  • 3D / WebGL visualisation: deliberately deferred. The deliverable prioritises citable numbers, not an interactive viewer.

Perguntas frequentes

Como funciona a calculadora lunar?

Você informa data, hora e localização. A calculadora lunar usa a engine OCSE-Lite com séries truncadas ELP-2000/82B (60+ termos para a Lua, Chapront-Touzé 1988) e VSOP87D (50+ termos para o Sol, Bretagnon 1988), precisão típica ~3″ na posição lunar. Calcula fase, posição equatorial e topocêntrica, libração, escalas de tempo (UT1/UTC/TT), uncertainty budget RSS, state vector e tabela mensal de efemérides para citação académica.

Qual a precisão da calculadora lunar?

Posição lunar ~5 arcsec, distância <1 km, horários de fase ±30s. Eclipses ±1 min. Equinócios e Páscoa exatos ao minuto. Suficiente pra astrofotografia amadora, ensino e observação.

O que é cada campo de saída?

Iluminação: % da face visível iluminada. Idade: dias desde a Lua Nova. RA/Dec: posição equatorial J2000. Az/Alt: altura no horizonte local. Libração: face visível efetiva da Lua. Magnitude: brilho aparente. Próximo eclipse: data, magnitude, visibilidade do Brasil.

Posso consultar qualquer data?

Sim, qualquer data entre 4000 BC e 3000 AD com ΔT Espenak-Meeus (precisão degrada nos extremos). Janela ideal 1900-2100.

A calculadora lunar funciona para outros países?

Sim. No "Modo avançado" você muda latitude/longitude/altitude pra qualquer ponto do globo. Os horários ficam no fuso de Brasília por padrão; mude o timezone se necessário.

Como escolho o modelo de refração e o tier de aberração?

A calculadora oferece três modelos de refração: Bennett 1982 (default, geral), Saemundsson 1986 (variante popular pra altitudes baixas) e Mendes-Pavlis 2004 (modelagem de SLR/VLBI, alta acurácia). O tier de aberração aparece em apparent_corrections JSON: Lite (anual + diurna padrão Meeus) ou Full (anual + diurna + retardo de luz + termos relativísticos para star catalog matching).

O que aparece no Spotlight HERO live?

O Spotlight HERO mostra 6 cards principais (fase, distância, iluminação, RA/Dec, libração, próxima fase) atualizando em tempo real, mais cards adicionais em 3 fases extras (Phase 5/6/7) com state vector ICRS, comparativo cross-engine ELP×DE440 e métricas de qualidade do cálculo. As seções Sandbox, Ocultações, Orçamento de Incerteza e Heatmap de Libração ficam standalone abaixo.

Quais catálogos estelares são usados pra ocultações?

Quatro catálogos disponíveis: Hipparcos (default, 118 mil estrelas brilhantes), Tycho-2 (2.5 milhões, mag até ~11), Gaia DR3 (1.8 bilhão, astrometria de precisão sub-mas) e o catálogo combinado XHIP. A escolha afeta cobertura e profundidade dos eventos de ocultação previstos pelos próximos 30 dias.

Como exportar pra software de mecânica orbital?

A exportação OEM CCSDS 502.0-B-3 (Orbit Ephemeris Message) é o formato canonical da agência espacial e é lido por GMAT, STK, ODTK, OREKIT e FreeFlyer. Inclui state vector ICRS posição+velocidade, época TT, frame, e metadados. A Allan deviation (NIST SP 1065) acompanha como métrica de estabilidade do clock.

You have just used the scientific lunar calculator with the ELP-2000/82B + VSOP87D + JPL DE440 fallback pipeline, IAU 2006 frames + IAU 2000A nutation and selectable Bennett/Saemundsson/Mendes-Pavlis refraction. Every output ships an ICRS state vector, occultations across Hipparcos/Tycho-2/Gaia DR3, a parameter sandbox, a libration heatmap, the ELP×DE440 cross-engine comparison, a GUM/JCGM 100:2008 + Monte Carlo JCGM 101 uncertainty budget, CCSDS 502.0-B-3 OEM export, Allan deviation (NIST SP 1065), a SHA-256 reproducibility hash and APA-formatted bibliography with DOI, ready for academic citation. For the full methodology and uncertainty table, see the methodology document.

Technical sources (compact)

Canonical subset of the primary references used by the scientific engine (lunar and planetary ephemerides, IAU 2006/IERS 2010 frame, refraction and GUM JCGM 100:2008). Full bibliography in the methodology paper §14.

  1. Capitaine, N., Wallace, P. T., & Chapront, J. (2003). Expressions for IAU 2000 precession quantities. Astronomy and Astrophysics, 412(2), 567-586. DOI: 10.1051/0004-6361:20031539.
  2. Park, R. S., Folkner, W. M., Williams, J. G., & Boggs, D. H. (2021). The JPL Planetary and Lunar Ephemerides DE440 and DE441. The Astronomical Journal, 161(3), 105. DOI: 10.3847/1538-3881/abd414.
  3. Chapront-Touze, M., & Chapront, J. (1988). ELP 2000-85: a semi-analytical lunar ephemeris adequate for historical times. Astronomy and Astrophysics, 190(1-2), 342-352.
  4. Bretagnon, P., & Francou, G. (1988). Planetary theories in rectangular and spherical variables: VSOP87 solution. Astronomy and Astrophysics, 202, 309-315.
  5. Wahr, J. M. (1981). The forced nutations of an elliptical, rotating, elastic and oceanless Earth. Geophysical Journal of the Royal Astronomical Society, 64(3), 705-727. DOI: 10.1111/j.1365-246X.1981.tb02691.x.
  6. Bennett, G. G. (1982). The calculation of astronomical refraction in marine navigation. The Journal of Navigation, 35(2), 255-259. DOI: 10.1017/S0373463300022037.
  7. Mendes, V. B., & Pavlis, E. C. (2004). High-accuracy zenith delay prediction at optical wavelengths. Geophysical Research Letters, 31, L14602. DOI: 10.1029/2004GL020308.
  8. Joint Committee for Guides in Metrology (JCGM) (2008). Evaluation of measurement data: Guide to the expression of uncertainty in measurement (GUM). JCGM 100:2008, BIPM.

How to cite this page

ocalendario.com.br Astronomy Project (2026). Scientific Lunar Calculator (version 87.5.0.4.1) [Software]. https://www.ocalendario.com.br/scientific-lunar-calculator. Accessed July 29, 2026.

Full bibliography (50+ entries covering IAU 2006/IERS 2010, JCGM 100/101/102 and CCSDS 502.0-B-3): methodology paper §14.