Следующая версия лучевой модели отталкивания.
Теоретическая часть.
Учавствующие в модели детали:
гравик(и) (эффектор(ы), образующие систему "Антиграв")
аккумулятор
толкун(ы) (2 на каждый гравик)
Модель схожа с моделью отталкивания однознаковых электрических зарядов, в роли которых, в данном случае, выступают два т.н. "толкуна": один находится внутри гравика, а другой перемещается в точку поверхности, откуда гравик желает отталкиваться. Первое упрощение - пары толкунов от разных гравиков не взаимодействуют.
Направление гравика (луч) определяет точку отталкивания, координаты которой вычисляются пересечением луча направления гравика с треугольниками моделей и ландшафта.
Реальная формула, связывающая силу отталкивания F двух точечных зарядов q1 и q2 и расстояние между ними r выглядит так:
F = [1/(4*Pi*e)] * (q1*q2) / (r*r),
где e - диэлектрическая проницаемость среды, в которой заряды находятся.
По аналогии с формулой отталкивания однознаковых зарядов, предлагаемая упрощённая формула отталкивания толкунов выглядит так:
F = k / (r*r)
Тут множитель с диэлектрической проницаемостью среды, а также заряды обобщены в коэффициент k.
Как видно из формулы, сила отталкивания F прямо пропорциональна коэффициенту k и обратно пропорциональна квадрату расстояния r между толкунами.
В возможности гравика входит изменение направления луча (выбор точки отталкивания, что есть точка базирования второго толкуна), а также изменение коэффициента k в пределах от 0 до kmax. Это можно условно обозвать "мощностью" гравика, ведь чем больше k, тем больше сила отталкивания при том же расстоянии. Плавно повысив k можно увеличить высоту полёта. Резкое изменение k до kmax приведёт к прыжку глайдера. При повышении k гравик потребляет энергию, при ослаблении, соответственно, возвращает (в идеальном варианте, который я рекомендую
).
Для того, чтобы узнать, сколько конкретно энергии нужно на изменение k, необходимо условится с энергией взаимодействия толкунов. Что она есть такое? А она есть работа, которую совершит поле при увеличении расстояния между толкунами от r до бесконечности. Поскольку сила отталкивания падает с расстоянием, эта работа будет конечна и стремится к некоторому пределу. Интегрирование с использованием формул...:
F = k / (r*r),
dA = F * dr,
а также
k = F1 * (r1*r1),
(F1 - некоторое известное значение силы отталкивания на расстоянии r1)
...дало такой тревиальный результат:
E = F1 * r1
или, что аналогично:
E = k / r1
Словами: если на расстоянии r1 [метров] сила отталкивания равна F1 [Ньютонов], то энергия взаимодействия толкунов равна (F1*r1) [Джоулей].
Или, что аналогично: если коэффициент взаимодействия толкунов равен k [Дж*м], то при расстоянии между толкунами r1 [метров] энергия их взаимодействия равна (k/r1) [Дж].
Таким образом, на увеличение k ("мощность" гравика) от k1 до k2 требуется затратить вот сколько энергии из аккумулятора:
E = (k2-k1) / r
(Было бы приятно, если бы при обратном процессе энергия возвращалась в аккумулятор, а не улетала в космос.
)
Как видно из формулы, чем меньше расстояние между гравиками, тем больше энергии нужно вбухивать на всё тот же прирост в k.
Если задача стоит несколько иначе - "нужно увеличить силу отталкивания c F1 до F2", то формула будет выглядеть так:
E = (F2-F1) * r
Тут зависимость противоположная - чем меньше расстояние r между гравиками, тем меньше энергии нужно на увеличение силы отталкивания.
В обоих формулах подразумевается, что "мощность" нарастает/падает мгновенно.
Конец теоретической части.
Добавлено спустя 1 час 16 минут 56 секунд:
А теперь немного практических примеров с использованием теории.
Допустим, глайдер весом в тонну висит на высоте r=0.3 м, и при этом гравики работают на четверти"мощности".
1) Посчитаем-ка, сколько энергии глайд сожрёт при прыжке, и какой будет сила отталкивания в начальный момент прыжка?
Изначально, пока глайдер спокойно висит, k будет равен:
k = F*(r*r) = (m*g)*r*r = 1000 * 9.8 * 0.3 * 0.3 = 882 [Н*м*м]
И это четверть "мощности", т.е. kmax=882*4=3528 [Н*м*м]
Чтобы подпрыгнуть, глайдер должен врубить гравики на полную катушку, резко увеличив силу отталкивания путём повышения k до предела, т.е. kmax. Для повышения "мощности" гравиков до предела на такой высоте нам нужно выпотрошить из аккумулятора вот сколько энергии:
E = (k2-k1) / r = (kmax-k) / r = (3528-882) / 0.3 = 8820 [Дж]
И вот, какая сила тут же долбанёт в пузо глайда в начальный момент прыжка:
Fmax = kmax / (r*r) = 3528 / (0.3*0.3) = 39200 [Ньютонов]
Или же 4.0 тонны (стоит заметить, что лучше прыгать с меньшей высоты - тогда сила выйдет больше при том же лимите kmax). С ростом высоты, конечно, сила круто снизится, как и вертикальное ускорение, подбрасывающее глайдер. Оно, кстати, будет равно:
a = F/m-g = 39200/1000-9.8 = 29.4 [м*(с*с)] (перегрузка в три жэ)
Кстати, интересно было бы посчитать, до какой высоты допрыгнет глайд, но тут засветили новые интегралы, и я сдох.
Однако в игре, при просчёте физики в циклах, между которыми сила заново просчитывается, а во время них считается постоянной, эта формула и не понадобится.
2) Для представления себе этого количества энергии, давайте посчитаем, до какой скорости теоретически может разогнаться глайд, схавав столько же энергии, если кпд движков 100% а трения и других противодействующих сил нет. Из формулы кинетической энергии E=m*v*v/2 выразим и посчитаем скорость:
v = sqrt( 2*E / m ) = sqrt( 2*8820 / 1000 ) = 4.2 [м/с]
Около 15 км/ч...
Не густо.
3) Прикинем-ка ради интереса максимум высоты, на которой может парить наш глайд. Это просто. Как мы уже раньше вычислили, kmax=3528 [Н*м*м]. Чтобы глайд парил, сила отталкивания должна быть равна силе тяжести, которая равна (m*g) [Ньютонов]. Выразим из формулы F=k/(r*r) расстояние и найдём его:
r = sqrt( kmax / (m*g) ) = sqrt( 3528 / (1000*9.8) ) = 0.6 [метров]
Вывод: неплохо было бы раскошелиться на набор более мощных гравиков.
4) На какой максимальной высоте глайд сможет удержаться, если подберёт 10 контейнеров товара "Руда"?
Масса этого товара в М2 была равна 200 кг. Соответственно, масса груза будет 2 т, а общий вес глайда - 3 т. Далее задача сводится к предыдущей:
r = sqrt( kmax / (m*g) ) = sqrt( 3528 / (3000*9.8) ) = 0.35 [метров]
Как видно, масса увеличилась втрое, а высота упала менее чем в 2 раза. Вот она, обратно-квадратная зависимость силы от расстояния.