Когда я учился в МАИ на 601 кафедре, то у нас была программа «Проектно-баллистического расчёта баллистических ракет и ракет-носителей» DEP. В ней нам предлагалось выполнять курсовые проекты и дипломные проекты.


Сам код программы был написан в далёких годах на фортране 66 при некотором участии тех, кто проектировал ракеты у Королёва. Далее программа модернизировалась до 1993 года, а в 1996-1998 годах обзавелась интерфейсом. К сожалению, программа не могла работать в новом тысячелетии и требовала перевода дат. А сейчас данная программа отказывается запускаться в принципе. До 2005 года она была именно в таком виде, дорабатывали ли её после этого, мне не известно. Вот я и решил в свободные минутки разобраться в данной программе и попробовать её реанимировать.
Когда я начал вникать в алгоритмы её работы и в математический аппарат, то был крайне удивлён. Это, по сути, профессиональная программа с некоторым урезанием функционала и физическим упрощением. Она прям «каноническая», почти точный аналог тех программ (и математических моделей), которые применялись при проектировании почти всех ракет ОКБ-1.
Плюсы:
Возможность расчёта баллистических ракет и РН от 1 до 4 ступеней. Позже была добавлена функция расчёта пакетных схем, но не знаю, работала ли она.
Возможность выведения на заданные эллиптические орбиты в перигей на любое заданное наклонение с любой широты точки старта. Это вам не только круговая орбита с азимутом пуска 90 градусов.
Возможность учёта ограничений по максимальному скоростному напору и перегрузке за счёт плавного дросселирования ДУ.
Возможность введения баллистической паузы в конце работы первой ступени.
Формирование управления программой угла тангажа, а не всякими там приблизительными «около оптимальными» зависимостями.
Применение неплохих численных методов интегрирования и нахождения корней, за счёт чего достигнута высокая скорость, точность и хорошая сходимость. Часть функций, зашитых в программе, была отключена для студентов.
Уже в изначальной версии включена возможность учёта многоразовости в расчёте масс.
Минусы:
Плоское выведение со всеми вытекающими.
Убрано влияние нормальных (поперечных) аэродинамических сил.
Убрано влияние атмосферы на этапе полёта 2, 3 и 4 ступеней.
Нет возможности сбрасывать головной обтекатель. Но можно помудрить и приблизить задачу к реальному решению.
Нет никаких полей падения. Хотя пытливый студент мог эту информацию получить по блоку первой ступени, хоть и цифры получатся приблизительные.
Нет возможности выводиться не в перигей. Не критично, но в профессиональном использовании необходимо.
Упрощённая физическая модель атмосферы и загрублённые физические величины.
Небольшие ошибки, не сильно влияющие на результат.
В итоге данная программа может считать с точностью до 1% к реальности, хоть и затруднено её профессиональное использование. А для студенческих задач она очень и очень хороша. При некоторых ухищрениях её вполне можно использовать на предварительных этапах для профессиональной разработки ракет-носителей.
Но так как данная программа не работает, пришлось написать свою с некоторыми улучшениями:
Увеличение точности сходимости.
Возможность старта РН с малыми тяговооружённостями.
Более плавный доворот угла тангажа после разделения.
Более точное «облизывание» ограничений.
Убрал ошибку расчёта относительной массы ПГ и масс составных частей.
Прочие вкусовые улучшения.



