§ Ньютон и яблоко

Существовал однажды в некоторой точке пространства Ньютон (Исаак, вот как). Сидел он под древесным дубом и неистово размышлял о сути Гравитации (я не про эту). Вдруг откуда ни возьмись и яблоко прямо по башке съездило. Из глаз несчастного Ньютона полетели формулы и он отключился. Когда очнулся, внезапно на него снизошло знание и он записал формулу:
F = G\frac{m_1 m_2}{r^2}
Здесь m_1 это масса одного тела (в кг), m_2 - масса второго и собственно, r - расстояние между ними в метрах. Что до G - это гравитационная постоянная, которая никогда не меняется и которая равна приблизительно G = 6.67430(15) 10^{-11} м^3 с^−2 кг^−1

§ Какое же ускорение свободного падения?

Чтобы понять и разобраться в этом, надо понять то, что существует закон (который придумал тот же самый Ньютон), который гласит, что сила, приложенная к предмету, равна произведению его массы на ускорение F = ma . Отсюда действует и другой закон (Ньютона, конечно же!) что сила действия равна силе противодействия с отрицательным знаком, или F_1 = -F_2 .
Собственно, чтобы вычислить ускорение, достаточно узнать силу, которую прилагают к предмету, в данном случае это сила тяготения, и массу предмета:
a = \frac{F}{m}
Сила гравитации известна и я ее выше записал. Теперь надо поставить ее в формулу для получения ускорения.
a = G\frac{m M}{m r^2} = \frac{GM}{r^2}
Здесь M - масса Земли, а m - масса предмета. Из формулы прямо ясно видно, что масса предмета вообще никаким образом не влияет на то, с каким ускорением оно будет лететь к Земле.
Вот теперь пришло время адовых расчетов. Если взять массу Земли, гравитационную постоянную и радиус Земли, то можно вычислить, какое же будет ускорение на поверхности:
  • G = 6.6743 * 10^{-11} (сложный прикол)
  • M = 5.972 * 10^{24} килограммов
  • r = 6.371 * 10^6 метров
Значения ставим в формулу:
a = \frac{6.6743 * 10^{-11} 5.972 * 10^{24} }{(6.371 * 10^6)^2} = 9.819973426224687
Значение a (или его называют g ) приблизительно равно 9.82 м/с^2. Невероятно! Это и правда так.

§ Вектор ускорения к объекту

Почему я хочу это записать? Потому что забываю постоянно.
Допустим, я получил ускорение, которое по формуле, равно a = \frac{\Delta v}{\Delta t} . Если считать, что начальная скорость всегда равна 0, и время отсчитывается за 1 секунду, то ускорение будет равно скорости. Для того, чтобы рассчитать вектор, необходимо сначала найти длину от точки A к точке B между предметами притяжения, потом нормализовать это расстояние, разделив полученный вектор на длину этого вектора, тем самым получая нормализованный вектор. И уже после умножить на ускорение, получив необходимый вектор ускорения: \vec{a} = a \vec{N}
Вместо a подставляется a = \frac{F}{m} , где m - масса объекта, которому надо придать вектор, а F - это сила тяготения, которую я ранее рассчитал. Выходит, что
\vec{a} = \frac{GM}{r^2} \vec{N}
Я приведу код на Javascript:
1velocity(A, B, dt = 1)
2{
3    let dx = B.p.x - A.p.x;
4    let dy = B.p.y - A.p.y;
5    let dz = B.p.z - A.p.z;
6
7    let r = dx*dx + dy*dy + dz*dz; // На самом деле тут r^2
8    let a = B.m * Gv * dt / r;     // Так что тут делится на r^2
9    let K = a / Math.sqrt(r);
10
11    return {x: dx*K, y: dy*K, z: dz*K};
12}
Здесь B - это объект, к которому притягивается объект A. В данном случае dt всегда равен 1, то есть, получаем длину вектора ускорения за 1 секунду. Gv здесь равна гравитационной постоянной, а B.m массе объекта, к которому идет притяжение. Не стоит забывать, что оба предмета притягиваются друг к другу! Но только вот, например, если рассчитывать Землю и ее притяжение, то оно совсем незначительное, к примеру, космическому кораблю.