matlab中求二阶微分方程 的解析解和数值解,并在同一图形中画出解析解和数值解的图形进行比较【点击查看详情】
首先,求解析解。使用dsolve函数求解微分方程:(1+x^2)*D2y=2*x*Dy,初始条件为y(0)=1,Dy(0)=3。命令为。y=dsolve('(1+x^2)*D2y=2*x*Dy','y(0)=1','Dy(0)=3',x)。求得解析解为:y = x*(x^2 + 3) + 1。接下来,求数值解。编写函数myfun.m。function dy=myfun(x,y)。dy=zeros(2,1)。dy(1)=y(2)。dy(2)=2*x*y(2)/(1+x^2)。调用ode45函数求解。[x45,y45]=ode45('myfun',[0 10],[1 3])。绘制数值解图形。
相关视频/文章