Понимаю, насколько сложно было писать программу в те года, когда не было даже видео-дисплейного интерфейса для быстрой проверки. А некоторые ошибки даже сейчас фиг найдёшь. Так что снимаю шляпу перед разработчиками исходной программы и теми, кто её дорабатывал и улучшал. В итоге всё остальное я оставил без изменения, чтобы сравнить результат. Результат получился, по сути, одинаковый, значит все методы, математические и физические модели взяты аналогичные. Зато теперь есть возможность показать на примере как «канонически» выбирать основные проектные параметры ракет-носителей.
Давайте спроектируем ракету с массой ПГ 470 кг. Орбита назначения:
Апогей – 500 км.
Перигей – 268 км.
Широта точки старта 63 градуса (в районе Плесецка).
Наклонение орбиты – 98 градусов.
Ограничения:
Двухступенчатый тандем.
Максимальная перегрузка – 5 единиц.
Пауза при разделении – 8 секунд.
Сразу оговорюсь, что все приведённые мной характеристики берутся не совсем случайным способом, но я и сильно не вдумывался в них и не пересчитывал. Поэтому это не совсем бред, но и ориентироваться на данные значения не стоит.
Продолжим. Напервой ступени у нас будет кислород‑керосиновая ДУ с удельной тягой 282 сек на уровне моря и 310 сек в пустоте. На второй ступени кислород‑керосиновая ДУ с удельной тягой 340 сек в пустоте. Программа считает, что на этапе полёта 2 ступени атмосферы уже нет. Соотношение компонентов на ступенях 2.36, плотность ЖК 1140 кг/м3, керосина — 830 кг/м3.
Считаем, что у нашей РН отношение стартовой массы к площади поперечного сечения составит 16500 кг/м2.
Далее введём следующие статистические коэффициенты:
Относительная масса топливного отсека - отношение массы конструкции топливного отсека ракетного блока ступени к массе топлива ступени.
Относительная масса двигательной установки - отношение массы двигательной установки ракетного блока ступени к силе тяге двигательной установки ступени в кгс.
Относительная масса системы управления - отношение массы системы управления и прочего радиоэлектронного оборудования ракетного блока ступени к начальной массе ракетного блока ступени.
Относительная масса прочих элементов - отношение массы прочих элементов конструкции ракетного блока ступени к начальной массе ракетного блока ступени.
Эти коэффициенты сначала берутся из статистики и потом уточняются в ходе итерационных расчётов. В реальном же проектировании коэффициентов более 30. Введём эти коэффициенты для нашей ракеты:
Номера ступеней  | 
1 ступень  | 
2 ступень  | 
Относительная масса топливного отсека  | 
0,04  | 
0,06  | 
Относительная масса двигательной установки  | 
0,012  | 
0,015  | 
Относительная масса системы управления  | 
0,005  | 
0,012  | 
Относительная масса прочих элементов  | 
0,02  | 
0,025  | 
Для оценки эффективности ракеты можем использовать отношение массы полезного груза к стартовой массе РН – «Мюпг». Можно использовать отношение массы полезного груза к «сухой» массе РН. Но я предлагаю сразу оценивать эффективность по стоимости ракеты - «Ст», что по моему мнению является более действенным способом, по сравнению с двумя другими. Введём для этого стоимость единицы конструкции РН. Стоимость килограмма топливного отсека будет равняться 1 условной единицы, ДУ - 4, СУ – 6, прочих элементов 1.5.
Теперь про основные проектные параметры. Так как количество ступеней ограничено, а характеристики ДУ и нагрузка на мидель определены заданием, то нам остаются для выбора только:
Относительная конечная масса - отношение конечной массы ступени к начальной массе ступени.
Начальная тяговооружённость ступени – отношение земной тяги (в кгс) к стартовой массе ступени. По сути, стартовая перегрузка.
Угол наклона вектора скорости к местному горизонту в конце работы первой ступени.
Тут следует учесть, что ступенью называется та часть ракеты, которая летит именно сейчас, а не та, которая отваливается. Это каноническое определение, которое эквивалентно термину «субракета». Программа угла тангажа будет подбираться программой автоматически для удовлетворения целевой задачи. Ну и забыл про коэффициент аэродинамического сопротивления, вот его зависимость от числа Маха:

Приступим к выбору основных проектных параметров. Начнём прогон параметров со следующих параметров:
Номера ступеней  | 
1 ступень  | 
2 ступень  | 
Относительная конечная масса  | 
0,3  | 
-  | 
Начальная тяговооруженность  | 
1,3  | 
1  | 
Угол наклона вектора скорости  | 
28  | 
-  | 
Получаем из программы Мюпг = 0.013083, Ст = 6 717.197.
Получили и хорошо. Бывает, что можно пальцем в небо ткнуть в нереализуемый вариант, который ничего не выводит. Далее надо варьировать параметрами. Попробуем поварьировать углом и относительной конечной массой первой ступени (Мюк):


Тут мы видим сравнение по двум критериям (стоимость и Мюпг) и оптимумы примерно совпадают и по углу, и по Мюк. Это не удивительно, так как оба параметра в основном баллистические и стоимости аналогичных элементов блоков первой и второй ступеней одинаковы.
Далее принимаем:
Номера ступеней  | 
1 ступень  | 
2 ступень  | 
Относительная конечная масса  | 
0,18  | 
-  | 
Начальная тяговооруженность  | 
1,3  | 
1  | 
Угол наклона вектора скорости  | 
20  | 
-  | 
Получаем Мюпг = 0.019024, Ст = 4 197.924.
Теперь поварьируем углом и стартовой тяговооружённостью 1 ступени:


