Двумерная структура отображения 2/3: каскад и симметрия
Двумерная структура дискретного отображения с показателем : каскад узлов, вторая степень свободы и зеркальная симметрия
УДК: 521.3 + 517.9
Авторы: Шунько Михаил Геннадиевич, Выпускник БНТУ ФИТР 2012
Ключевые слова: дискретное отображение, каскад узлов, двумерная динамика, показатель Ляпунова, производная проекция, вторая степень свободы, зеркальная симметрия, резонанс Кирквуда, Солнечная система
Аннотация
Цель. Раскрыть внутреннюю структуру дискретного отображения с показателем , исследованного в предыдущей работе автора, и установить связь между одномерной проекцией и породившим её двумерным состоянием .
Методы. Показано, что характерные координаты и , полученные в работе [1] из систем нелинейных уравнений, являются зерном и первым узлом двумерного каскада в пространстве с чередованием двух правил преобразования: Q (носитель — разность ) и R (носитель — корень суммы ). Построен каскад из 16 узлов. Определены неподвижные точки одномерной и двумерной систем. Вычислены показатели Ляпунова для прямого и обратного направлений эволюции. Проведено сопоставление 31 узла каскада с 14 астрономическими объектами Солнечной системы.
Результаты. Доказана первичность двумерного состояния относительно одномерной проекции : преобразование использует только , а наследует начальное условие и последовательность режимов, теряя информацию об отношении . Обнаружена вторая степень свободы — отношение осциллирует между и , образуя предельный цикл с показателем тройки . Установлена зеркальная симметрия показателей Ляпунова как точное алгебраическое тождество: , , . Обе системы устойчивы в прямом направлении, но сходятся к разным неподвижным точкам: 1D — к AU, 2D — к AU. Из 31 узла 24 совпадают с астрономическими объектами с погрешностью менее 20%, включая точное попадание в щель Кирквуда 3:1 () и резонанс 2:1 ().
Выводы. Одномерная проекция — производная: она сохраняет устойчивость и астрономические совпадения, но скрывает вторую степень свободы и сдвигает неподвижную точку. Число 3 выполняет двойную роль: переключатель режимов и инвертор устойчивости при обращении времени. Зеркальная симметрия направлений — точное алгебраическое тождество, не приближённый результат.
Ключевые слова: дискретное отображение, каскад узлов, двумерная динамика, показатель Ляпунова, производная проекция, вторая степень свободы, зеркальная симметрия, резонанс Кирквуда, Солнечная система, численное моделирование.
Введение
В предыдущей работе автора [1] было предложено дискретное отображение с чередованием операций возведения в квадрат (, нечётные шаги) и извлечения кубического корня (, чётные шаги). Двухшаговая композиция даёт показатель , совпадающий с показателем третьего закона Кеплера [7]. Методом Монте-Карло (100 000 испытаний) показано, что при AU отображение поражает 7 из 7 астрономических мишеней с вероятностью случайного достижения [1].
В работе [1] начальное значение AU было получено из системы нелинейных уравнений, связывающих три переменные , , . Решение этой системы — точка , где AU. Вторая система уравнений дала точку , причём переход от к осуществляется по правилу , что соответствует нечётному шагу отображения. Однако в работе [1] координаты точек и не были исследованы: одномерная модель использовала только .
Настоящая работа решает три вопроса, оставшиеся открытыми в [1]. Во-первых, какова роль координат и как они связаны с . Во-вторых, откуда структурно возникает показатель . В-третьих, какова связь между прямой и обратной динамикой отображения.
Показано, что и — первые два узла двумерного каскада в пространстве , а — производная проекция этого каскада. Обнаружена вторая степень свободы — отношение , недоступное из одномерной проекции. Найдена зеркальная симметрия показателей Ляпунова между прямым и обратным направлениями эволюции.
Математическая модель
От точек , к двумерному каскаду
В работе [1] точка была получена из системы уравнений (7), а — из системы (8) (см. Приложение А в [1]). Третья координата интерпретировалась как , а первые две оставались неисследованными.
Рассмотрим как двумерное состояние системы. Точка — зерно:
Покажем, что точка получается из применением правила Q. Носитель — разность . Тогда:
Это в точности координаты . Третья координата: — также совпадает с точки .
Таким образом, — зерно каскада (узел ), — первый узел (n = 1, режим Q). Переход , отмеченный в работе [1] как «соответствующий нечётному шагу отображения», раскрывается как применение правила Q к двумерному состоянию .
Композиция двух операций
Показатель возникает как композиция двух операций, чередуемых основанием 3. Двухшаговая композиция в прямом направлении (вперёд):
Двухшаговая композиция в обратном направлении (назад, обращение времени) — последовательное применение обратных операций (куб, затем квадратный корень):
Показатели и — взаимно обратны:
Это точное алгебраическое тождество. Его происхождение структурно: двойка из режима «квадрат» и тройка из режима «корень» меняются местами при обращении времени. Прямой показатель совпадает с показателем третьего закона Кеплера [7], обратный — с обратной формулировкой .
Два правила преобразования
Преобразование из в осуществляется по одному из двух правил, чередуемых числом 3.
Правило Q «квадрат» (нечётный шаг). Носитель — разность :
Правило R «корень» (чётный шаг). Носитель — корень суммы :
Чередование: Q → R → Q → R → ... Первый шаг () — режим Q, что подтверждается формулами (5)–(6).
Первичность и производная проекция
Первичность означает, что состояние системы полностью описывается двумерным вектором, а — его необратимая проекция. Доказательство:
Факт 1. Преобразование (7)–(8) использует только текущего шага. Величина не входит ни в одну формулу.
Факт 2. Если известна только , отношение неопределимо. Например, может соответствовать с (точка ) или с (точка ). Одна и та же проекция — разные состояния.
Факт 3. Отношение эволюционирует независимо от (см. следующий раздел).
Проекция определяется через следующим образом: начальное условие (формула (4)), эволюция (режим Q) или (режим R). Масштабные коэффициенты (, ), присутствующие в формулах (7)–(8), в эволюции не участвуют. Таким образом, наследует от начальное условие и последовательность режимов, но теряет информацию о масштабе и отношении .
Вторая степень свободы — осцилляция
В режиме Q: .
В режиме R: .
Таким образом, принимает ровно два значения, чередуясь:
Начальное значение — единственный шаг с показателем ; далее система выходит на предельный цикл . В терминах показателя тройки — арифметическая прогрессия с шагом : .
Отношение — вторая степень свободы системы, не сводимая к . В одномерной модели [1] эта переменная отсутствует. Точка имеет — первый шаг предельного цикла.
Неподвижные точки
1D-система. Двухшаговая карта для в прямом направлении:
Неподвижная точка: AU — орбита Земли.
2D-система. Двухшаговая карта для носителя :
Неподвижная точка определяется из :
Обе системы устойчивы в прямом направлении, но сходятся к разным неподвижным точкам: 1D — к AU, 2D — к AU. Проекция «сдвигает» неподвижную точку, сохраняя тип устойчивости.
Зеркальная симметрия направлений
Показатель Ляпунова для степенной карты в окрестности неподвижной точки :
Для прямого направления ():
Для обратного направления ():
Точное тождество:
Следовательно:
Это точное алгебраическое тождество, не приближённый результат. Число 3 играет роль инвертора устойчивости: при обращении времени оно переходит из знаменателя в числитель, меняя знак показателя Ляпунова. Прямое направление устойчиво (): последовательность убывает к 1 AU. Обратное направление неустойчиво (): последовательность растёт, уходя в межзвёздное пространство.
Результаты
От к каскаду: первые узлы
Точка из работы [1] — зерно каскада (узел ). Точка — первый узел (, режим Q). Дальнейшее применение правил Q и R даёт каскад из 16 узлов. В таблице 1 приведены первые 8 узлов с указанием режима, отношения и модулей разности и суммы.
Таблица 1. Каскад узлов в пространстве (первые 8 шагов)
| N | Режим | a | b | a/b | a−b | a+b | Источник |
|---|---|---|---|---|---|---|---|
| 0 | Seed | −3,000 | −0,500 | 6,000 | 2,500 | 3,500 | A₁ из [1] |
| 1 | Q | −1,667 | −0,833 | 2,000 | 0,833 | 2,500 | A₂ из [1] |
| 2 | R | 0,614 | 1,842 | 0,333 | 1,228 | 2,456 | каскад |
| 3 | Q | −0,819 | −0,409 | 2,000 | 0,409 | 1,228 | каскад |
| 4 | R | 0,382 | 1,147 | 0,333 | 0,764 | 1,529 | каскад |
| 5 | Q | −0,510 | −0,255 | 2,000 | 0,255 | 0,765 | каскад |
| 6 | R | 0,279 | 0,836 | 0,333 | 0,557 | 1,115 | каскад |
| 7 | Q | −0,372 | −0,186 | 2,000 | 0,186 | 0,557 | каскад |
Узлы и — в точности точки и , полученные в работе [1] из независимых систем уравнений. Совпадение координат подтверждает, что системы уравнений (7) и (8) из [1] неявно кодируют первые шаги 2D-каскада.
Отношение строго чередуется: Носитель на Q-шаге равен на предыдущем R-шаге — прямая передача без потерь. Носитель монотонно убывает, сходясь к (на R-шагах) и (на Q-шагах).
Фазовый портрет каскада в координатах представлен на рис. 1. Точки образуют спираль, сходящуюся к началу координат, с чередованием знаков: Q-узлы — в третьей четверти (, ), R-узлы — в первой (, ).
Астрономические совпадения
Для каждого узла 1D-последовательности (31 узел: 15 шагов назад, зерно, 15 шагов вперёд) проводился поиск ближайшего астрономического объекта. Погрешность оценивалась как
Таблица 2. Попадание узлов каскада в астрономические объекты ()
| N | |cₙ| (AU) | Объект | Δ (%) |
|---|---|---|---|
| 0 | 2,500 | Щель Кирквуда 3:1 | 0,0 |
| -2 | 3,953 | Резонанс 2:1 | 0,1 |
| 4 | 1,503 | Орбита Марса | 1,1 |
| -1 | 1,581 | Орбита Марса | 4,0 |
| -8 | 103,4 | Рассеянный диск | 3,4 |
| -10 | 1052 | Афелий Седны | 5,2 |
| -9 | 10,17 | Орбита Сатурна | 6,6 |
| -11 | 32,4 | Орбита Нептуна | 7,7 |
| -7 | 4,694 | Орбита Юпитера | 9,7 |
| 12 | 1,084 | Орбита Земли | 8,4 |
Из 31 узла 24 совпадают с астрономическими объектами с . Точное совпадение () достигается для узла (зерно , 2,50 AU) с щелью Кирквуда 3:1 [5]. Резонанс 2:1 поражается с погрешностью 0,1%.
Последовательность в логарифмическом масштабе представлена на рис. 2. В прямом направлении (N > 0) последовательность сходится к 1 AU (орбита Земли). В обратном (N < 0) — расходится, проходя через Уран, рассеянный диск и афелий Седны. Сравнение неподвижных точек 1D и 2D — на рис. 3.
Обсуждение
Связь с работой [1]: от , к каскаду
В работе [1] точки и были получены из двух независимых систем нелинейных уравнений. Переход был отмечен как «соответствующий нечётному шагу отображения», но не объяснён структурно. Настоящая работа показывает, что — применение правила Q к двумерному состоянию , и этот шаг — лишь первый в бесконечном каскаде. Системы уравнений (7) и (8) из [1] неявно кодируют начальное условие и первый шаг 2D-динамики.
Почему проекция сохраняет совпадения
Одномерная проекция и двумерный носитель имеют одинаковый показатель Ляпунова — обе системы устойчивы вперёд. Различие лишь в неподвижной точке: 1D сходится к 1 AU, 2D — к AU. Это означает, что астрономические совпадения, обнаруженные в работе [1], описывают не «притяжение» системы к реальным орбитам, а прохождение проекции через реальные расстояния. Сами объекты (щель Кирквуда, орбита Марса и др.) не являются аттракторами — это точки на траектории проекции.
Роль числа 3
Число 3 выполняет в системе три функции:
- Переключатель режимов. Чередование Q и R управляется основанием 3 в формулах (7)–(8).
- Параметр показателя. Двухшаговая композиция даёт (вперёд) и (назад) — тройка из режима «корень» входит в показатель.
- Инвертор устойчивости. При обращении времени тройка переходит из знаменателя в числитель, меняя знак показателя Ляпунова: .
Совпадение управляющего числа 3 с резонансом Кирквуда 3:1 (период астероида относится к периоду Юпитера как 3:1) может указывать на структурную связь, заслуживающую отдельного исследования.
Ограничения
-
Обратный 2D-ход. Двумерное преобразование необратимо: проекция теряет информацию об отношении . Обратный ход построен только для 1D-последовательности .
-
Стартовая точка. Все результаты получены для единственного зерна (точка ). Устойчивость результатов к вариации начальных условий требует проверки методом Монте-Карло в 2D-пространстве.
-
Размер выборки. 31 узел — малая выборка. Расширение числа шагов и добавление новых астрономических мишеней позволит уточнить оценку значимости.
Перспективы
- Построение многокаскадной структуры — системы из нескольких зёрен с разными начальными условиями — и анализ связности между каскадами.
- Введение метрик (доля стабильных узлов) и (связность между каскадами) для количественного описания слоистой структуры.
- Исследование связи между второй степенью свободы и наблюдаемыми резонансами в Солнечной системе.
- Проверка гипотезы о фрактальной самоподобии: обладают ли каскады на разных масштабах одинаковой структурой при соответствующем масштабировании координат.
Заключение
Раскрыта внутренняя структура дискретного отображения с показателем , исследованного в работе [1]. Показано, что характерные координаты и , полученные в [1] из систем нелинейных уравнений, являются зерном и первым узлом двумерного каскада в пространстве . Переход — применение правила Q (носитель — разность , масштаб ).
Установлено, что одномерная последовательность является производной проекцией двумерного состояния : преобразование (7)–(8) использует только , а наследует начальное условие и последовательность режимов, теряя информацию об отношении .
Обнаружена вторая степень свободы — отношение , осциллирующее между и с показателем тройки . Эта динамика не видна из одномерной проекции и объясняет, почему точки и из [1] имеют разное отношение ( и соответственно) при одинаковой структуре преобразования.
Установлена зеркальная симметрия показателей Ляпунова как точное алгебраическое тождество: , где , . Число 3 — инвертор устойчивости.
Обе системы устойчивы в прямом направлении с одинаковым показателем Ляпунова, но сходятся к разным неподвижным точкам: 1D — к AU, 2D — к AU. Астрономические совпадения (24 из 31 узла, ) сохраняются, но переинтерпретируются: это точки на траектории проекции, а не аттракторы полной системы.
Дальнейшее исследование предполагает построение многокаскадной структуры и анализ связности между каскадами.
Список литературы
-
Шунько, М. Г. Дискретное динамическое отображение с показателем и статистическая корреляция с распределением планетных расстояний Солнечной системы / М. Г. Шунько // Engee. — 2026.
-
Titius, J. D. Betrachtung über das Verhältnis der mittlern Entfernungen der Planeten von der Sonne / J. D. Titius // Bode, J. E. (Hrsg.). Anleitung zur Kenntnis des gestirnten Himmels. — 1766. — S. 465–466.
-
Bode, J. E. Anleitung zur Kenntnis des gestirnten Himmels / J. E. Bode. — Berlin, 1772.
-
Hayes, W. Fitting random walks to the planetary distances / W. Hayes, S. Tremaine // Icarus. — 1998. — Vol. 135, № 2. — P. 549–557.
-
Kirkwood, D. On the theory of meteors / D. Kirkwood // Proc. Am. Assoc. Adv. Sci. — 1867. — Vol. 16. — P. 8–13.
-
Murray, C. D. Solar System Dynamics / C. D. Murray, S. F. Dermott. — Cambridge: Cambridge University Press, 1999. — 592 p.
-
Kepler, J. Harmonices Mundi Libri V / J. Kepler. — Linz, 1619.
-
Lissauer, J. J. Planet formation / J. J. Lissauer // Annu. Rev. Astron. Astrophys. — 1993. — Vol. 31. — P. 129–174.
-
Malhotra, R. The origin of Pluto's orbit: Implications for the solar system beyond Neptune / R. Malhotra // Astron. J. — 1995. — Vol. 110. — P. 420–429.
-
Ланда, П. С. Нелинейные колебания и волны / П. С. Ланда. — М.: Наука, 1997. — 496 с.
-
Шустер, Г. Детерминированный хаос: Введение / Г. Шустер. — М.: Мир, 1988. — 240 с.
-
Арнольд, В. И. Теория катастроф / В. И. Арнольд. — М.: Наука, 1990. — 128 с.
-
Несенчук, А. А. Параметрический синтез устойчивых семейств динамических систем / А. А. Несенчук, А. И. Осипян, С. М. Федорович // Наука и техника. — 2006. — № 6. — С. 43–47.
-
Сычев, В. А. Реализация дискретных нелинейных динамических систем с хаотическими режимами на арифметике с фиксированной запятой / В. А. Сычев // Информатика. — 2014. — № 3. — С. 80–88.
Приложение А. Вывод характерных координат
Подробный вывод точек и приведён в работе [1] (Приложение А). Здесь кратко воспроизводим основные шаги для полноты изложения.
А.1. Первая система уравнений (зерно )
Из второго уравнения: = + . Подставляя в третье: - - ( + ) = 1, откуда -2 = 1 и = . Тогда = + . Подставляя в первое: , откуда . Окончательно: = -3. Решение: = (; ; ). Начальное значение отображения: = = AU. В двумерной интерпретации: (, ) = (, ) = (, ) — зерно каскада (узел n = 0).
А.2. Вторая система уравнений (узел )
Из и получаем: вычитая из второго уравнения половину первого, , откуда . Тогда . Из следует .
Решение: . В двумерной интерпретации: — первый узел каскада (, режим Q).
А.3. Проверка: как правило Q
Носитель: . По формуле (7):
Третья координата: .
Все три координаты совпадают. Таким образом, переход , отмеченный в работе [1] как «соответствующий нечётному шагу отображения», раскрывается как применение правила Q к двумерному состоянию .
Приложение Б. Исходный код
Ниже приведён полный исходный код построения 2D-каскада, 1D-последовательности, проверки перехода и визуализации.
Листинг Б1. Построение 2D-каскада, 1D-последовательности, проверка и визуализация
using Plots
const STEPS = 15
const MID = STEPS + 1
# 2D-каскад (только вперёд)
function build_2d_forward(a0, b0, steps)
a = zeros(steps + 1)
b = zeros(steps + 1)
a[1] = a0
b[1] = b0
for i in 1:steps
if i % 2 == 1
S = a[i] - b[i]
a[i+1] = 2*S/3
b[i+1] = S/3
else
Sp = abs(a[i] + b[i])^(2/3)
a[i+1] = Sp/3
b[i+1] = Sp
end
end
return a, b
end
# 1D-последовательность (вперёд и назад)
function build_1d(c1, steps)
c = zeros(2*steps + 1)
c[MID] = c1
for i in 1:steps
if i % 2 == 1
c[MID + i] = abs(c[MID + i - 1])^2
else
c[MID + i] = abs(c[MID + i - 1])^(1/3)
end
end
for i in 1:steps
if i % 2 == 1
c[MID - i] = abs(c[MID - i + 1])^(1/2)
else
c[MID - i] = abs(c[MID - i + 1])^3
end
end
return c
end
a_seq, b_seq = build_2d_forward(-3.0, -0.5, STEPS)
c_seq = build_1d(2.5, STEPS)
c_abs = abs.(c_seq)
# Проверка: A1 -> A2
println("=== Проверка A1 -> A2 ===")
println("A1 (зерно): a0 = ", a_seq[1], ", b0 = ", b_seq[1], ", c0 = ", abs(c_seq[MID]))
println("A2 (шаг Q): a1 = ", a_seq[2], ", b1 = ", b_seq[2], ", c1 = ", abs(c_seq[MID+1]))
println("Ожидалось: a1 = -5/3 = ", -5/3, ", b1 = -5/6 = ", -5/6, ", c1 = 25/4 = ", 25/4)
println()
# Рис. 1: фазовый портрет (a, b)
scatter(a_seq, b_seq, marker=:circle, ms=6,
xlabel="a", ylabel="b",
label="Узлы каскада", legend=:topright,
title="Рис. 1. Каскад в (a, b) — 16 узлов вперёд",
color=:steelblue, size=(650, 500))
savefig("fig1_phase.png")
# Рис. 2: |c| по шагам (лог-шкала) + планеты
astro = [
(0.39, "Меркурий"), (0.72, "Венера"), (1.00, "Земля"),
(1.52, "Марс"), (2.50, "Кирквуд 3:1"), (3.95, "Рез. 2:1"),
(5.20, "Юпитер"), (9.54, "Сатурн"), (19.2, "Уран"),
(30.1, "Нептун"), (39.5, "Плутон"), (100.0, "Расс. диск"),
(500.0, "Облако Оорта"), (1000.0, "Седна"),
]
c_plot = [min(v, 1e4) for v in c_abs]
scatter(-STEPS:STEPS, c_plot, marker=:circle, ms=5,
label="Узлы |c|", color=:steelblue,
yscale=:log10, xlabel="Шаг N", ylabel="|c| (AU, log)",
title="Рис. 2. Узлы каскада и астрономические объекты",
legend=:right, size=(850, 450))
for (dist, name) in astro
if dist <= 1e4
hline!([dist], ls=:dash, color=:gray, alpha=0.3)
annotate!(STEPS - 1, dist * 1.08, text(name, 7, :gray))
end
end
savefig("fig2_astronomy.png")
# Рис. 3: сравнение 1D и 2D неподвижных точек
S_2d = [abs(a_seq[i] - b_seq[i]) for i in 1:STEPS+1]
c_fwd_only = [abs(c_seq[MID + i]) for i in 0:STEPS]
p1 = plot(0:STEPS, c_fwd_only, marker=:circle, ms=5,
label="|c| 1D", color=:steelblue, lw=2,
xlabel="Шаг N", ylabel="Значение (log)",
title="1D: сходимость к 1 AU",
yscale=:log10, size=(420, 400))
hline!(p1, [1.0], ls=:dash, color=:green, alpha=0.5, label="c* = 1")
p2 = plot(0:STEPS, S_2d, marker=:circle, ms=5,
label="|a-b| 2D", color=:crimson, lw=2,
xlabel="Шаг N", ylabel="Значение (log)",
title="2D: сходимость к 8/27",
yscale=:log10, size=(420, 400))
hline!(p2, [8/27], ls=:dash, color=:orange, alpha=0.5, label="S* = 8/27")
plot(p1, p2, layout=(1,2), size=(900, 400),
plot_title="Рис. 3. Неподвижные точки: 1D (1 AU) и 2D (8/27)")
savefig("fig3_fixed_points.png")
# Таблица узлов
println(" N | a | b | a/b | |a-b| | |a+b| | Тип")
println("----|-------------|-------------|---------|-----------|-----------|----")
for i in 0:STEPS
idx = i + 1
ratio = b_seq[idx] != 0 ? a_seq[idx]/b_seq[idx] : NaN
diff_val = abs(a_seq[idx] - b_seq[idx])
sum_val = abs(a_seq[idx] + b_seq[idx])
node_type = i == 0 ? "Seed" : (i % 2 == 1 ? "Q" : "R")
a_s = rpad(string(round(a_seq[idx], digits=4)), 11)
b_s = rpad(string(round(b_seq[idx], digits=4)), 11)
r_s = rpad(string(round(ratio, digits=4)), 7)
d_s = rpad(string(round(diff_val, digits=4)), 9)
s_s = rpad(string(round(sum_val, digits=4)), 9)
println(lpad(i, 2), " | ", a_s, " | ", b_s, " | ", r_s, " | ", d_s, " | ", s_s, " | ", node_type)
end
# Астрономические совпадения
println("\n N | |c| (AU) | Объект | Δ (%)")
println("----|-----------|--------------------|-------")
for n in -STEPS:STEPS
val = abs(c_seq[MID + n])
if val > 0 && val < 1e10
best_d = Inf
best_name = ""
for (dist, name) in astro
d = abs(val - dist) / dist * 100
if d < best_d
best_d = d
best_name = name
end
end
if best_d < 20
v_s = rpad(string(round(val, digits=3)), 9)
n_s = rpad(best_name, 18)
println(lpad(n, 2), " | ", v_s, " | ", n_s, " | ", round(best_d, digits=1))
end
end
end
Подписи к рисункам
Рис. 1. Фазовый портрет каскада в координатах — 16 узлов вперёд из зерна . Узел () — первый Q-шаг. Q-узлы — в третьей четверти (, ), R-узлы — в первой (, ). Спираль сходится к началу координат.
Рис. 2. Последовательность при AU (логарифмическая шкала по оси ординат). По оси абсцисс — номер шага (от до ). Горизонтальными пунктирными линиями отмечены границы 14 астрономических объектов. В прямом направлении (N > 0) последовательность сходится к 1 AU; в обратном (N < 0) — расходится, проходя через Уран, рассеянный диск и афелий Седны.
Рис. 3. Сравнение неподвижных точек 1D и 2D систем. Слева: одномерная проекция сходится к AU (орбита Земли). Справа: двумерный носитель сходится к AU. Обе системы устойчивы с одинаковым показателем Ляпунова , но к разным неподвижным точкам.
using Plots
const STEPS = 15
const MID = STEPS + 1
# 2D-каскад (только вперёд)
function build_2d_forward(a0, b0, steps)
a = zeros(steps + 1)
b = zeros(steps + 1)
a[1] = a0
b[1] = b0
for i in 1:steps
if i % 2 == 1
S = a[i] - b[i]
a[i+1] = 2*S/3
b[i+1] = S/3
else
Sp = abs(a[i] + b[i])^(2/3)
a[i+1] = Sp/3
b[i+1] = Sp
end
end
return a, b
end
# 1D-последовательность (вперёд и назад)
function build_1d(c1, steps)
c = zeros(2*steps + 1)
c[MID] = c1
for i in 1:steps
if i % 2 == 1
c[MID + i] = abs(c[MID + i - 1])^2
else
c[MID + i] = abs(c[MID + i - 1])^(1/3)
end
end
for i in 1:steps
if i % 2 == 1
c[MID - i] = abs(c[MID - i + 1])^(1/2)
else
c[MID - i] = abs(c[MID - i + 1])^3
end
end
return c
end
a_seq, b_seq = build_2d_forward(-3.0, -0.5, STEPS)
c_seq = build_1d(2.5, STEPS)
c_abs = abs.(c_seq)
# Проверка: A1 -> A2
println("=== Проверка A1 -> A2 ===")
println("A1 (зерно): a0 = ", a_seq[1], ", b0 = ", b_seq[1], ", c0 = ", abs(c_seq[MID]))
println("A2 (шаг Q): a1 = ", a_seq[2], ", b1 = ", b_seq[2], ", c1 = ", abs(c_seq[MID+1]))
println("Ожидалось: a1 = -5/3 = ", -5/3, ", b1 = -5/6 = ", -5/6, ", c1 = 25/4 = ", 25/4)
println()
# Рис. 1: фазовый портрет (a, b)
scatter(a_seq, b_seq, marker=:circle, ms=6,
xlabel="a", ylabel="b",
label="Узлы каскада", legend=:topright,
title="Рис. 1. Каскад в (a, b) — 16 узлов вперёд",
color=:steelblue, size=(650, 500))
savefig("fig1_phase.png")
# Рис. 2: |c| по шагам (лог-шкала) + планеты
astro = [
(0.39, "Меркурий"), (0.72, "Венера"), (1.00, "Земля"),
(1.52, "Марс"), (2.50, "Кирквуд 3:1"), (3.95, "Рез. 2:1"),
(5.20, "Юпитер"), (9.54, "Сатурн"), (19.2, "Уран"),
(30.1, "Нептун"), (39.5, "Плутон"), (100.0, "Расс. диск"),
(500.0, "Облако Оорта"), (1000.0, "Седна"),
]
c_plot = [min(v, 1e4) for v in c_abs]
scatter(-STEPS:STEPS, c_plot, marker=:circle, ms=5,
label="Узлы |c|", color=:steelblue,
yscale=:log10, xlabel="Шаг N", ylabel="|c| (AU, log)",
title="Рис. 2. Узлы каскада и астрономические объекты",
legend=:right, size=(850, 450))
for (dist, name) in astro
if dist <= 1e4
hline!([dist], ls=:dash, color=:gray, alpha=0.3)
annotate!(STEPS - 1, dist * 1.08, text(name, 7, :gray))
end
end
savefig("fig2_astronomy.png")
# Рис. 3: сравнение 1D и 2D неподвижных точек
S_2d = [abs(a_seq[i] - b_seq[i]) for i in 1:STEPS+1]
c_fwd_only = [abs(c_seq[MID + i]) for i in 0:STEPS]
p1 = plot(0:STEPS, c_fwd_only, marker=:circle, ms=5,
label="|c| 1D", color=:steelblue, lw=2,
xlabel="Шаг N", ylabel="Значение (log)",
title="1D: сходимость к 1 AU",
yscale=:log10, size=(420, 400))
hline!(p1, [1.0], ls=:dash, color=:green, alpha=0.5, label="c* = 1")
p2 = plot(0:STEPS, S_2d, marker=:circle, ms=5,
label="|a-b| 2D", color=:crimson, lw=2,
xlabel="Шаг N", ylabel="Значение (log)",
title="2D: сходимость к 8/27",
yscale=:log10, size=(420, 400))
hline!(p2, [8/27], ls=:dash, color=:orange, alpha=0.5, label="S* = 8/27")
plot(p1, p2, layout=(1,2), size=(900, 400),
plot_title="Рис. 3. Неподвижные точки: 1D (1 AU) и 2D (8/27)")
savefig("fig3_fixed_points.png")
# Таблица узлов
println(" N | a | b | a/b | |a-b| | |a+b| | Тип")
println("----|-------------|-------------|---------|-----------|-----------|----")
for i in 0:STEPS
idx = i + 1
ratio = b_seq[idx] != 0 ? a_seq[idx]/b_seq[idx] : NaN
diff_val = abs(a_seq[idx] - b_seq[idx])
sum_val = abs(a_seq[idx] + b_seq[idx])
node_type = i == 0 ? "Seed" : (i % 2 == 1 ? "Q" : "R")
a_s = rpad(string(round(a_seq[idx], digits=4)), 11)
b_s = rpad(string(round(b_seq[idx], digits=4)), 11)
r_s = rpad(string(round(ratio, digits=4)), 7)
d_s = rpad(string(round(diff_val, digits=4)), 9)
s_s = rpad(string(round(sum_val, digits=4)), 9)
println(lpad(i, 2), " | ", a_s, " | ", b_s, " | ", r_s, " | ", d_s, " | ", s_s, " | ", node_type)
end
# Астрономические совпадения
println("\n N | |c| (AU) | Объект | Δ (%)")
println("----|-----------|--------------------|-------")
for n in -STEPS:STEPS
val = abs(c_seq[MID + n])
if val > 0 && val < 1e10
best_d = Inf
best_name = ""
for (dist, name) in astro
d = abs(val - dist) / dist * 100
if d < best_d
best_d = d
best_name = name
end
end
if best_d < 20
v_s = rpad(string(round(val, digits=3)), 9)
n_s = rpad(best_name, 18)
println(lpad(n, 2), " | ", v_s, " | ", n_s, " | ", round(best_d, digits=1))
end
end
end