Scilab中的简单二阶ODE

时间:2019-03-26 13:45:54

标签: differential-equations 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)是否正确。

谢谢。

1 个答案:

答案 0 :(得分:1)

如果x_1是y而x_2是dy / dt,您宁愿这样写ode右手边(即dx / dt)

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