gpt4 book ai didi

java - java 地球绕太阳运行

转载 作者:行者123 更新时间:2023-12-02 04:07:46 25 4
gpt4 key购买 nike

运行程序时,会打印“NaN”值。我推断错误在于“Sun.componentY()”和“Sun.componentX()”部分期间 do while 循环中的主类,因为新的重力场除以零。为了纠正这个问题,我尝试在 Gravfield 中编写一种名为 CalcAcc 的新方法,用于计算太阳和地球之间的力。然而,我不确定如何使用 vector 将其实现到我的主要方法中,以及如何让它正确输出地球的位置和速度。请参阅下面的代码,非常感谢。

只是为了澄清我的模拟由 4 个不同的类组成,我认为PhysicsVector 类不是问题的根源。

最佳答案

在这种情况下,您的 GravField 似乎是一个不寻常的抽象。在“简化”的物理引擎中,您可以拥有一个重力“场”,它对每个物体施加恒定的力,就像在地球上一样。

在这种情况下,您正在模拟空间,并且重力被认为是空间/时间的扭曲。每次物体移动时,它都会影响其他物体上的力。

我建议您重新考虑这种抽象,并且对于引擎的每次迭代,只需计算模拟中对象对的每个组合之间的重力。这将是一个 O(n^2) 操作!

关于java - java 地球绕太阳运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34089985/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com