我正在尝试以数值方式求解三个同时的 ODE 函数:
dw/ds = sin(theta)
dx1/ds = cos(theta)
dtheta/ds = - a * cos(theta) * (w-w0) + a * sin(theta) * x1
我正在解决一个分成两半的列,我想绘制 w 对 x1 并有一个正 w (现在似乎不可能的事情)。主要有以下三个功能:
- first_sec_w:使用 RK4 方法的那个,已经找到了 theta 的初始值(使用 shoot_first 和 shoot_second)。
- shoot_first:使用 RK4 求解函数的函数,假设 theta 的初始值,直到达到 L0/2 处的 0 边界条件并返回此初始值。
- shoot_second: 几乎和上面做的一样,但它从 L0 开始,一直到 L0/2。
谁能帮我吗?
我将上传代码,所以这里看起来不会太乱。