计算机编程/物理/加速物体的位移函数
外观
加速物体的位移可以用数学函数 描述。可以使用泰勒级数 获得广义函数
- ,
其中 是 阶导数
- 等等。
此函数的精度取决于所用项数,因为 迅速减小。此外,时间 可以同步,使得 (麦克劳林级数)。
注意,对于恒定加速度,大多数项将变为零,只剩下
或者
C++
[edit | edit source]template<class Vector,class Number>
Vector PositionAcceleratingBody(Vector *s0,Number t,size_t Accuracy)
{
Vector s(0); //set to zero if int, float, etc. or invoke the
// "set to zero" constructor for a class
Number factor(1);//0!==1 and t^0==1
for(size_t n(0);n<Accuracy;n++)
{
if(n)factor*=(t/n);//0!==1 and t^0==1
s+=(factor*s0[n]); //s0 is the array of nth derivatives of s
// at t=t0=0
}
return s;
}
使用泰勒级数的理由
[edit | edit source]泰勒级数可以通过系统地选择哪些变量是常数,然后将其外推到无限极限来推导。
- 恒定位置
- 或者
- 恒定速度
- 或者
- 恒定加速度
- 或者
- 加速度的变化率恒定
- 或者
- 等等。