А вот тут уже результаты разные. Если угол и там и там даёт оптимум почти в одной точке, то тяговооружённость уже даёт различные оптимумы. Но мы выбираем оптимум в районе минимальной стоимости. Далее принимаем:
Номера ступеней  | 
1 ступень  | 
2 ступень  | 
Относительная конечная масса  | 
0,18  | 
-  | 
Начальная тяговооруженность  | 
1,4  | 
1  | 
Угол наклона вектора скорости  | 
18  | 
-  | 
Получаем Мюпг = 0.019933, Ст = 4 111.341.
Теперь поварьируем тяговооружённостями обеих ступеней:


Тут тоже получаем интересные результаты. Далее принимаем:
Номера ступеней  | 
1 ступень  | 
2 ступень  | 
Относительная конечная масса  | 
0,18  | 
-  | 
Начальная тяговооруженность  | 
1,5  | 
0,6  | 
Угол наклона вектора скорости  | 
18  | 
-  | 
Получаем Мюпг = 0.021207, Ст = 3 905.781
Вернёмся к первому варианту оптимизации и уточним:


Тут уже ловим всяких блох. Сэкономлю время и далее принимаем близкое к оптимальному:
Номера ступеней  | 
1 ступень  | 
2 ступень  | 
Относительная конечная масса  | 
0,18  | 
-  | 
Начальная тяговооруженность  | 
1,5  | 
0,66  | 
Угол наклона вектора скорости  | 
17,5  | 
-  | 
Получаем Мюпг = 0.021348, Ст =3 887.687
На этом останавливаемся, так как все остальные изменения уже практически ничего не меняют в части выбранного критерия эффективности. Можете заметить, что для проектно-баллистического анализа не нужны абсолютные значения, нужны только относительные. Даже масса ПГ в этих расчётах никак не участвует. Но так как оптимум найден, пришло время посмотреть на массы:
Номера ступеней  | 
1 ступень  | 
2 ступень  | 
Начальные массы, кг:  | 
22 015,76  | 
2 352,86  | 
Конечные массы, кг:  | 
3 962,84  | 
664,27  | 
Массы топлива, кг:  | 
18 052,92  | 
1 688,59  | 
Массы окислителя, кг:  | 
12 680,03  | 
1 186,03  | 
Массы горючего, кг:  | 
5 372,89  | 
502,56  | 
Массы топливных отсеков, кг:  | 
722,12  | 
101,32  | 
Массы двигательных установок, кг:  | 
396,28  | 
23,29  | 
Массы систем управления, кг:  | 
98,31  | 
22,59  | 
Массы прочих элементов, кг:  | 
393,26  | 
47,07  | 
Массы средств спасения, кг:  | 
0,00  | 
0,00  | 
Объёмы топлива, м3:  | 
17,60  | 
1,65  | 
Объёмы окислителя, м3:  | 
11,12  | 
1,04  | 
Объёмы горючего, м3:  | 
6,47  | 
0,61  | 
Относительные массы:  | 
0,10687  | 
0,19976  | 
Диаметр миделя, м:  | 
1,30  | 
|
Относительная масса ПГ ракеты:  | 
0,02135  | 
|
Масса ПГ, кг:  | 
470,00  | 
|
Плотность окислителя, кг/м3:  | 
1 140,00  | 
1 140,00  | 
Плотность горючего, кг/м3:  | 
830,00  | 
830,00  | 
Соотношение компонентов, О"/"Г":  | 
2,36  | 
2,36  | 
Суть выбора основных проектных параметров и проектно-баллистического анализа состоит в том, что после оптимизации конкретные весовые и прочие характеристики получаются по щелчку пальцев. Сама же программа каждый прогон параметров проводит за пару секунд. В итоге мы имеем все параметры РН «грамм к грамму». Правда тут отсутствуют характеристики двигателей, но это штука вкусовая. Вообще тут могут быть получены любые характеристики. В цифры можно сильно не вглядываться, это просто пример. Но считаем, что на второй ступени получились слишком малые массы системы управления и двигательных установок и их необходимо увеличить в 2,5 раза и на треть соответственно. Поменяем весовые коэффициенты, в скобках предыдущие:
Номера ступеней  | 
1 ступень  | 
2 ступень  | 
Относительная масса топливного отсека  | 
0,04  | 
0,06  | 
Относительная масса двигательной установки  | 
0,012  | 
0,02 (0,015)  | 
Относительная масса системы управления  | 
0,005  | 
0,03 (0,012)  | 
Относительная масса прочих элементов  | 
0,02  | 
0,025  | 
С новыми коэффициентами при старых проектных параметрах:
Номера ступеней  | 
1 ступень  | 
2 ступень  | 
Относительная конечная масса  | 
0,18  | 
-  | 
Начальная тяговооруженность  | 
1,5  | 
0,66  | 
Угол наклона вектора скорости  | 
17,5  | 
-  | 
Получаем Мюпг = 0.019346, Ст = 4 559.289.
Цена увеличилась на 17%, а относительная масса полезного груза на 10%.
Снова поварьируем тяговооружённостями обеих ступеней:


