我正在尝试为一个研究项目创建一个定制的太阳系,以测试不同的数值方法并了解它们的差异。
我们正在建造自己的太阳系,而不是尝试模拟地球/太阳,因为这看起来更困难。
现在我们有太阳 M1 和地球 M2。
当我们计算重力时,F = 8.75 或 -8.75 (F = GM1M2/r^2)
当我们计算地球绕地球公转的恒定速度时,我们发现 v = 2 (v = sqrt(G(M1+M2)/r))
为了计算力的 vec2,我们使用以下代码
static double GravitationalConstant = 0.2f;//6.674e-11;
static public Vector2f GravitationalForce(SolarObject onObj, SolarObject fromObj)
{
Vector2f result = fromObj.OldPosition - onObj.OldPosition;
float distance = result.Lenght();
Console.WriteLine(distance);
result = new Vector2f(result.X / distance, result.Y / distance); // Normalized, but I've the lenght al ready so
result …Run Code Online (Sandbox Code Playgroud)