# Источники и правило календарного расчёта

Этот файл фиксирует принятую в проекте **Movement of Truth** методику. Календарь не берёт готовую официальную дату весеннего равноденствия и не подставляет опубликованную дату новолуния как ответ. Он вычисляет события из числовых данных о свете, закате и освещённости Луны для выбранного места.

## Принятое правило

1. **Equalux** — первый весенний местный день, в котором промежуток от восхода до заката достиг 12 часов. Это не официальная дата equinox.
2. После equalux ищется ближайший минимум освещённости Луны. В интерфейсе он округляется до `0,00%` и считается моментом новолуния.
3. Первый местный закат после этого минимума начинает месяц I, день 1. Это правило рассчитывается заново каждый год после местного весеннего equalux.
4. Календарная дата дня относится к его светлой части. Поэтому день, начавшийся вечером 29 марта, показывается как 30 марта.
5. Каждый следующий месяц начинается с первого местного заката после следующего минимума освещённости Луны. Если минимум произошёл до заката, день 1 начинается этим закатом; если после заката — следующим.
6. Длина месяца равна промежутку между двумя такими началами и составляет 29 или 30 дней. До следующего годового начала помещается 12 или 13 месяцев; дополнительный месяц обозначается XIII и не обрезается.
7. Праздники Левита считаются по фактическим длинам лунных месяцев. Полнолуние показывается как астрономическая отметка середины месяца.
8. В режиме Еноха первые шесть дней недели подписаны римскими цифрами I–VI, а седьмая колонка — только словом «Шабат» без цифры VII; текущий день меняется на закате. Наведение показывает простую современную дату и название недели без интервалов заката. Один двухпозиционный свитч «Еноха ↔ Современный» включает вид от воскресенья до субботы с гражданскими числами и сменой отметки текущего дня в полночь; наведение в нём показывает месяц и день Еноха. Над сеткой указана только сегодняшняя дата активного режима; дата второго календаря доступна через наведение и переключатель. Текущая карточка выделяется двойной акцентной рамкой без видимой текстовой метки «Сегодня»; для ассистивных технологий она остаётся помечена как текущая дата.

Схема главы 72 `30 + 30 + 31`, повторённая четыре раза, хранится отдельно как
солнечная модель из 364 позиций для ворот и соотношения света и тьмы. Она не
задаёт длины лунных календарных месяцев.

В режиме реальной локации выбранная современная дата является единственной
датой для расчёта восхода, заката, сезонного состояния, круга и карточки
света/тьмы. Фактическая продолжительность суток переводится в общую шкалу из
18 частей. Номер лунного месяца не подменяет номер солнечного периода. Ближайший
к 12 часам света местный день показывается как equalux и как `9 / 9` частей;
для Торонто осенью 2026 года это 25 сентября, а 26 сентября начинается
солнечный период VII. При ручном выборе периода круг переходит на отдельные
фиксированные значения модели главы 72.

## Источники Солнца

- [SunCalc.org — движение Солнца и длительность света](https://www.suncalc.org/#/40.1789,-3.5156,3/2021.12.21/12:18/1/3)
  - используемые показатели: восход, закат, длительность дневного света, координаты и часовой пояс;
  - в калькулятор встроена локальная копия библиотеки `suncalc` для воспроизводимого расчёта без обращения к внешнему сайту при каждом открытии.

## Источники Луны и независимая проверка

- [Astronomy Engine — расчёт солнечных и лунных затмений](https://github.com/cosinekitty/astronomy)
  - локальная библиотека используется для списка затмений внутри текущего лунного года;
  - затмения являются только визуальными отметками и не меняют месяцы, дни или даты праздников.
- [MoonCalc.org — движение и фаза Луны](https://www.mooncalc.org/#/43.7576,-79.4368,11/2021.04.11/22:34/1/3)
  - проверяются фаза, освещённость, ближайшее новолуние, восход и заход Луны и местный часовой пояс;
  - восход и заход рассчитываются локальной копией `suncalc` для выбранной
    гражданской даты и локации; современное время показывается напрямую, а
    подпись Еноха определяется положением события на той же 18-частной шкале,
    что используется для Солнца.
- [Astro-Seek — лунный календарь](https://mooncalendar.astro-seek.com/?)
  - используется как независимая календарная проверка дня новолуния.
- [MoonConnection — Moon Phases Calendar](https://www.moonconnection.com/moon_phases_calendar.phtml)
  - используется как дополнительная проверка фазы по месяцу и году; этот сайт рассчитывает данные в часовом поясе устройства.

Эти три страницы Луны не имеют подключённого к проекту публичного API. Поэтому калькулятор не копирует с них готовую дату автоматически: он выполняет локальный числовой расчёт и даёт прямые ссылки для независимой ручной сверки.

## Контрольный пример: Торонто, 2026

- equalux: 17 марта;
- минимум освещённости Луны: вечером 18 марта, уже после заката;
- первый подходящий закат: вечером 19 марта;
- светлая часть первого дня приходится на 20 марта;
- поэтому месяц I, день 1 показывается как **20 марта 2026 года**;
- следующий год начинается после следующего весеннего equalux и новолуния — 7 апреля 2027 года;
- между этими началами находятся 13 лунных месяцев общей длительностью 383 дня;
- месяц VII начинается 12 сентября, а Суккот VII·15 приходится на 26 сентября.

## Модель проекта

Визуальное объяснение календаря в этом проекте строится на плоской модели с куполом. Внешняя интерактивная схема для сравнения:

- [Flat Earth Dome Model — Walter Bislin](https://walter.bislins.ch/bloge/index.asp?page=Flat+Earth+Dome+Model&state=--81.8871933-476.430252-11.2218487-111779.571-41-11-10-30-20.96638655-3)
