OrbitalModel

Версия 1.0

 

 

Общие сведения. 1

Инструкция по использованию.. 1

Система координат. 1

Исходные данные. 2

Программа управления. 3

Условия применения. 3

Шаг симуляции. 4

Возмущающая сила. 4

Направление силы. 4

Результаты. 5

Приложение А – Описание колонок 5

Страница Kepler 5

Страница Control 6

Страница Astronomy. 7

Приложение BFAQ. 7

 

 

Общие сведения

 

Модель служит для моделирования возмущенного орбитального движения тела в центральном поле тяготения. Использован метод моделирования, эквивалентный методу оскулирующих элементов.

 

Модель реализована в Microsoft Excel.

 

 

Инструкция по использованию

 

Спредшит состоит из нескольких страниц:

 

Main                - Главная страница. Содержит исходные данные, программу тяги/возмущающих сил и основные результаты

Kepler              - Симуляция состояния невозмущенной системы. Каждая строчка описывает поведение невозмущенной системы в какой-то период времени

Control            - Расчет возмущающих сил (в частности, тяги). Каждая строчка расчитывает значение возмущающей силы для какого-то периода времени

Astronomy       - Приближенное положение астрономических тел (Солнца, Луны, и т.д.)

 

 

Система координат

 

Используется инерциальная (абсолютная геоцентрическая экваториальная) система координат. Центральное тело (Земля) расположено в начале координат. Плоскость XY совпадает с плоскостью экватора, ось Z проходит через северный полюса, a oсь Х направлена в точку весеннего равноденствия.

Исходные данные

 

Секция INITIAL описывает начальное состояние тела в стартовой системе координат:

t           - дата и время

- соответствующий дате и времени угол (в градусах) между гринвичским меридианом и точкой весеннего равноденствия (вычисляется автоматически)

r           - радиус (расстояние до центра Земли)

Vt         - горизонтальная скорость (по отношению к местному горизонту)

Vr         - вертикальная скорость (по отношению к местному горизонту)

j          - географическая широта (в градусах)

l          - географическая долгота (в градусах)

a          - азимут старта

m         - начальная масса тела

 

Секция COORD содержит пересчет данных из секции INITIAL в абсолютную систему координат. Данные в секции COORD можно задать и напрямую, но будьте осторожны: при этом формулы пересчета могут быть утеряны.

 

Секция SIM содержит параметры симуляции

Dq        - угловой шаг симуляции (в градусах). Величина Dq соответствует приращению эксцентрической аномалии Q за шаг. Обратите внимание, что шаг симуляции делается не по времени, а по углу. Причины этого указаны в разделе «Моделирование орбитального движения». Там же дано определение эксцентрической аномалии Q.

 

Шаг симуляции также может меняться (для различных участков траектории) с помощью программы управления (см. ниже).

 

 

Секция CONST содержит некоторые константы:

            G         - универсальная гравитационная постоянная

Параметры центрального тела (Земли):

            g          - ускорение свободного падения (полярное)

            R          - радиус

            M         - масса

            m          - гравитационная постоянная тела (m=GM)

            T          - период суточного вращения (в секундах)

            ecl        - угол наклонения оси к эклиптике (в радианах)

equinox   - момент прохождения гринвичского меридиана через точку весеннего равноденствия

 

Секция ORBITS содержит астрономические данные, а также параметры некоторых характерных круговых орбит:

            LEO     - низкая (200 км) околоземная орбита (Low Earth Orbit)

            GSO     - геостационарная орбита

            LUN     - круговая орбита, приблизительно соответствующая орбите Луны

 

            а          - большая полуось орбиты

            T          - период орбиты (в секундах)

            V          - скорость круговой орбиты

 

Для Солнца и Луны приведены:

            а          - большая полуось орбиты

            T          - период орбиты (в секундах)

            e          - эксцентриситет орбиты

            m          - гравитационная постоянная тела

equinox   - момент прохождения телом точки весеннего равноденствия

 

Программа управления

 

С помощью программы управления вся траектория разбивается на несколько участков. Эти участки определяются через совокупность т.н. правил. Каждое правило содержит:

  1. условие(я) применения правила
  2. значение шага симуляции на данном участке
  3. величину и направление (возможно, переменное) возмущения, действующего на данном участке

 

Все части, за исключением первой (условия применения), могут быть пустыми.

 

На каждом шаге модель проверяет истинность условий для каждого правила. Первое (по порядку) правило, для которого условие истинно, выполняется. Таким образом, если участки, описываемые правилами, перекрываются, то правило с меньшим номером имеет приоритет.

 

Если ни одно из правил не выполняется, то тело движется по пассивной (кеплеровской) траектории с шагом по умолчанию.

 

Условия применения

 

Условия определяют разбиение траектории на участки. Описание условий размещено в секции RULES страницы Main.

 

Описание условия состоит из символьной переменной, знака сравнения (> или <) и значения. Символьная переменная должна соответствовать названию колонки на странице Kepler (например: х, Vx, r, u, rmax, и т.д.).

 

