Шаг ручки «Начальная скорость Vy» – 0.01, и это не случайно: первая и вторая космические скорости для стартового радиуса отличаются меньше чем на 0.3, и вся разница между круговой орбитой, эллипсом и улётом укладывается в этот промежуток. Ручка с шагом 0.1 дала бы на него всего три положения.
Размер графика – -1, -1, то есть «занять всё доступное место»: кадр на странице растягивается по ширине браузера, и полотно, заданное в пикселях, в него либо не влезает, либо оставляет пустые поля. Форму держат две следующие строки. set_plot_square берёт под график квадрат со стороной по меньшему из размеров окна, set_plot_equal_axes заставляет единицу длины по горизонтали и по вертикали занимать одинаковое число пикселей. Без них в широком окне круговая орбита выглядела бы эллипсом – подобрать круговую скорость на глаз стало бы невозможно.
set_auto_layout(0.4f) отдаёт пульту 40% ширины вместо четверти по умолчанию: поле ввода занимает 150 пикселей, и в узкой панели подписи «Начальная скорость Vy» и «alpha = G*M» обрезаются на середине.
click_button() вызывается до запуска цикла, чтобы установить начальные условия из пульта и сразу добавить первую точку траектории. Глобальные числовые переменные сами инициализируются нулём, но нулевое состояние здесь не соответствует условиям задачи.