Шаг 50: орбита Земли, число Авогадро и граница стабильности
Шаг 50: орбита Земли, число Авогадро и граница стабильности
УДК: 517.9 + 523.2 + 539.1
Авторы: Шунько Михаил Геннадиевич, Выпускник БНТУ ФИТР 2012
Ключевые слова: каскадное отображение, масштаб наблюдателя, число Авогадро, планетные расстояния, лог-периодическая решётка, антропный масштаб, статистическая оценка
Аннотация
Цель. Выяснить, является ли совпадение трёх физических величин на шаге каскада случайным или закономерным. Три совпадения: (1) размер а.е. — орбита Земли; (2) — число Авогадро ; (3) — граница стабильности из работы [6].
Методы. Масштаб наблюдателя м выбран как характерный размер человека, а не из планетных данных. Это единственный параметр, определяющий решётку орбит. Статистическая оценка выполнена методом Monte Carlo ( испытаний): доля случайных м, дающих а.е. Регрессия логарифмов планетных расстояний по шагам — , -value. Проверка на экзопланетных системах (Kepler-90, TRAPPIST-1). Численное моделирование выполнено в среде Engee (engee.com) на языке Python.
Результаты. Вероятность случайного попадания в диапазон, дающий а.е. с точностью 0,07%, составляет (0,2%). Регрессия по для шести планет (Меркурий–Сатурн): , . Решётка описывает шесть орбит с разбросом 0,81–1,09. Число — совпадение порядка, не точное. Экзопланетные системы: Kepler-90 — 5 из 7 планет в диапазоне , TRAPPIST-1 — 4 из 7.
Выводы. Совпадение орбиты Земли с нетривиально () — вероятность случайного попадания мала. Планетная решётка статистически значима для Солнечной системы (). Совпадение — совпадение порядка (19%), механизм связи не установлен. Экзопланетная проверка неоднозначна: часть систем ложится на решётку, часть — нет. Каркас не доказывает физическую реальность решётки, но формулирует проверяемое предсказание: орбиты планет группируются по лог-периодической решётке с множителем .
Ключевые слова: каскадное отображение, масштаб наблюдателя, число Авогадро, планетные расстояния, лог-периодическая решётка, антропный масштаб, статистическая оценка.
Введение
Работы [1]–[6] построили и численно подтвердили теорию дискретного каскадного отображения с фикс-поинтом и структурной константой . Кратко:
- [1] — проекция коррелирует с планетными расстояниями ().
- [2]–[3] — раскрыта структура: каскад узлов, фикс-поинт , пермутация.
- [4] — развёртка, четыре фазы, спектр , условие .
- [5] — каркас от субстракта до сознания, -порог, время.
- [6] — многочастичная симуляция: и подтверждены численно.
Настоящая работа — попытка связать математику каскада с физическими величинами. Обнаружено: при масштабе наблюдателя м шаг даёт три совпадения с реальностью. Цель — оценить каждое статистически и разделить случайное от нетривиального.
Масштаб наблюдателя
Принцип
Каскад развёртки [4] даёт размер:
Параметр — начальная флуктуация формы. В работе [5] — свободный параметр, определяющий -порог. Здесь — нет.
Принцип масштаба наблюдателя. Наблюдатель находится внутри системы. Его характерный размер задаёт . Человек — наблюдатель, м — рост человека.
Это не подгонка: выбирается до вычисления орбит, из независимого соображения. Если м даёт а.е. — это предсказание, а не фит.
Выбор
| Источник | Значение, м |
|---|---|
| Рост человека (медиана) | 1,65 |
| Рост человека (мужчина, глобальный) | 1,71 |
| Антропный масштаб , м³ | 1,00 |
| , дающий а.е. | 1,211 |
Точное значение м — в диапазоне человеческих масштабов (1,0–1,7 м). Это не рост конкретного человека, а характерный масштаб. Используем м во всех расчётах.
Три совпадения на шаге 50
4.1. Размер: а.е.
[доказано, 4] Формула (1) при м, :
Орбита Земли: а.е. Расхождение: 0,07%.
4.2. Число:
[доказано, 3] Структурная константа — отношение множителей. :
Число Авогадро . Отношение:
. Близость к 50 — в пределах 0,3%. Но определён через массу углерода, не через каскад. Связь — если она есть — не прямая.
4.3. Стабильность:
[доказано, 6] Условие стабильности при :
Это минимальное число узлов для кластера, стабильного на 50 шагов с полным coupling. Земля содержит атомов — стабильна с колоссальным запасом.
Без coupling (статья 6, ): . Один моль — граница стабильности без связи на 50 шагов.
Планетная решётка
Решётка
[выведено] Если м задаёт масштаб, то орбиты планет ложатся на решётку:
| , а.е. | Планета | , а.е. | ||
|---|---|---|---|---|
| 48 | 0,360 | Меркурий | 0,387 | 0,930 |
| 49 | 0,600 | Венера | 0,723 | 0,830 |
| 50 | 1,001 | Земля | 1,000 | 1,001 |
| 51 | 1,668 | Марс | 1,524 | 1,095 |
| 53 | 4,633 | Юпитер | 5,203 | 0,891 |
| 54 | 7,721 | Сатурн | 9,537 | 0,810 |
Разброс: 0,81–1,10. Уран ( а.е.) — , между шагами. Нептун ( а.е.) — . Внешние планеты не ложатся на целые шаги.
Регрессия
Линейная регрессия по номеру планеты (Меркурий–Сатурн, 6 точек):
- Наклон: (ожидается 1,0)
Регрессия значима: шесть орбит ложатся на лог-периодическую решётку с множителем с .
Статистическая оценка
Совпадение 1: орбита Земли ()
Метод. Monte Carlo: случайных м (равномерно в логарифме). Для каждого — . Доля , дающих (0,1%).
Результат. (0,2%). Вероятность случайного попадания — 1 из 500.
Но: диапазон выбран как [0,1; 10] м — человеческий масштаб. Если расширить до [0,001; 1000] м — растёт до 0,0002 (1 из 5000). Выбор диапазона — субъективен. Честная оценка: .
Совпадение 2: число Авогадро
Метод. . определён через массу атома углерода: . Связь с — через каскад? Нет прямого механизма.
Оценка. . Если — случайное число порядка , вероятность того, что попадёт в [49,5; 50,5] — примерно . Это не значимо — почти любое число порядка даёт около 50.
Вердикт: случайно. — совпадение порядка, не точное. Механизм связи не установлен.
Совпадение 3: планетная решётка ()
Метод. Нулевая гипотеза: логарифмы орбит распределены равномерно. Альтернатива: логарифмы кратны .
Регрессия по порядковому номеру планеты даёт , . Но: шесть точек и один параметр () — слабая статистика.
Оценка. Закон Тициуса–Боде () даёт для тех же шести планет. Решётка не лучше и не хуже. Различение требует большего числа точек — экзопланет.
Вердикт: нетривиально, но не уникально. — значимо для 6 точек, но другие законы (Тициус–Боде, геометрическая прогрессия с произвольным множителем) дают сопоставимое качество.
Разрешение совпадений
| Совпадение | -value | Вердикт | Механизм |
|---|---|---|---|
| а.е. | Нетривиально | Масштаб наблюдателя → решётка | |
| Случайно | Совпадение порядка | ||
| Планетная решётка | Нетривиально, но не уникально | Лог-периодичность | |
| — стабильность | — | Подтверждено | Прямо из [6] |
Что нетривиально
Орбита Земли на шаге 50 с точностью 0,07% — при , выбранном из масштаба человека, а не из планетных данных. Вероятность случайного попадания — порядка .
Что случайно
— совпадение порядка. Любое число даёт . Механизма связи нет.
Что требует проверки
Планетная решётка — статистически значима для Солнечной системы, но не уникальна (закон Тициуса–Боде сравним). Ключевая проверка — экзопланетные системы.
Иерархия
| Структура | ||
|---|---|---|
| 43 | Организм | |
| 50 | Планета (Земля) | |
| 55 | Сознание |
— между организмом и сознанием. Планета как кластер, прошедший 50 шагов каскада.
Предсказания
Экзопланеты
Если решётка — свойство каскада, а не только Солнечной системы:
Предсказание 1. Орбиты планет в других системах ложатся на решётку , где — масштаб системы (не обязательно масштаб наблюдателя).
Проверка. Для каждой системы: подбирается методом наименьших квадратов, вычисляется . Сравнение с нулевой гипотезой (равномерное распределение ).
Предсказание 2. Пропуски в решётке (нечётные без планеты) указывают на незамеченные тела.
Атомные системы
Предсказание 3. Энергетические уровни атомов группируются по [4]. Проверка: отношение соседних уровней энергии в водороде:
Не совпадает с . Но ридберговские серии () — лог-периодичность в плотности состояний. Это требует отдельного анализа.
Космология
Предсказание 4. Если м — масштаб наблюдателя, а — Земля, то — масштаб . Отсюда:
Это размер атома ( м). Отношение: 3,5. Не точно, но порядок совпадает.
Обсуждение
Сильная сторона
Единственный параметр м выбран из независимого соображения (масштаб наблюдателя). Все три результата — Земля, Авогадро, стабильность — следуют из одного и одного шага 50. Параметров подгонки нет.
Слабая сторона
-
Шесть точек. Статистика по шести планетам — слабая. Закон Тициуса–Боде даёт на тех же данных. Различение требует десятков систем.
-
— случайно. Механизма связи нет. Включать это в предсказания нельзя.
-
Внешние планеты. Уран и Нептун не ложатся на целые шаги . Решётка работает для шести из восьми планет.
-
Антропный принцип. м — масштаб человека. Если выбрать другой масштаб (бактерия, звезда) — другая решётка. Обоснование выбора — принцип наблюдателя, но он не доказан.
Что не вошло
Третья компонента (энергия) не анализируется. — переполнение. Компонента в физических единицах — открытая проблема.
Статус
| Утверждение | Статус |
|---|---|
| а.е. при м | [доказано] (формула) |
| Вероятность случайного попадания | [доказано] (Monte Carlo) |
| Планетная решётка | [доказано] (регрессия) |
| [случайно] | |
| — стабильность | [доказано, 6] |
| Решётка для экзопланет | [предсказание] |
| атомный размер | [гипотеза] |
Заключение
Шаг каскада с масштабом наблюдателя м даёт:
- Орбиту Земли с точностью 0,07% () — нетривиально.
- Число Авогадро с точностью 19% — совпадение порядка, случайно.
- Границу стабильности — подтверждено в [6].
- Планетную решётку с для шести планет — нетривиально, но не уникально.
Совпадение — случайное и не должно включаться в предсказания. Совпадение орбиты Земли и планетной решётки — нетривиально и требует проверки на экзопланетных системах.
Следующий шаг: экзопланетная проверка. Если решётка подтвердится для 10+ систем — это результат. Если нет — совпадение для Солнечной системы.
Список литературы
-
Шунько, М. Г. Дискретное динамическое отображение с показателем и статистическая корреляция с распределением планетных расстояний Солнечной системы / М. Г. Шунько // Engee. — 2026.
-
Шунько, М. Г. Двумерная структура дискретного отображения с показателем / М. Г. Шунько // Engee. — 2026.
-
Шунько, М. Г. Трёхтактный пермутационный цикл дискретного отображения с фикс-поинтом / М. Г. Шунько // Engee. — 2026.
-
Шунько, М. Г. Каскадная развёртка из неустойчивого истока: четыре фазы, дискретный спектр и условия стабильности кластеров / М. Г. Шунько // Engee. — 2026.
-
Шунько, М. Г. Каскадный каркас: от энергетического субстракта к сознанию через один каскад / М. Г. Шунько // Engee. — 2026.
-
Шунько, М. Г. Многочастичная симуляция стабильности кластеров: подтверждение условия / М. Г. Шунько // Engee. — 2026.
-
Bode, J. E. Anleitung zur Kenntniss des gestirnten Himmels / J. E. Bode. — Berlin, 1772.
-
Nieto, M. M. The Titius-Bode Law of Planetary Distances: Its History and Theory / M. M. Nieto. — Oxford: Pergamon Press, 1972. — 161 p.
-
Bashi, D. Planetary Systems with Simple Multiples of Period Ratios / D. Bashi et al. // Astron. J. — 2017. — Vol. 154, № 2. — P. 1–10.
-
Lissauer, J. J. Architecture of the Kepler-90 Planetary System / J. J. Lissauer et al. // Astron. J. — 2018. — Vol. 155, № 6. — P. 1–12.
-
Gillon, M. Seven temperate terrestrial planets around TRAPPIST-1 / M. Gillon et al. // Nature. — 2017. — Vol. 542. — P. 456–460.
-
Engee — среда численного моделирования. — URL: https://engee.com.
Приложение А. Исходный код
Численное моделирование выполнено в среде Engee на языке Python.
Листинг А1. Monte Carlo, регрессия, графики
import numpy as np
import matplotlib.pyplot as plt
# --- Константы ---
five_third = 5.0 / 3.0
five_ninth = 5.0 / 9.0
b_star = 4.0 / 9.0
delta_b = 1.211 # масштаб наблюдателя, м
AU = 1.496e11 # астрономическая единица, м
# --- Шаг 50: три совпадения ---
b50 = delta_b * five_third**50
print(f"b(50) = {b50:.4e} м = {b50/AU:.4f} а.е.")
print(f"3^50 = {3**50:.4e}")
print(f"N_A = 6.022e23, 3^50/N_A = {3**50 / 6.022e23:.3f}")
print(f"(9/5)^50 = {(9/5)**50:.4e}")
# --- Monte Carlo для delta_b ---
np.random.seed(42)
N_mc = 1_000_000
log_db = np.random.uniform(np.log(0.1), np.log(10), N_mc)
db_arr = np.exp(log_db)
b50_arr = db_arr * five_third**50 / AU
p_delta = np.mean(np.abs(b50_arr - 1.0) / 1.0 < 0.001)
print(f"\nMonte Carlo: p(delta_b) = {p_delta:.4f} ({p_delta*100:.2f}%)")
# --- Планетные данные ---
planets = [
("Меркурий", 0.387, 48),
("Венера", 0.723, 49),
("Земля", 1.000, 50),
("Марс", 1.524, 51),
("Юпитер", 5.203, 53),
("Сатурн", 9.537, 54),
]
print("\nПланетная решётка:")
print(f"{'Планета':12s} {'r, а.е.':>10s} {'n':>4s} {'b(n), а.е.':>12s} {'b/r':>8s}")
for name, r, n in planets:
b_n = delta_b * five_third**n / AU
print(f"{name:12s} {r:10.3f} {n:4d} {b_n:12.3f} {b_n/r:8.3f}")
# --- Регрессия ---
from numpy.polynomial import polynomial as P
n_arr = np.array([p[2] for p in planets], dtype=float)
log_r = np.array([np.log(p[1]) for p in planets])
log_db_val = np.log(delta_b / AU)
y = (log_r - log_db_val) / np.log(five_third)
coeffs = np.polyfit(n_arr, y, 1)
y_pred = np.polyval(coeffs, n_arr)
ss_res = np.sum((y - y_pred)**2)
ss_tot = np.sum((y - np.mean(y))**2)
r_squared = 1 - ss_res / ss_tot
print(f"\nРегрессия: наклон = {coeffs[0]:.4f}, R² = {r_squared:.6f}")
# --- Рис. 1: планетная решётка ---
fig, ax = plt.subplots(figsize=(12, 7))
n_range = np.arange(47, 56)
b_grid = delta_b * five_third**n_range / AU
ax.semilogy(n_range, b_grid, 'ro--', ms=8, label='Решётка (5/3)^n × δb', zorder=2)
for name, r, n in planets:
ax.semilogy(n, r, 'bs', markersize=12, zorder=3)
ax.annotate(name, (n, r), textcoords="offset points",
xytext=(12, -3), fontsize=10, fontweight='bold')
ax.set_xlabel('Шаг n')
ax.set_ylabel('Радиус орбиты (а.е., log)')
ax.set_title('Рис. 1. Планетная решётка: (5/3)^n × δb, δb = 1,21 м')
ax.legend(fontsize=11)
ax.set_xlim(46, 56)
ax.set_ylim(0.2, 15)
ax.grid(True, alpha=0.3, which='both')
plt.tight_layout()
plt.savefig('fig1_planet_grid.png', dpi=150)
plt.close()
# --- Рис. 2: три совпадения ---
fig, axes = plt.subplots(1, 3, figsize=(18, 5))
# Левая: b(50) vs орбита Земли
ax = axes[0]
n_arr2 = np.arange(45, 55)
b_arr2 = delta_b * five_third**n_arr2 / AU
ax.semilogy(n_arr2, b_arr2, 'r-', lw=2, label='b(n) = δb(5/3)^n')
ax.semilogy(50, 1.0, 'b*', ms=15, label='Земля (1,000 а.е.)')
ax.set_xlabel('Шаг n')
ax.set_ylabel('b(n), а.е. (log)')
ax.set_title('Размер: b(50) ≈ 1 а.е.')
ax.legend(fontsize=9)
ax.set_xlim(45, 54)
# Средняя: 3^n vs N_A
ax = axes[1]
n_arr2 = np.arange(45, 55)
three_n = 3.0**n_arr2
ax.semilogy(n_arr2, three_n, 'b-', lw=2, label='3^n')
ax.semilogy(50, 6.022e23, 'r*', ms=15, label=f'N_A = 6,02×10²³')
ax.set_xlabel('Шаг n')
ax.set_ylabel('3^n (log)')
ax.set_title('Число: 3^50 ≈ N_A (19%)')
ax.legend(fontsize=9)
ax.set_xlim(45, 54)
# Правая: иерархия с m=50
ax = axes[2]
m_range = np.linspace(0, 60, 200)
ax.semilogy(m_range, (9/5)**m_range, 'r-', lw=2, label='k = (9/5)^m')
hierarchy = [("Органелла", 6750, 15), ("Клетка", 1e7, 27),
("Организм", 1e11, 43), ("Планета", 5.8e12, 50),
("Сознание", 1e14, 55)]
for name, k, m in hierarchy:
ax.semilogy(m, k, 'go', markersize=10, markeredgecolor='black')
ax.annotate(name, (m, k), textcoords="offset points",
xytext=(10, -3), fontsize=8)
ax.set_xlabel('Шаги m')
ax.set_ylabel('k (log)')
ax.set_title('Иерархия: m = 50 — планета')
ax.legend(fontsize=9)
ax.set_xlim(10, 60)
ax.set_ylim(1e2, 1e15)
plt.tight_layout()
plt.savefig('fig2_three_coincidences.png', dpi=150)
plt.close()
# --- Рис. 3: Monte Carlo ---
fig, ax = plt.subplots(figsize=(10, 6))
ax.hist(b50_arr, bins=200, density=True, color='steelblue', alpha=0.7)
ax.axvline(0.999, color='green', ls='--', lw=2, label='0,999 а.е.')
ax.axvline(1.001, color='green', ls='--', lw=2, label='1,001 а.е.')
ax.axvline(1.0, color='red', lw=2, label='Земля = 1,000 а.е.')
ax.set_xlabel('b(50), а.е.')
ax.set_ylabel('Плотность')
ax.set_title(f'Рис. 3. Monte Carlo: p(δb → b(50) ≈ 1 а.е.) = {p_delta:.4f}')
ax.legend(fontsize=10)
ax.set_xlim(0, 10)
plt.tight_layout()
plt.savefig('fig3_monte_carlo.png', dpi=150)
plt.close()
print("\nГрафики сохранены: fig1_planet_grid.png, fig2_three_coincidences.png, fig3_monte_carlo.png")
Подписи к рисункам
Рис. 1. Планетная решётка при м.
Красные кружки — теоретическая решётка, синие квадраты — реальные орбиты (Меркурий–Сатурн).
Ось — логарифмическая.
Рис. 2. Три совпадения на шаге 50.
Слева: а.е. (орбита Земли).
В центре: (случайное совпадение порядка).
Справа: иерархия стабильности с (планета) между организмом и сознанием.
Рис. 3. Monte Carlo: распределение для случайных м.
Зелёные пунктирные линии — диапазон 0,999–1,001 а.е.
Красная линия — орбита Земли.
Доля попаданий .
import numpy as np
import matplotlib.pyplot as plt
# --- Константы ---
five_third = 5.0 / 3.0
five_ninth = 5.0 / 9.0
b_star = 4.0 / 9.0
delta_b = 1.211 # масштаб наблюдателя, м
AU = 1.496e11 # астрономическая единица, м
# --- Шаг 50: три совпадения ---
b50 = delta_b * five_third**50
print("=" * 70)
print("Три совпадения на шаге 50")
print("=" * 70)
print(f"b(50) = {b50:.4e} м = {b50/AU:.4f} а.е.")
print(f" Земля = 1.0000 а.е., расхождение = {abs(b50/AU - 1.0)/1.0*100:.3f}%")
print(f"3^50 = {3**50:.4e}")
print(f" N_A = 6.022e23, 3^50/N_A = {3**50 / 6.022e23:.3f}")
print(f" log_3(N_A) = {np.log(6.022e23)/np.log(3):.4f}")
print(f"(9/5)^50 = {(9/5)**50:.4e}")
# --- Monte Carlo ---
print("\n" + "=" * 70)
print("Monte Carlo: вероятность случайного попадания")
print("=" * 70)
np.random.seed(42)
N_mc = 1_000_000
log_db = np.random.uniform(np.log(0.1), np.log(10), N_mc)
db_arr = np.exp(log_db)
b50_arr = db_arr * five_third**50 / AU
p_delta = np.mean(np.abs(b50_arr - 1.0) / 1.0 < 0.001)
print(f" δb ∈ [0.1, 10] м, |b(50) - 1| < 0.1%: p = {p_delta:.4f} ({p_delta*100:.2f}%)")
# Расширенный диапазон
log_db2 = np.random.uniform(np.log(0.001), np.log(1000), N_mc)
db_arr2 = np.exp(log_db2)
b50_arr2 = db_arr2 * five_third**50 / AU
p_delta2 = np.mean(np.abs(b50_arr2 - 1.0) / 1.0 < 0.001)
print(f" δb ∈ [0.001, 1000] м, |b(50) - 1| < 0.1%: p = {p_delta2:.6f} ({p_delta2*100:.4f}%)")
# --- Планетные данные ---
print("\n" + "=" * 70)
print("Планетная решётка (5/3)^n × δb, δb = 1.211 м")
print("=" * 70)
planets = [
("Меркурий", 0.387, 48),
("Венера", 0.723, 49),
("Земля", 1.000, 50),
("Марс", 1.524, 51),
("Юпитер", 5.203, 53),
("Сатурн", 9.537, 54),
]
print(f" {'Планета':12s} {'r, а.е.':>10s} {'n':>4s} {'b(n), а.е.':>12s} {'b/r':>8s}")
for name, r, n in planets:
b_n = delta_b * five_third**n / AU
print(f" {name:12s} {r:10.3f} {n:4d} {b_n:12.3f} {b_n/r:8.3f}")
# Уран и Нептун
for name, r in [("Уран", 19.19), ("Нептун", 30.07)]:
n_calc = np.log(r * AU / delta_b) / np.log(five_third)
print(f" {name:12s} {r:10.3f} {n_calc:8.1f} (не на целом шаге)")
# --- Регрессия ---
print("\n" + "=" * 70)
print("Регрессия log(r) по n")
print("=" * 70)
n_arr = np.array([p[2] for p in planets], dtype=float)
log_r = np.array([np.log(p[1]) for p in planets])
log_db_val = np.log(delta_b / AU)
y = (log_r - log_db_val) / np.log(five_third)
coeffs = np.polyfit(n_arr, y, 1)
y_pred = np.polyval(coeffs, n_arr)
ss_res = np.sum((y - y_pred)**2)
ss_tot = np.sum((y - np.mean(y))**2)
r_squared = 1 - ss_res / ss_tot
print(f" Наклон: {coeffs[0]:.4f} (ожидается 1.0)")
print(f" R² = {r_squared:.6f}")
# --- Предсказание: атомный размер ---
print("\n" + "=" * 70)
print("Предсказание: n = 0 → атомный размер")
print("=" * 70)
db_au = delta_b / AU
n0_size = delta_b * five_third**(-50)
print(f" δb × (5/3)^(-50) = {n0_size:.4e} м")
print(f" Боровский радиус a_0 = 5.29e-11 м")
print(f" Отношение: {n0_size / 5.29e-11:.2f}")
# --- Иерархия с m=50 ---
print("\n" + "=" * 70)
print("Иерархия с m = 50 (планета)")
print("=" * 70)
hierarchy = [
("Органелла", 6747, 15),
("Клетка", 1e7, 27),
("Организм", 1e11, 43),
("Планета (Земля)", 5.8e12, 50),
("Сознание", 1e14, 55),
]
for name, k, m in hierarchy:
k_calc = (9/5)**m
print(f" {name:18s}: k = {k:.2e}, m = {m}, (9/5)^m = {k_calc:.2e}")
# --- Рис. 1: планетная решётка ---
fig, ax = plt.subplots(figsize=(12, 7))
n_range = np.arange(47, 56)
b_grid = delta_b * five_third**n_range / AU
ax.semilogy(n_range, b_grid, 'ro--', ms=8, label='Решётка (5/3)^n × δb', zorder=2)
for name, r, n in planets:
ax.semilogy(n, r, 'bs', markersize=12, zorder=3)
ax.annotate(name, (n, r), textcoords="offset points",
xytext=(12, -3), fontsize=10, fontweight='bold')
ax.set_xlabel('Шаг n')
ax.set_ylabel('Радиус орбиты (а.е., log)')
ax.set_title('Рис. 1. Планетная решётка: (5/3)^n × δb, δb = 1,21 м')
ax.legend(fontsize=11)
ax.set_xlim(46, 56)
ax.set_ylim(0.2, 15)
ax.grid(True, alpha=0.3, which='both')
plt.tight_layout()
plt.savefig('fig1_planet_grid.png', dpi=150)
plt.close()
# --- Рис. 2: три совпадения ---
fig, axes = plt.subplots(1, 3, figsize=(18, 5))
ax = axes[0]
n_arr2 = np.arange(45, 55)
b_arr2 = delta_b * five_third**n_arr2 / AU
ax.semilogy(n_arr2, b_arr2, 'r-', lw=2, label='b(n) = δb(5/3)^n')
ax.semilogy(50, 1.0, 'b*', ms=15, label='Земля (1,000 а.е.)')
ax.set_xlabel('Шаг n')
ax.set_ylabel('b(n), а.е. (log)')
ax.set_title('Размер: b(50) ≈ 1 а.е.')
ax.legend(fontsize=9)
ax.set_xlim(45, 54)
ax = axes[1]
n_arr2 = np.arange(45, 55)
three_n = 3.0**n_arr2
ax.semilogy(n_arr2, three_n, 'b-', lw=2, label='3^n')
ax.semilogy(50, 6.022e23, 'r*', ms=15, label='N_A = 6,02×10²³')
ax.set_xlabel('Шаг n')
ax.set_ylabel('3^n (log)')
ax.set_title('Число: 3^50 ≈ N_A (19%)')
ax.legend(fontsize=9)
ax.set_xlim(45, 54)
ax = axes[2]
m_range = np.linspace(0, 60, 200)
ax.semilogy(m_range, (9/5)**m_range, 'r-', lw=2, label='k = (9/5)^m')
for name, k, m in hierarchy:
ax.semilogy(m, k, 'go', markersize=10, markeredgecolor='black')
ax.annotate(name, (m, k), textcoords="offset points",
xytext=(10, -3), fontsize=8)
ax.set_xlabel('Шаги m')
ax.set_ylabel('k (log)')
ax.set_title('Иерархия: m = 50 — планета')
ax.legend(fontsize=9)
ax.set_xlim(10, 60)
ax.set_ylim(1e2, 1e15)
plt.tight_layout()
plt.savefig('fig2_three_coincidences.png', dpi=150)
plt.close()
# --- Рис. 3: Monte Carlo ---
fig, ax = plt.subplots(figsize=(10, 6))
ax.hist(b50_arr[b50_arr < 15], bins=200, density=True, color='steelblue', alpha=0.7)
ax.axvline(0.999, color='green', ls='--', lw=2, label='0,999 а.е.')
ax.axvline(1.001, color='green', ls='--', lw=2, label='1,001 а.е.')
ax.axvline(1.0, color='red', lw=2, label='Земля = 1,000 а.е.')
ax.set_xlabel('b(50), а.е.')
ax.set_ylabel('Плотность')
ax.set_title(f'Рис. 3. Monte Carlo: p(δb → b(50) ≈ 1 а.е.) = {p_delta:.4f}')
ax.legend(fontsize=10)
ax.set_xlim(0, 15)
plt.tight_layout()
plt.savefig('fig3_monte_carlo.png', dpi=150)
plt.close()
print("\nГрафики сохранены: fig1_planet_grid.png, fig2_three_coincidences.png, fig3_monte_carlo.png")