Scilab 中的简单二阶 ODE

Simple second order ODE in Scilab

我是 scilab 的新手,我正在尝试了解 ODE 如何在 SCILAB 中为二阶 ODE 工作。

我的公式是: (d^2y)/(dt^2)+2 dy/dt + y=0

我想绘制结果。 到目前为止,我已经明白我需要将方程式分解为两个一阶方程式。所以程序必须如下所示:

function dx=f(x, y)
    dx(1)=2*y+1;
    dx(2)=y;
endfunction

你能检查一下这是否正确吗,我不确定 dx(1)dx(2) 是否正确。

谢谢。

如果 x_1 是 y 而 x_2 是 dy/dt,您宁愿像这样写您的颂歌右侧(即 dx/dt)

function dxdt=f(t, x)
    dxdt(1) =  x(2);
    dxdt(2) = -x(1)-2*x(2);
endfunction