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函数相关推荐

  1. MATLAB求解常微分方程

    MATLAB求解微分方程_Falcon的博客-CSDN博客_matlab微分方程求解 matlab求解常微分方程(组)---dsolve.ode系列函数详解(含例程)_假电工的真的博客-CSDN博客_ ...

  2. Python求解常微分方程——sympy

    [常微分方程简介] 方程中未知量是函数而不是变量,且未知量涉及未知函数的导数的方程称为微分方程. 常微分方程(ordinary differential equation, ODE)是一类特殊情况,未 ...

  3. datediff什么作用php,php中easter_date函数的功能起什么作用呢?

    摘要: 下文讲述php中easter_date函数的功能讲解,如下所示: easter_date函数功能说明: 返回指定年份对应的复活节午夜的Unix时间戳. easter_date语法: easte ...

  4. compact php,php中compact函数的功能起什么作用呢?

    摘要: 下文讲述php中compact函数的功能讲解,如下所示: compact函数功能说明: 根据输入的变量名,使用变量名和变量值创建数组 compact语法: compact(var1,var2, ...

  5. php中什么是函数函数的意义是什么,php中arsort函数的功能起什么作用呢?

    摘要: 下文讲述php中arsort函数的功能讲解,如下所示: arsort函数功能说明: 根据数组的值进行降序排列 arsort语法: arsort(array,sortingtype); ---- ...

  6. arrayrand php,php中array_rand函数的功能起什么作用呢?

    摘要: 下文讲述php中array_rand函数的功能讲解,如下所示: array_rand函数功能说明: 随机返回数组中的键, 当返回键多余一个时,则会返回一个包含键的数组 array_rand语法 ...

  7. ksrot php_php中ksort函数的功能起什么作用呢?

    摘要: 下文讲述php中ksort函数的功能讲解,如下所示: ksort函数功能说明: 根据数组的键名进行升序排列 ksort语法: ksort(array,sortingtype); ------- ...

  8. php sort函数,php中sort函数的功能起什么作用呢?

    摘要: 下文讲述php中sort函数的功能讲解,如下所示: sort函数功能说明: 对数组中元素值按照字母的升序进行排序 sort语法: sort(array,sortingtype); ------ ...

  9. python中使用函数的目的是什么_Python代码中os.mknod()函数起什么作用呢?

    摘要: 下文讲述Python代码中os.mknod()函数的功能说明,如下所示: os.mknod()函数的功能 用于创建一个指定文件名的文件系统节点 (文件,设备特别文件或者命名pipe) os.m ...

  10. 利用sympy库求解常微分方程:dsolve()函数

    [小白从小学Python.C.Java] [计算机等级考试+500强双证书] [Python-数据分析] [sympy库的使用] 使用sympy库求解常微分方程 .dsolve()方法 选择题 下列说 ...

最新文章

  1. C++实现大数的加法
  2. 帝国cms调用栏目自定义字段(栏目简介)如何操作
  3. 串口通讯你真的会了吗?不妨看看这些经验
  4. 201403-5 任务调度
  5. IDEA自动生成 构造方法 get set方法
  6. CSS之window的视图属性
  7. phpStudy配置站点 解决You don't have permission to access / on this server
  8. php四种基础算法:冒泡,选择,插入和快速排序法PHP基础教程
  9. Total Commander 使用技巧
  10. 用new/delete动态创建数组| 一维/二维/三维
  11. 联发科技 --联发科技简介++附上笔经面经
  12. 导入jasperreports出现Cannot resolve com.lowagie:itext:2.1.7.js6异常、生成PDF中文不显示中文解决方法、使用命令安装jar包
  13. linux里画pcb软件有哪些,Linux系统用什么软件画pcb啊
  14. 关于IT程序员一些面试技巧
  15. Pr 入门教程:如何调整音频轨道音量?
  16. 锐龙r77700参数 r7 7700功耗 r7 7700核显性能
  17. 如何将图片的背景色去掉?怎样快速去除背景色?
  18. 【统计学】从样本到总体
  19. java 绘制长方形_用java画矩形与正方形
  20. MAC安装jmeter以及JDK配置

热门文章

  1. C语言入门-跑步问题
  2. html光圈效果,PS新手教程:特效光圈效果
  3. Gnuradio安装及ADALM-PLUTO设备的配置
  4. 【企业】马化腾致信合作伙伴:灰度法则的七个维度
  5. odoo15 po文件自动翻译器
  6. 计算机关机键 自动重启,电脑关机会重启如何处理_电脑关机立马自动启动的修复方法...
  7. bzoj 4011: [HNOI2015]落忆枫音
  8. 计算机网络:第四章 网络层
  9. ibms智能化系统集成服务器,智能化集成管理系统(IBMS)
  10. 用vb调用bartender并打印