matlab解方程数值解
如何用matlab求方程的数值解?
如何用matlab求方程的数值解?
用MATLAB Ordinary Differential Equation (ODE) solver 求解微分方程的数值解。常用的ODE solver函数包括:ode45,ode23,ode113,ode15s等等。具体选择何种ODE solver参考下面的链接
选择 ODE 求解器 - MATLAB amp Simulink - MathWorks 中国
针对上述问题,ode45即可解决。
y的图像如下:
dy/dt的图像如下:
尝试用dsolve求解解析解。
MATLAB显示无法求解出解析解
MATLAB怎么算微分方程?
第一种方法:利用dsolve函数求微分方程的符号解(通解):对于一些不是很难,要求出通解的微分方程,用dsolve函数求解。
1. 打开Matlab软件--gt点击新建脚本菜单,新建一个脚本文件用于编写微分方程求解程序。
2. 输入微分方程求解程序--gt点击保存--gt点击运行。
3. 在matlab的命令窗口即可看到求解结果,是一个关于参数a,b的表达式
第二种方法:利用Matlab中的solver函数(包括ode45、ode23、ode15s 等)来求解微分方程的数值解,这种方法是最常用的方法,对于dsolve函数难以求解的方程就可以利用这种方法求解方程的数值解。
1. 打开Matlab--gt新建一个脚本文件用于编写求解程序。
2. 在脚本文件中输入求解程序--gt点击保存--gt点击运行。
3. 这里需要先编写一个函数文件用于表示方程--gt点击保存--gt编写求解程序--gt点击保存--gt点击运行。
4. 在figure页面就可以看到所求解的微分方程的图形。 若对您有所帮助,希望支持一下。
matlab中求解微分方程的函数?
如何用matlab求解微分方程的数值解和解析解?
一、微分方程的数值解可以ode函数来求解。其求解方法:
1、自定义微分方程组函数,odefun(x,y)
2、定义x【0,10】间若干等份的数值,如n=50
3、定义y的初值,即
y0=[2,7]
4、使用ode45函数求y(x),z(x)数值解,即
[x,y]=ode45(@odefun,x,y0)
5、使用plot函数,绘制x—y(x),x—z(x)曲线图
这里,y(1)代表y(x)的数值解,y(2)代表z(x)的数值解
二、微分方程的解析解可以dsolve函数来求解。
1、对变量y(x),z(x)进行声明,即
syms y(x) z(x)
2、对变量y(x),z(x)求一阶导数,即
Dy=diff(y,1)Dz=diff(z,1)
3、使用dsolve求y(x),z(x)解析表达式,即
[y,z]=dsolve(Dy-z==sin(x),Dz y==1 x,y(0)==2,z(0)==7)
4、将x【0,10】间划分若干等份,如n=50
5、分别计算与x对应的y(x),z(x)值
6、使用plot函数,绘制x—y(x),x—z(x)曲线图
三、使用hold on命令,将微分方程组的数值解曲线图和解析解曲线图,表示在同一图窗中。