Часто для определения положения тела относительно перигея/апогея удобно использовать параметр расстояния P = (r-a)/ae. Для элиптической орбиты P изменяется от -1 до 1 (-1 соответствует перигею, а 1 - апогею), а для гиперболической P -1 (-1 соответствует перигею).

 

Также, обратите внимание, что сравнение символа с названием колонки не принимает во внимание заглавные буквы, шрифт и форматирование.

 

Знак “<” также включает в себя равенство, т.е. соответствует “≤”.

 

Несколько условий можно объединять в логическое выражение операторами and или or. В таком случае, эти несколько условий считаются принадлежащими одному правилу. Порядок исполнения операторов в группе – снизу вверх.

 

Условие, за которым не следует оператор, считается последним в группе. Если правило содержит несколько условий, то относящиеся к нему данные (значения шага и силы) размещаются в строчке, соответствующей первому условию в группе.

 

Пустое или некорректное условие считается ложным. Таким образом, пустые строчки игнорируются.

 

Шаг симуляции

 

На различных участках траектории может оказаться полезным использовать различный шаг симуляции. Так, например, если сила, действующая на тело, меняет параметры орбиты достаточно быстро, использование большого шага приводит к значительной погрешности. В то же время, совершенно незачем использовать маленький шаг на длинных пасивных участках (т.к. невозмущенное движение моделируется точно).

 

Задать угловой шаг Dq (в градусах) для данного участка траектории можно в колонке STEP. Если угловой шаг для данного участка не задан (или равен нулю), используется значение по умолчанию из секции SIM (см. выше).

 

Возмущающая сила

 

Величина силы, действующей на данном участке управления задается в колонке F секции THRUST. Также, в этой секции задаются:

- dm/dt             - расход массы (если сила создается реактиивным двигателем)

- need sun       - требуется ли освещенность солнцем для создания силы

 

Освещенность солнцем требуется для создания силы, если, например:

- двигатель питается от солнечных батарей (ЭРД)

- двигатель использует энергию Солнца напрямую (SOTV)

- сила создается давлением солнечных лучей (солнечный парус)

и т.д.

 

Направление силы

 

Направление силы на данном участке определяется в секции DIR. Оно определяется как линейная комбинация нескольких известных векторов (переменных или постоянных) – базиса. Такими векторами могут быть: скорость, радиус-вектор, нормаль к орбите, нормаль к плоскости орбиты (бинормаль) и т.д. Линейная комбинация строится из нормированных векторов базиса. Получившийся вектор затем нормируется к единице.

 

Символы векторов размещены в верхней строчке секции DIR. В основной части секции размещены коэффициенты линейной комбинации.

 

Модель не ограничивает, какие именно и сколько векторов может входить в базис – пользователь может изменить/расширить базис. Взаимная ортогональность векторов базиса также не требуется (так, радиус-вектор и скорость, вообще говоря, не ортогональны). Однако накладываются некоторые ограничения:

 

  1. Символ вектора отождествляется с именем колонки на странице Kepler следующим образом: если символ совпадает с именем колонки, то эта колонка содержит длину вектора, три предыдущие колонки – его компоненты.
  2. Как постоянные, так и переменные вектора базиса должны размещаться на странице Kepler. Если на странице нет требуемого вектора, его придется туда добавить  так, как описано в п.1.
  3. По умолчанию в базис входят три вектора: радиус-вектор, скорость и вектор момента импульса (в качестве бинормали). Достаточно просто заменить эти вектора на другие (так, как описано выше). Однако увеличить число векторов базиса будет уже не столь просто. Для этого придется добавлять дополнительные слагаемые в выражения в колонках {fx, fy, fz} на странице Control. Желающие могут убедиться, что это требует некоторой практики в программировании Excel.

 

 

Результаты

 

Секция RESULTS содержит значения параметров системы в некоторые заданные моменты времени:

by orbit            после заданного числа витков

by time             в заданное время

by rule             в первый момент когда данное условия управления становится истинным

-escape-           в момент достижения второй космической скорости (либо в конце симуляции, если отрыв не достигается)

 

Секция содержит следующие параметры:

            N          - число полных витков

            t(s)       - время (в секундах)

            t(h)      - время (в часах)

Положение тела:

            r           - радиус (расстояние до центра Земли)

            V          - скорость

Параметры орбиты:

            a          - большая полуось орбиты

            rmin      - радиус в перигее

            rmax      - радиус в апогее

            ecc       - эксцентриситет орбиты

            T(h)      - период орбиты (в часах)

 

            i           - экваториальное наклонение

            W         - долгота восходящего узла

            u          - истинная аномалия (угловое расстояние до перигея)

            w          - аргумент перигея

Прочее:

            m         - текущая масса

            DU       - полное приращение характеристической скорости

 

Слева от секции RESULTS также расположены два графика:

  1. Проекция траектории на плоскость XY (плоскость экватора). Точки на графике соответствуют интервалам симуляции
  2. Зависимость перигея и апогея от времени

 

 

 

Приложение А – Описание колонок

Страница Kepler

 

Состояние системы:

time                 - время (с секундах и часах)

N                      - виток орбиты

Dt                     - приращение времени

