|
|
|
|
|
by itishappy
398 days ago
|
|
> I don't get why you'd ever cube the 'r'. It's pulled out of the unit vector. Might be more clear if I notated the vector bits a bit: old : new
r : r_vec
|r| : r_mag
r_unit : r_dir
As you know, a vector is a magnitude and direction: r_dir = r_vec / r_mag
So the formulas from before become (also correctly labeled as `F` per my other comment): F = G * m1 * m2 / r_mag^2 * r_dir
F = G * m1 * m2 / r_mag^2 * r_vec / r_mag
F = G * m1 * m2 / r_mag^3 * r_vec
|
|
This makes sense to do in computer code also because if you were going to raise r_mag to a power, you might as well raise it to 3 instead of 2, because it's not extra cost, but you do avoid the three divisions, by never calculating a unit vector. Back when I was doing this work, was decades ago and I had no idea about cost of floating points. Thanks for explaining!