habrahabr

Поехали!

  • воскресенье, 13 апреля 2014 г. в 03:10:27
http://habrahabr.ru/company/JetBrains/blog/219099/

У нас было одна ракета-носитель, 89 тонн окислителя, 4 слоя атмосферы, 200 км летного пространства и целое множество строк кода всех сортов и расцветок, а также необходимость развить первую космическую скорость, не влететь в перегрузки и выйти на гагаринскую орбиту. Не то, чтобы это был необходимый запас для полета, но если уж начал писать код, становится трудно остановиться. Единственное, что вызывало у меня опасение – это гагаринская орбита. Нет ничего более непредсказуемого, головокружительного и невообразимого, чем неуправляемая траектория ракеты. Но я знал, что рано или поздно мы выйдем на неё.



Итак, решили мы, нужно отпраздновать День космонавтики как надо! Для этого решили написать в свободное от работы время онлайн игрушку, которая повторяет запуск ракеты Восток-1. Несмотря на мультяшную графику, физическая модель положенная в основу игры – самая настоящая, с тягой и перегрузками.

Что мы хотели сделать?

Сначала мы хотели создать очень простой симулятор полета: обойтись без ступеней, зафиксировать силу притяжения на всем участке полета (до высоты 200 км) и сделать траекторию прямой.

Потом поняли, что без реальной атмосферы моделировать полет скучно. Поэтому добавили реальную скорость выхода газов из сопел, поперечное сечение ракеты Р7 и поправку на угол наклона. Теперь правильно заданные параметры приводят к значениям похожим на первый гагаринский полет.

Для пущей реалистичности даже привлекли специалиста из ИКИ РАН, хотя один астроном в нашей команде уже имелся.

Что нужно сделать?

Нужно настроить график расхода топлива в зависимости от высоты. Заметьте, что от высоты, а не от времени, как говорит один персонаж из популярного мультфильма: «Это важно!». Больше никаких настроек, наслаждаемся полетом и изучаем слои атмосферы.


  • Рано закончилось топливо? Попробуйте расходовать его более экономно.
  • Ракета испытывает сильные перегрузки? Сделайте тягу меньше.
  • Не забывайте, что скорость ракеты должна быть всегда положительной.
  • Ракета может двигаться по инерции, даже когда топливо кончилось.


Что вам предстоит?

Вам необходимо найти оптимальную функцию расхода топлива, чтобы ракета достигла высоты в 200 км и ее скорость была не меньше первой космической (7,9 км/с).

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

На сладкое

40 лучших участников получат футболки космонавтов с принтом от нашего могучего иллюстратора. Обладатель самого лучшего результата отправится на экскурсию в ЦУП.


Cтыковка ТПК «Союз ТМА-09М» с МКС. ЦУП Королев. ©

Ну и конечно сама игра!

ПОЕХАЛИ!

Ваша команда JetBrains.