我正在尝试为每个图示方程编程(我没有绘制图表):
因此用户可以输入5个变量中的3个,并始终返回缺少的2个变量。在加速度为0的情况下以及其他地方,我遇到了一些被0除的问题。在第二行中寻找时间的方程式,第二个方程式似乎特别奇怪。我还应该从其中的一些问题中得到2个答案。即平方根问题?
首先,这些方程式正确吗?如果它们是正确的,那么我应该在程序中添加哪些规定,以防止被0除的问题以及可能的其他问题。
如果它可以帮助您了解,我正在使用JavaScript,但与语言本身相比,我更关心数学的本质及其与运动学的关系。
非常感谢您。
答案 0 :(得分:0)
首先,等式是精确的。
然后,查看这些方程,有两个边界条件,其中加速度可以为零(a = 0)或经过的时间可以为零(t = 0),为此必须添加特殊情况以避免除以零误差
undefined
(无法确定加速度或速度)t = (Math.sqrt(u*u + 2*a*s) - u)/a
t = (v - Math.sqrt(v*v - 2*a*s))/a
希望这会有所帮助。
答案 1 :(得分:0)
从我检查的结果来看,这些都看起来正确。
第2行中的公式2
-u / a +/- sqrt(2 * a * s + u ^ 2)/ a
有意义的是有两个可能的值。
如果考虑一下,此等式就是说:给定当前位置,加速度和起始速度,现在是什么时间。 注意:加速度和起始速度不会随时间变化。
由于SUVAT运动是抛物线运动,所以对于给定位置通常会有2个解。
在上图中,抛物线表示时间上的位置。水平线表示给定位置。抛物线的形状取决于给定的加速度和起始速度。如您所见,在 2 个点中,给定位置与抛物线相交,并用垂直线标记。