我有一个简单的弹簧系统,其中两个点通过弹簧连接。其中一个点固定在天花板上,因此我想使用数值方法计算第二个点的位置。所以,基本上我得到了第二个点的位置和速度,并想知道这两个值在一个时间步长后如何更新。
下列力会影响该点:
重力力,由-g * m给出
弹簧力,由k * (l - L)给出,其中k是刚度,l是当前长度,L是初始长度
阻尼力,由-d * v给出
总之,这导致
F = -g * m + k * (l - L)
Fd = -d * v
例如应用显式欧拉法,可以推导出以下结果:
newPos = oldPos + dt * oldVelocity
newVelocity = oldVelocity + dt * (F + Fd) / m,使用F = ma。
但是,现在我想使用半隐式向后欧拉法,但无法确定从哪里推导雅各布矩阵等等。
下列力会影响该点:
重力力,由-g * m给出
弹簧力,由k * (l - L)给出,其中k是刚度,l是当前长度,L是初始长度
阻尼力,由-d * v给出
总之,这导致
F = -g * m + k * (l - L)
Fd = -d * v
例如应用显式欧拉法,可以推导出以下结果:
newPos = oldPos + dt * oldVelocity
newVelocity = oldVelocity + dt * (F + Fd) / m,使用F = ma。
但是,现在我想使用半隐式向后欧拉法,但无法确定从哪里推导雅各布矩阵等等。