|
0
|
| Jose Lopez Garcia · 技术社区 · 7 年前 |
|
|
1
1
对于修正后的系统,你只有3个状态变量需要整合。
然后你可以直接插入到解算器中。
为初始条件和集成结束使用适当的值。 |
|
|
2
0
在我看来,你的系统是不确定的,在这个意义上,y_1不受方程的约束,除了它必须是正的。至于系统的其余部分,它实际上是解耦的。我可以这样做: 1)第一个方程表示y_1为正。考虑到这一点,如果在第一个方程中替换y_2和y_3,就得到了y_1=y_1的恒等式。因此,点y_1可以是时间的任何函数,只受t=0时满足初始条件的约束。在下面,我假设它是一个时间常数。 2)根据这一规定,c/y_1是一个任意常数,我们称之为b,由此得出y_4=bt+y0_4,y0_4是积分常数。 3)将y_2代入第5个方程式,y_3代入第6个方程式。现在有两个与时间相关的r.h.s.方程足够简单,可以用解析法求解。例如,最后一个方程给出y_6=-y_1/b cos(bt+y0_4)+y0_6。 更一般地说,假设您遇到了一个未经充分约束的问题。然后,你总是可以在时间上区分代数方程,得到一个耦合的ODE系统。 作为最后的评论,我会说,在奔向Matlab(或Python,或R,或C++,…)之前,用纸和铅笔解决问题是很好的事情,看看它是否可以简化,或者,如上所述,它是可以解决的。 |