Далее принимаем:
Номера ступеней  | 
1 ступень  | 
2 ступень  | 
Относительная конечная масса  | 
0,18  | 
-  | 
Начальная тяговооруженность  | 
1,6  | 
0,63  | 
Угол наклона вектора скорости  | 
17,5  | 
-  | 
Получаем Мюпг = 0.019842, Ст = 4 542.292.
Много не выиграли, но приятно. Посмотрим, что даст варьирование угла и Мюк:


Опять блошиная охота. Принимаем:
Номера ступеней  | 
1 ступень  | 
2 ступень  | 
Относительная конечная масса  | 
0,17  | 
-  | 
Начальная тяговооруженность  | 
1,6  | 
0,63  | 
Угол наклона вектора скорости  | 
16  | 
-  | 
Получаем Мюпг = 0.019708, Ст = 4 517.237.
Попробуем ещё погонять:


Ну тут уже рассматриваем графики с лупой. Получаем конечное близкое к оптимальному решение:
Номера ступеней  | 
1 ступень  | 
2 ступень  | 
Относительная конечная масса  | 
0,17  | 
-  | 
Начальная тяговооруженность  | 
1,54  | 
0,63  | 
Угол наклона вектора скорости  | 
16  | 
-  | 
Получаем Мюпг = 0.019457, Ст =4 512.203.
В итоге немного поменялись относительные проектные параметры, но стоимость сильно отыграть не получилось. Итоговые массовые характеристики РН:
Номера ступеней  | 
1 ступень  | 
2 ступень  | 
Начальные массы, кг:  | 
24 155,59  | 
2 312,00  | 
Конечные массы, кг:  | 
4 106,45  | 
697,32  | 
Массы топлива, кг:  | 
20 049,14  | 
1 614,68  | 
Массы окислителя, кг:  | 
14 082,14  | 
1 134,12  | 
Массы горючего, кг:  | 
5 967,01  | 
480,56  | 
Массы топливных отсеков, кг:  | 
801,97  | 
96,88  | 
Массы двигательных установок, кг:  | 
446,40  | 
29,13  | 
Массы систем управления, кг:  | 
109,22  | 
55,26  | 
Массы прочих элементов, кг:  | 
436,87  | 
46,05  | 
Массы средств спасения, кг:  | 
0,00  | 
0,00  | 
Объёмы топлива, м3:  | 
19,54  | 
1,57  | 
Объёмы окислителя, м3:  | 
12,35  | 
0,99  | 
Объёмы горючего, м3:  | 
7,19  | 
0,58  | 
Относительные массы:  | 
0,09571  | 
0,20329  | 
Диаметр миделя, м:  | 
1,37  | 
|
Относительная масса ПГ ракеты:  | 
0,01946  | 
|
Масса ПГ, кг:  | 
470,00  | 
|
Плотность окислителя, кг/м3:  | 
1 140,00  | 
1 140,00  | 
Плотность горючего, кг/м3:  | 
830,00  | 
830,00  | 
Соотношение компонентов, "О"/"Г":  | 
2,36  | 
2,36  | 
Считаем, что массы нас удовлетворяют и заканчиваем оптимизацию.
Как видно, выбор основных проектных параметров на базе проектно-баллистического анализа достаточно удобный инструмент. Можно оперативно найти оптимальное решение и приступить к конструктивно-компоновочной проработке проекта ракеты-носителя. Правда после проработки могут немного измениться весовые характеристики, нагрузка на мидель и т.п. Но, итерации за три, решение получится достаточно проработанным. Для студента это крайне полезный инструмент, чтобы выполнить курсовой проект или написать дипломную работу, а также позволяет достаточно неплохо прочувствовать что куда тянет. Можно подобрать параметры под существующий двигатель, под их различное сочетание и т.п. Так что крайне рекомендую обучающимся по специальности проектирования ракет-носителей требовать современную версию программы DEP или её аналог.