Dq                    - приращение угла

(x,y,z)              - текущие координаты

r                       - радиус

j                      - широта (экваториальная)

l                      - долгота (относительно точки весеннего раавноденствия)

 (Vx,Vy,Vz),V     - текущая скорость

DU                   - характеристическая скорость

 

Интегралы движения:

H                      - полная энергия (удельная)

(Mx,My,Mz),M     - момент импульса (удельный)

 

Параметры орбиты:

a                      - большая полуось

ecc                   - эксцентриситет

rmax                  - радиус апогея

rmin                  - радиус перигея

T                      - период (в секундах)

i                       - наклонение

W                     - долгота восходящего узла

w                      - аргумент перигея

 

Расчет оскулирующей орбиты:

sign                 - знак вертикальной скорости (полуорбиты)<

P                      - параметр расстояния P = (r-a)/ae

Q                     - эксцентрическая аномалия

для эллиптических орбит:        cos(Q) = -P

для гиперболических орбит:     ch(Q) = -P

u                      - истинная аномалия (угловое расстояние доо перигея)

 

sign1,P1,Q1,u1   - соответствующие параметры после шага Dq

 

Орбитальное время оскулирующей орбиты:

t0                      - текущее орбитальное время (после прохожддения перигея)

t1                      - орбитальное время после шага Dq

Dt                     - приращение времени, соответствующее шагуу Dq

 

Состояние системы для оскулирующей орбиты:

(x1,y1,z1),r1       - координаты после шага Dq

Vt1                    - горизонтальная скорость после шага Dj

Vn1                   - вертикальная скорость после шага >Dj

(Vx1,Vy1,Vz1)      - скорость после шага Dj

 

 

Страница Control

 

Rule                 - текущее правило управления

Dq                    - шаг по углу (соответствующий текущему упправлению)

m                     - текущая масса

-sun-                - освещенность Солнцем

F                      - значение возмущающей силы

(fx,fy,fz)             - направление возмущающей силы

DU                   - характеристическая скорость

CONDITIONS   - истинность индивидуальных условий управления

LOGIC              - истинность условий с учетом логических ооператоров

 

Страница Astronomy

 

Earth:

            l                      - угол между гринвичским меридианом и точкой весеннего равноденствия

Sun, Moon:

            l                      - угол между направлением на тело и точкой весеннего равноденствия

            (ex,ey,ez)           - вектор направления на тело

            r                       - расстояние до тела

            -isVisible-         - условие прямой видимости тела (из-за Земли)

 

Приложение B FAQ

 

1. Спредшит пересчитывается очень медленно.

 

В версиях Excel 2000 и ниже существует проблема так называемых forward cross-worksheet references. В спредшитах с большим количеством ссылок между страницами эта проблема может привести к существенному замедлению пересчета. Если эта проблема возникает, рекомендуется использовать специальную версию: OrbitalModel 2000.

 

 

2. Симуляция заканчивается на 1000-м шаге. Как увеличить число шагов ?

 

Все строчки симуляции (начиная со второй) одинаковы (с точностью до относительных ссылок). Поэтому для того, чтобы увеличить время симуляции, достаточно скопировать последнюю строчку вниз настолько, насколько необходимо (в Excel'е можно копировать в несколько строк одновременно). Это необходимо сделать для всех трех страниц Kepler, Control и Astronomy.

 

Кстати, на странице Control не пытайтесь копировать строчки поверх существующих строк (Excel не позволит этого сделать - там используются вектора) - копируйте в пустые строчки.

 

Кроме того, не забудьте соответственно увеличить область данных в графиках на странице Main.

 

3. Программа допускает только 8 условий/правил. Как увеличить их число ?

 

Для пользователя, владеющего Excel это достаточно просто. Для того, чтобы увеличить число условий, нужно:

  1. Скопировать вправо (насколько необходимо) последние колонки в разделах CONDITIONS и LOGIC на странице Control.
  2. В формулах колонки Rule на странице Control поменять (расширить) range так, чтобы он соответствовал новой секции LOGIC.

 

4. Как учитываются вырожденные случаи (круговая и параболическая орбиты, нулевое наклонение, etc.) ?

 

- Круговая орбита

В случае круговой орбиты теряют смысл понятия перигея и апогея, а также связанные с ними параметры: истинная аномалия u и аргумент перигея w. Однако, это не создает проблем: прочие элементы орбиты и положение тела вычисляются точно.

 

- Параболическая орбита

Спредшит не учитывает отдельно случая параболической орбиты. Полная энергия тела на такой орбите равна нулю и возможно появление ошибки деления на ноль. Однако, возникновение в точности параболической орбиты в результате численной симуляции маловероятно (если не стремиться к этому специально). Если же это все-таки произошло, то даже очень небольшая вариация параметров (около 1 мм/с по скорости) решит проблему.

 

- Нулевое наклонение

В этом случае теряют смысл такие параметры, как долгота восходящего узла W и аргумент перигея w. Помимо этого, нулевое наклонение не создает никаких проблем для вычислений.

 

 

 

Hosted by www.Geocities.ws

1