dsolve函数的功能_MATLAB求解常微分方程:ode45函数与dsolve函数
ode45函数无法求出解析解,dsolve可以求出解析解(若有),但是速度较慢.
1. ode45函数
①求一阶常微分方程的初值问题
[t,y] = ode45(@(t,y)y-2*t/y,[0,4],1);
plot(t,y);
求解 y’ – y + 2*t / y且初值y(0) = 1的常微分方程初值问题,返回自变量和函数的若干个值.
若不写返回值,则会自动作出函数随自变量的变化图像.
ode45(@(t,y)y-2*t/y,[0,4],1);
②求解一阶微分方程组
x’ = -x^3-y,x(0)=1
y’ = x-y^3,y(0)=0.5.
自变量为t,且0
求解过程如下.
第一步,在M函数文件中将函数x和函数y写成向量形式.
function f = fun(t,x);
f(1) = -x(1)^3 – x(2);
f(2) = x(1) – x(2)^3;
f = f(:);%确保f为列向量.
第二步,在M脚本文件中求解.
[t,x] = ode45(@fun,[0,30],[1;0.5]);
subplot(1,2,1);plot(t,x(:,1),t,x(:,2),':');xlabel('t');ylabel('x/y');%作x和y随t变化图
subplot(1,2,2);plot(x(:,1),x(:,2));xlabel('x');ylabel('y');%作x和y的相位图
第三步,在命令窗口运行M脚本文件中的代码.
③求解高阶常微分方程组
将高阶常微分方程组通过变量替换转化为一阶的常微分方程组,然后用ode45求解.
2. dsolve函数
①求解析解
y’ = a*x + b;
s = dsolve('D2y=a*y+b*x','x');
D2y用以表示y的二阶导数,默认是以t为自变量的,所以最好指明自变量为x.
②初值问题
y’ = y – 2*t / y , y(0) = 1;
s = dsolve('Dy == y - 2*t / y','y(0) ==1');
③边值问题
x*y’’ – 3*y’ = x^2 , y(1) = 0 , y(5) = 0;
s = dsolve('x*D2y - 3*Dy ==x^2','y(1)=0','y(5) == 0','x');
函数最后一个参数指明自变量为x.
④高阶方程
求解y’’ = cos(2x) – y , y(0) = 1 , y’(0) = 0;
s=dsolve('D2y == cos(2*x) - y','y(0) =1','Dy(0) = 0','x');
simplify(s);
⑤方程组问题
f’ = f + g , g’ = -f + g,f(0) = 1, g(0) =2;
[f,g]= dsolve('Df == f + g','Dg = -f + g','f(0)==1','g(0) == 2','x');
dsolve函数的功能_MATLAB求解常微分方程:ode45函数与dsolve函数相关推荐
- MATLAB求解常微分方程
MATLAB求解微分方程_Falcon的博客-CSDN博客_matlab微分方程求解 matlab求解常微分方程(组)---dsolve.ode系列函数详解(含例程)_假电工的真的博客-CSDN博客_ ...
- Python求解常微分方程——sympy
[常微分方程简介] 方程中未知量是函数而不是变量,且未知量涉及未知函数的导数的方程称为微分方程. 常微分方程(ordinary differential equation, ODE)是一类特殊情况,未 ...
- datediff什么作用php,php中easter_date函数的功能起什么作用呢?
摘要: 下文讲述php中easter_date函数的功能讲解,如下所示: easter_date函数功能说明: 返回指定年份对应的复活节午夜的Unix时间戳. easter_date语法: easte ...
- compact php,php中compact函数的功能起什么作用呢?
摘要: 下文讲述php中compact函数的功能讲解,如下所示: compact函数功能说明: 根据输入的变量名,使用变量名和变量值创建数组 compact语法: compact(var1,var2, ...
- php中什么是函数函数的意义是什么,php中arsort函数的功能起什么作用呢?
摘要: 下文讲述php中arsort函数的功能讲解,如下所示: arsort函数功能说明: 根据数组的值进行降序排列 arsort语法: arsort(array,sortingtype); ---- ...
- arrayrand php,php中array_rand函数的功能起什么作用呢?
摘要: 下文讲述php中array_rand函数的功能讲解,如下所示: array_rand函数功能说明: 随机返回数组中的键, 当返回键多余一个时,则会返回一个包含键的数组 array_rand语法 ...
- ksrot php_php中ksort函数的功能起什么作用呢?
摘要: 下文讲述php中ksort函数的功能讲解,如下所示: ksort函数功能说明: 根据数组的键名进行升序排列 ksort语法: ksort(array,sortingtype); ------- ...
- php sort函数,php中sort函数的功能起什么作用呢?
摘要: 下文讲述php中sort函数的功能讲解,如下所示: sort函数功能说明: 对数组中元素值按照字母的升序进行排序 sort语法: sort(array,sortingtype); ------ ...
- python中使用函数的目的是什么_Python代码中os.mknod()函数起什么作用呢?
摘要: 下文讲述Python代码中os.mknod()函数的功能说明,如下所示: os.mknod()函数的功能 用于创建一个指定文件名的文件系统节点 (文件,设备特别文件或者命名pipe) os.m ...
- 利用sympy库求解常微分方程:dsolve()函数
[小白从小学Python.C.Java] [计算机等级考试+500强双证书] [Python-数据分析] [sympy库的使用] 使用sympy库求解常微分方程 .dsolve()方法 选择题 下列说 ...
最新文章
- C++实现大数的加法
- 帝国cms调用栏目自定义字段(栏目简介)如何操作
- 串口通讯你真的会了吗?不妨看看这些经验
- 201403-5 任务调度
- IDEA自动生成 构造方法 get set方法
- CSS之window的视图属性
- phpStudy配置站点 解决You don't have permission to access / on this server
- php四种基础算法:冒泡,选择,插入和快速排序法PHP基础教程
- Total Commander 使用技巧
- 用new/delete动态创建数组| 一维/二维/三维
- 联发科技 --联发科技简介++附上笔经面经
- 导入jasperreports出现Cannot resolve com.lowagie:itext:2.1.7.js6异常、生成PDF中文不显示中文解决方法、使用命令安装jar包
- linux里画pcb软件有哪些,Linux系统用什么软件画pcb啊
- 关于IT程序员一些面试技巧
- Pr 入门教程:如何调整音频轨道音量?
- 锐龙r77700参数 r7 7700功耗 r7 7700核显性能
- 如何将图片的背景色去掉?怎样快速去除背景色?
- 【统计学】从样本到总体
- java 绘制长方形_用java画矩形与正方形
- MAC安装jmeter以及JDK配置