跳至内容

计算机编程/物理/加速物体的位移函数

来自维基教科书,开放书籍,开放世界

维基文库:源代码

加速物体的位移可以用数学函数 描述。可以使用泰勒级数 获得广义函数

,

其中 阶导数

  • 等等。

此函数的精度取决于所用项数,因为 迅速减小。此外,时间 可以同步,使得 麦克劳林级数)。

注意,对于恒定加速度,大多数项将变为零,只剩下

或者

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]

泰勒级数可以通过系统地选择哪些变量是常数,然后将其外推到无限极限来推导。

  • 恒定位置
或者
  • 恒定速度
或者
  • 恒定加速度
或者
  • 加速度的变化率恒定
或者
  • 等等。
华夏公益教科书