Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,7 @@ complete physical recalculation; finished seeing, `tau0`, cloud transmission,
Overall, and data quality are never interpolated. GLO-30 is rendered as an
independent informational skyline: it never suppresses a completed atmospheric
cell. The current production writer is production-v2/v33/v23 with dataset
schema 7. See [Architecture](docs/architecture.en.md), the
schema 8. See [Architecture](docs/architecture.en.md), the
[scientific method](docs/scientific-method.en.md), and the separate
[site repository](https://github.com/Haeniken/site-astrosferum).

Expand Down
2 changes: 1 addition & 1 deletion README.ru.md
Original file line number Diff line number Diff line change
Expand Up @@ -120,7 +120,7 @@ PostgreSQL, синхронизация моделей, «Горизонт» и
интерполируются только исходные поля ICON-EU, затем полностью пересчитывается физическая
модель. GLO-30 отображается как отдельная информационная линия рельефа и не
скрывает завершённую атмосферную ячейку. Текущий записывающий контракт —
production-v2/v33/v23, схема 7. Подробности:
production-v2/v33/v23, схема 8. Подробности:
[архитектура](docs/architecture.ru.md),
[научная методика](docs/scientific-method.ru.md) и
[отдельный репозиторий сайта](https://github.com/Haeniken/site-astrosferum).
Expand Down
22 changes: 15 additions & 7 deletions docs/architecture.en.md
Original file line number Diff line number Diff line change
Expand Up @@ -896,7 +896,7 @@ The displayed `Transparency heuristic, %` row is a versioned ordering rule, not

DWD defines [`VIS` in metres and `TQV` in kg/m²](https://isabel.dwd.de/DWD/publikationen/dokumentation/grib/DWD_GRIB2_PARAMETER.htm); kg/m² is numerically equivalent to mm PWV. True optical transparency needs direct AOD/extinction observations: [DWD derives AOD and PWV through Sun, Moon, and stellar photometry](https://www.dwd.de/EN/research/observing_atmosphere/lindenberg_column/radiation/photometry.html). The proxy is therefore only for comparing hours in one forecast and is unsuitable for absolute photometry.

A droplet means a small `T−Td` spread and possible dew and never penalizes seeing. Each event icon is placed at its actual X position. Mercury through Neptune use the published [JPL approximate-position elements](https://ssd.jpl.nasa.gov/planets/approx_pos.html) with one light-time iteration; Pluto uses the Meeus periodic series. The same versioned hourly topocentric coordinates feed chart 1 and the Astrodome, and an independent all-body regression is checked against a JPL Horizons `AIRLESS` observer table. They are planning ephemerides rather than integrated navigation ephemerides. The photorealistic body icons are presentation-only and do not encode angular size, phase, orientation, or brightness.
A droplet means a small `T−Td` spread and possible dew and never penalizes seeing. Each event icon is placed at its actual X position. Mercury through Neptune use the published [JPL approximate-position elements](https://ssd.jpl.nasa.gov/planets/approx_pos.html) with one light-time iteration; Pluto uses the Meeus periodic series. The same versioned hourly topocentric coordinates feed chart 1 and the Astrodome, and an independent all-body regression is checked against a JPL Horizons `AIRLESS` observer table. They are planning ephemerides rather than integrated navigation ephemerides. The photorealistic body icons are presentation-only and do not encode angular size, phase, orientation, or brightness; the interactive result reports those server-computed diagnostics separately.

Preferred implementation: one pure-Go renderer based on `gonum/plot` and `golang.org/x/image` with an embedded Cyrillic-capable font. A Python/Matplotlib container is unnecessary.

Expand Down Expand Up @@ -1839,9 +1839,9 @@ published. Their identity includes coordinates, run and manifest digest,
versions, ephemerides, calibration, and the complete static GLO-30 terrain profile. Calculation-request schema v6 also binds the
science-path version, apparent-direction contract, and SHA-256 of the complete
configured science calibration; the same digest is retained in the dataset.
Dataset schema 7 carries the profile-derived per-node skyline elevation and
Dataset schema 8 carries the profile-derived per-node skyline elevation and
informational obstruction predicate without changing the atmospheric state.
The narrow `astrodome-dataset-writer-v8-glo30-informational-skyline` identity also participates in the
The narrow `astrodome-dataset-writer-v9-observing-ephemerides` identity also participates in the
calculation cache key, so a writer correction regenerates the payload without
claiming a different scientific formula or dataset schema.
An earlier request or a bot/worker calibration mismatch fails closed rather
Expand Down Expand Up @@ -1948,7 +1948,7 @@ JSON, while a website-only miss deliberately skips PNG rasterization. Horizon re
model-surface height under the same model-work queue, then uses the same
per-user checks, Horizon cache, shared directional FIFO, and renderer as the
signed bot action. The bot serializes those already prepared values as
versioned `forecast-interactive-v5-explicit-heuristics` or `horizon-interactive-v7-glo30-informational-skyline` JSON; the
versioned `forecast-interactive-v6-observing-ephemerides` or `horizon-interactive-v7-glo30-informational-skyline` JSON; the
browser never reimplements a formula or interpolates a finished result. The
weather and cloud retain one exact native hourly axis, Overall retains a
narrower exact subset of that axis when pressure-profile support ends earlier, while
Expand All @@ -1957,12 +1957,20 @@ axis; none is resampled from another. Overall may cover a narrower exact subset
when the current surface/cloud window extends beyond pressure-profile support.
Additive Overall
penalty points are serialized by Go, not reconstructed in JavaScript.
`forecast-interactive-v5-explicit-heuristics` also pins `algorithms.overall` as
`forecast-interactive-v6-observing-ephemerides` also pins `algorithms.overall` as
`overall-astronomy-index-v2-fog-heuristic-availability`, `algorithms.cloud_obstruction` as
`effective-cloud-obstruction-v1`, and carries
`algorithms.overall_calibration_sha256` and the exact
`celestial-horizontal-distance-aspect-jpl-meeus-wgs84-h0-v3` ephemeris identity. It carries ten
canonical tracks whose samples match the exact weather-hour axis. The browser
`celestial-observing-ephemerides-jpl-meeus-wgs84-h0-v4` ephemeris identity. It carries ten
canonical tracks whose samples match the exact weather-hour axis, including
observer distance, angular diameter, phase, illuminated fraction, explicit
Johnson-V applicability/value, solar elongation, daily culmination, Mars
season, and Saturn ring opening. The status distinguishes published-domain
values, explicit out-of-domain absence for Venus/Jupiter/Saturn, and the
labeled Mars/Pluto planning approximations. Astrodome schema 8 additionally
carries one strict SIMBAD revised-Hipparcos Polaris track with fixed
ICRS/J2000 SynScan
coordinates; Polaris is not added to Forecast 1/7 or Overall. The browser
validates this provenance before drawing and uses spherical interpolation only
to densify dashed presentation paths; selected-hour values remain the stored
server samples. The separate Johnson-V diagnostic retains
Expand Down
23 changes: 16 additions & 7 deletions docs/architecture.ru.md
Original file line number Diff line number Diff line change
Expand Up @@ -912,7 +912,7 @@ MVP строит семь изображений:

DWD определяет [`VIS` в метрах и `TQV` в kg/m²](https://isabel.dwd.de/DWD/publikationen/dokumentation/grib/DWD_GRIB2_PARAMETER.htm); значение `kg/m²` численно равно мм PWV. Для настоящего оптического пропускания нужны как минимум прямые измерения AOD/extinction: [DWD получает AOD и PWV фотометрией Солнца, Луны и звёзд](https://www.dwd.de/EN/research/observing_atmosphere/lindenberg_column/radiation/photometry.html). Поэтому эвристика прозрачности предназначена только для сравнения часов одного прогноза и не годится для абсолютной фотометрии.

Капля обозначает малый `T−Td` и возможную росу; подпись — «Роса — подготовить обогрев/бленду», без штрафа к seeing. Координата X каждого значка события соответствует расчётному времени между часовыми колонками. Для Меркурия—Нептуна используются опубликованные [приближённые элементы JPL](https://ssd.jpl.nasa.gov/planets/approx_pos.html) и одна итерация запаздывания света, для Плутона — периодический ряд Меуса. Одни и те же версионированные почасовые топоцентрические координаты передаются в график 1 и астрокупол; независимая регрессия всех тел сравнивается с таблицей наблюдателя JPL Horizons `AIRLESS`. Это эфемериды для планирования, а не интегрированные навигационные эфемериды. Фотореалистичные пиктограммы служат только оформлением и не кодируют угловой размер, фазу, ориентацию или яркость.
Капля обозначает малый `T−Td` и возможную росу; подпись — «Роса — подготовить обогрев/бленду», без штрафа к seeing. Координата X каждого значка события соответствует расчётному времени между часовыми колонками. Для Меркурия—Нептуна используются опубликованные [приближённые элементы JPL](https://ssd.jpl.nasa.gov/planets/approx_pos.html) и одна итерация запаздывания света, для Плутона — периодический ряд Меуса. Одни и те же версионированные почасовые топоцентрические координаты передаются в график 1 и астрокупол; независимая регрессия всех тел сравнивается с таблицей наблюдателя JPL Horizons `AIRLESS`. Это эфемериды для планирования, а не интегрированные навигационные эфемериды. Фотореалистичные пиктограммы служат только оформлением и не кодируют угловой размер, фазу, ориентацию или яркость; интерактивный результат показывает эти рассчитанные сервером характеристики отдельно.

Предпочтительная реализация — один pure-Go renderer на базе `gonum/plot` и `golang.org/x/image`, с вшитым шрифтом, поддерживающим кириллицу. Отдельный Python/Matplotlib контейнер не нужен.

Expand Down Expand Up @@ -1849,10 +1849,10 @@ lock, поэтому восстанавливать stale PID-файл не тр
grid/digest, primitive contract, версии геометрии/рефракции/science,
эфемериды, калибровку и полный статический профиль GLO-30. Схема расчётного запроса v6 также связывает версию science path,
контракт видимого направления и SHA-256 полной настроенной научной калибровки;
тот же digest сохраняется в dataset. Схема dataset 7 переносит производные от
тот же digest сохраняется в dataset. Схема dataset 8 переносит производные от
профиля высоту линии рельефа и информационный предикат перекрытия для каждого
узла, не меняя атмосферное состояние. Узкий идентификатор
`astrodome-dataset-writer-v8-glo30-informational-skyline` также входит в ключ
`astrodome-dataset-writer-v9-observing-ephemerides` также входит в ключ
расчётного кеша: исправление writer принудительно пересоздаёт payload, не
выдавая его за новую научную формулу или схему dataset. Запрос прежней схемы
или несовпадение
Expand Down Expand Up @@ -1961,19 +1961,28 @@ JSON, а при website-only cache miss PNG намеренно не растер
высота поверхности определяются под той же очередью модельных запросов, после
чего используются те же per-user проверки, cache, общая directional FIFO и
renderer, что и для подписанной кнопки бота. Уже подготовленные значения бот
сериализует в версионированный JSON `forecast-interactive-v5-explicit-heuristics` или
сериализует в версионированный JSON `forecast-interactive-v6-observing-ephemerides` или
`horizon-interactive-v7-glo30-informational-skyline`: браузер не повторяет формулы и не интерполирует
готовый результат. Погода и облачная преграда сохраняют одну точную нативную
почасовую ось, Overall — её более узкое точное подмножество, если поддержка
pressure-level профиля заканчивается раньше, а pressure-level продукты
ветра/сдвига/сиинга — нативную трёхчасовую ось; ни одна ось не
ресемплируется из другой. Аддитивные вклады штрафов Overall сериализует
Go, а не восстанавливает JavaScript. `forecast-interactive-v5-explicit-heuristics` также закрепляет
Go, а не восстанавливает JavaScript. `forecast-interactive-v6-observing-ephemerides` также закрепляет
`algorithms.overall` как `overall-astronomy-index-v2-fog-heuristic-availability`,
`algorithms.cloud_obstruction` как `effective-cloud-obstruction-v1` и передаёт
`algorithms.overall_calibration_sha256`, а также точную версию эфемерид
`celestial-horizontal-distance-aspect-jpl-meeus-wgs84-h0-v3`. Payload содержит десять канонических
траекторий, чьи точки совпадают с почасовой осью погоды. Браузер проверяет
`celestial-observing-ephemerides-jpl-meeus-wgs84-h0-v4`. Payload содержит десять канонических
траекторий, чьи точки совпадают с почасовой осью погоды, включая расстояние от
наблюдателя, угловой диаметр, фазу, освещённую долю, явный статус применимости
и значение Johnson V, элонгацию от Солнца, суточную кульминацию, сезон Марса и
раскрытие колец Сатурна. Статус различает значения внутри опубликованной
области, явное отсутствие числа вне области Венеры/Юпитера/Сатурна и
помеченные планировочные приближения Марса/Плутона. Схема астрокупола 8
дополнительно содержит одну строго проверяемую траекторию Полярной звезды по
revised Hipparcos в SIMBAD с
фиксированными координатами SynScan ICRS/J2000; Полярная не добавляется в
прогноз 1/7 или Overall. Браузер проверяет
provenance до отрисовки и применяет сферическую интерполяцию только для
уплотнения пунктирной линии; значение выбранного часа остаётся сохранённой
серверной точкой. Отдельная диагностика Johnson-V сохраняет provenance NASA GEOS-CF
Expand Down
2 changes: 1 addition & 1 deletion docs/configuration.en.md
Original file line number Diff line number Diff line change
Expand Up @@ -209,7 +209,7 @@ The profile is calculated once per source version and coordinates rounded to
directional queue before the isolated worker downloads and validates the public
Cloud Optimized GeoTIFF tiles. Bot and worker then reuse the shared bounded
profile cache. Calculation-request schema 6 binds that profile; Horizon cache
schema 7 and Astrodome dataset schema 7 invalidate older payloads by
schema 7 and Astrodome dataset schema 8 invalidate older payloads by
construction.

## Shared Overall, Horizon, and Astrodome calibration
Expand Down
2 changes: 1 addition & 1 deletion docs/configuration.ru.md
Original file line number Diff line number Diff line change
Expand Up @@ -209,7 +209,7 @@ PostgreSQL с минимальными правами, но его остано
попадает в общую directional-очередь, и только затем изолированный worker загружает и
проверяет публичные Cloud Optimized GeoTIFF. После этого bot и worker используют общий
ограниченный кэш профилей. Схема расчётного запроса 6 связывает профиль; Horizon cache
schema 7 и схема dataset астрокупола 7 конструктивно исключают переиспользование прежних
schema 7 и схема dataset астрокупола 8 конструктивно исключают переиспользование прежних
payload.

## Общая калибровка Overall, Horizon и астрокупола
Expand Down
Loading
Loading