用matlab求解微分方程初值问题数值解和解析解,求解范围为区间.并画出其数值解和解析解曲线。

 我来答
lhmhz
高粉答主

2020-07-01 · 专注matlab等在各领域中的应用。
lhmhz
采纳数:7263 获赞数:17001

向TA提问 私信TA
展开全部

用matlab求解微分方程初值问题数值解和解析解,可以这样处理:

一、数值解

微分方程初值问题数值解可以用ode函数求解。

首先,自定义微分方程的函数,即

dy = 3/x*y+x^3*(exp(x)+cos(x))-2*x;

其二,确定初始条件,即

y0=[(exp(pi)+2/pi)*pi^3];

其三,使用ode45函数,求出其数值解【x,y】

二、解析解

微分方程初值问题解析解可以用dsolve函数求解。

首先,对y(x)进行变量声明,即

syms y(x)

其二,对y(x)求一阶导数,即

Dy=diff(y,1)

其三,使用dsolve函数,求出其解析解y(x)的表达式

y=dsolve(Dy==3/x*y+x^3*(exp(x)+cos(x))-2*x,y(pi)==(exp(pi)+2/pi)*pi^3)

三、绘制数值解和解析解曲线

首先,使用plot函数,绘出数值解的曲线

plot(x.y)

其二,计算x在【π,2π】区间内的一系列若干个值与y相当于的y值

其三,再使用plot函数,绘出解析解的曲线

运行代码后可以得到如下结果。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式