Данное приложение предназначено для моделирования
полета космического аппарата с двигателем малой тяги в орбитальной плоскости.
Реализована модель в среде MS
Visual Basic v.5.0.

Уравнения движения спроецированы на оси абсолютной
прямоугольной не вращающейся системы координат. Начало - в центре Земли. Оси Х
и У лежат в орбитальной плоскости. Ось Х проходит через перигей орбиты (с этой
точки начинается движение).
![]()
(1)
, ![]()
Система дифференциальных уравнений (1) решается численным методом Рунге-Кутты-Мерсона с коррекцией шага, согласно заданной точности.
Принятые константы:
ускорение
свободного падения (среднее): 9,8066 м/с2
радиус
Земли:
6378,15 км
гравитационная
постоянная Земли (m) 3,9893*1014
В случае наличия на Вашем компьютере MS Visual Basic v.5.0 и выше (в особенности – Professional или Enterprise Edition), скорее всего, Вам не потребуются дополнительные файлы -
только исполнимый (SmallThrust.exe), который Вы можете
поместить в любой каталог.
В ином случае, Вам потребуются некоторые (или даже
все) ниже перечисленные файлы (жирным шрифтом выделены наиболее важные):
|
Filename |
Original Size |
|
Filename |
Original Size |
|
msvbvm60.dll |
1 352K |
|
COMCT232.OCX |
161K |
|
MSCHART.OCX |
982K |
|
OLEPRO32.DLL |
161K |
|
OLEAUT32.DLL |
601K |
|
RDOCURS.DLL |
148K |
|
COMCTL32.OCX |
596K |
|
ASYCFILT.DLL |
141K |
|
DBGRID32.OCX |
508K |
|
COMDLG32.OCX |
137K |
|
MSRDO20.DLL |
384K |
|
MSINET.OCX |
113K |
|
MSFLXGRD.OCX |
239K |
|
MSWINSCK.OCX |
106K |
|
TABCTL32.OCX |
205K |
|
MSCOMM32.OCX |
102K |
|
RICHTX32.OCX |
199K |
|
VB6STKIT.DLL |
101K |
|
DBLIST32.OCX |
196K |
|
PICCLP32.OCX |
81K |
|
RICHED32.DLL |
171K |
|
SYSINFO.OCX |
66K |
|
MSRDC20.OCX |
166K |
|
COMCAT.DLL |
22K |
|
MSMASK32.OCX |
163K |
|
|
|
Рекомендую
предварительно проверить наличие данных файлов на Вашем компьютере по
следующему пути: {drive}:\{win_path}\{system32} и/или {drive}:\{win_path}\{system32}\{dllcash}.
В случае отсутствия, их можно
скачать прямо с моего сайта, распаковать и поместить по указанному выше пути.
(*) – приношу свои извинения за
столь утомительный, и не всегда приводящий к желанному результату, процесс
установки.

Ввод данных:
1. Постоянное ускорение:
Radius
Bgn, m –
начальный радиус орбиты;
V, m/s –
начальная скорость (всегда горизонтальная);
Ac…tion,
m/c2 – постоянное ускорение сообщаемое
телу с постоянной массой двигателем малой тяги;
Radius
End, m –
радиус орбиты до которой планируется разгонять тело;
Tetta, grad
– угол направления вектора тяги (в плоскости орбиты), отсчитываемый от
направления, противоположного направлению начального вектора скорости. В
дальнейшем вектор тяги постоянно сохраняет свою ориентацию относительно
радиус-вектора в плоскости Земли;
Точность – относительная точность решения дифференциальных
уравнений движения (крайнее левое положение бегунка соответствует 0,1; крайнее
правое – 10-10);
Дискр-сть – дискретность выдачи результатов и прорисовки
траектории движения (крайнее левое положение бегунка соответствует 2 секундам;
крайнее правое – 210 секундам);
2. Переменное ускорение:
Radius
Bgn, m –
начальный радиус орбиты;
V, m/s –
начальная скорость (всегда горизонтальная);
dM/dt,
kg/s – секундный расход топлива
двигателя малой тяги;
Ve, m/s –
эффективная скорость истечения продуктов сгорания;
M0, kg –
начальная масса тела;
Tetta, grad
– угол направления вектора тяги (в плоскости орбиты), отсчитываемый от
направления, противоположного направлению начального вектора скорости. В
дальнейшем вектор тяги постоянно сохраняет свою ориентацию относительно
радиус-вектора в плоскости Земли;
Radius
End, m –
радиус орбиты до которой планируется разгонять тело;
Точность и Дискр-сть – соответствуют аналогичным
параметрам движения с постоянным ускорением.
При вводе начальных данных, будьте внимательны –
разделителем целой и дробной частей числа является запятая. Неверно введенные данные
отмечаются подсвечиванием красным фоном и соответствующим предупреждением.
Обратите внимание – распознаются только нецифровые данные. Проверка на логику и
соответствие здравому смыслуJ не осуществляется. Однако,
любая ошибка, возникшая при расчетах – перехватывается с соответствующим
предупреждением и завершением работы приложения.
Результаты расчетов:
1. Числовое представление:
Time (hh:mm:ss) - время, прошедшее с начала маневра разгона (торможения);
Radius, m – текущий
радиус-вектор от центра Земли до тела;
V, m/s –
текущая скорость (модуль вектора).

2. Графическое
представление:
Окружностью красного цвета меньшего радиуса
представлена окружность, соответствующая начальному радиус-вектору; большего
радиуса – конечному. Линией черного цвета представлена траектория движения тела
под действием малого ускорения.
В ходе расчета,
Вы
можете приостановить его или прекратить совсем. Нормальным завершением расчета считается
достижение заданной высоты. В некоторых случаях (например, при ориентации
вектора тяги строго по радиус-вектору от центра Земли к телу и ускорению меньше
определенной величины) расчет будет продолжаться бесконечно (в соответствии,
конечно, с заданной точностью и накапливаемыми погрешностями).
P.S. В
результате необдуманных действий, исходный текст приложения был утерян.
Восстановить исходники можно достаточно быстро, но хотелось бы узнать Ваше
мнение о необходимости модернизации данной программы, как в части
дополнительных сервисов, так и расширения самой модели.
Все Ваши предложения и замечания будут внимательно
выслушаны и по возможности учтены.
Мой адрес: small_thrust@mail.ru