Специалистам же без аналогичного инструмента не обойтись. Приходится вечно бегать к баллистикам и тратить нервы. А баллистики в 99,9% случаев считают в килограммах и взаимное влияние характеристик не изучают. Вместо всего этого можно практически в одни руки найти достаточно оптимальное решение. Правда у специалистов программа несколько потяжелее, посложнее и требует больше времени для анализа.
В качестве «профессионального» примера приведу картинку от Генерального конструктора средств выведения Российской Федерации, Медведева Александра Алексеевича:

Видно, что у профессионалов действия по выбору основных проектных параметров аналогичны тому, что я описал выше. Кстати, у Медведева очень интересная и доступная подача материала. Графики наглядно показывают процесс выбора основных проектных параметров.
И напоследок красивые графики по результатам баллистических расчётов из рассматриваемого примера:






Комментарии (9)

Moog_Prodigy
09.01.2025 12:25Сдается мне вот это все
Плоское выведение со всеми вытекающими.
Убрано влияние нормальных (поперечных) аэродинамических сил.
Убрано влияние атмосферы на этапе полёта 2, 3 и 4 ступеней.
Нет возможности сбрасывать головной обтекатель. Но можно помудрить и приблизить задачу к реальному решению.
Нет никаких полей падения. Хотя пытливый студент мог эту информацию получить по блоку первой ступени, хоть и цифры получатся приблизительные.
Нет возможности выводиться не в перигей. Не критично, но в профессиональном использовании необходимо.
Упрощённая физическая модель атмосферы и загрублённые физические величины.
Небольшие ошибки, не сильно влияющие на результат.
не совсем для студентов урезано и загрублено. Точнее совсем не для них.

PavelPushkin Автор
09.01.2025 12:25Кажется всё проще, не было вычислительных ресурсов и сама точность простых вычислений была низкой. И изначально программу хотели доработать, обкатав на студентах, но потом не срослось. Самое интересно, что в основном она была заточена для МБР.

Jec13
09.01.2025 12:25Классная статья. Хотелось пощупать и увидеть хотя бы часть исходников и что менялось. Тоже в институте и КБ наблюдал всякие поделки для ДОС которые сейчас не работают на современном железе.

sshikov
09.01.2025 12:25Когда я учился в МАИ на 601 кафедре, то у нас была программа «Проектно-баллистического расчёта баллистических ракет и ракет-носителей» DEP.
А когда вы учились, если не секрет? Есть неплохие шансы, что к той программе (либо ее прототипу) приложил руку либо лично я, либо кто-то из моих учеников.

PavelPushkin Автор
09.01.2025 12:25Я на кафедре её "щупал" в 2005 году, а интерфейсом она обзавелась в 1996-1998 годах. Само расчётное ядро менялось до 1993 года, а разработано был намного ранее.
P.S.: Но на 601 кафедре ещё был написан RASTR, немного другая программа за авторством Сердюка, Юрьева...

sshikov
09.01.2025 12:25Я знаю, что групп которые писали (и программ) было много. Сердюк и Юрьев - это немного другие люди, я делал диплом у Д.Н. Щеверова. А программу похожую мы делали примерно в начале 80-х, для курса Р.Ф. Аппазова и вместе с ним. Это было первое, у чего был какой-никакой UI.
Я-то в 1981 закончил...

PavelPushkin Автор
09.01.2025 12:25У Аппазова немного другая была, а может и её. Действительно много было программ, но удачных и относительно законченных парочку.
К этой Щеверов и Аппазов точно руку приложили.
          
 
dyadyaSerezha
А зачем? Сейчас нет современных улучшеных аналогов? Или чисто для себя поиграться?
Как это было проверено? То есть, откуда взяли реальность?
Непонятно, что с чем сравнить?
Или все неправильно в обоих вариантах. Так где же эталон?
PavelPushkin Автор
Я лучших аналогов не видел.
В своё время сравнивали с поверочными баллистическими расчётами, ну и с реальными изделиями.
Свою программу с DEP
Они одинаково считают и одинаково "врут". А эталон это уже профессиональные программы, которые в КБ применяются и в ЦНИИмаш. С ними сравнивать бесполезно, так как они учитывают на порядок больше нюансов.
В начале статьи я написал плюсы и минусы программы DEP, в своей программе я это практически полностью повторил, введя незначительные улучшения.