精华内容
下载资源
问答
  • MATLAB求解微分方程模型

    千次阅读 2018-05-14 16:18:07
    1.实验目的了解MATLAB求解微分方程的符号;2.实验内容求解非齐次线性微分方程组的初值问题X’=*X+,X(0)= 3.实验过程记录部分1.定义变量x,y;2.分别输入求解矩阵;3.求解不定积分;4.再求定积分,加快运行速度;4....

    1.实验目的

    了解MATLAB求解微分方程的符号解;

    2.实验内容

    求解非齐次线性微分方程组的初值问题

    X’=*X+,X(0)=

     3.实验过程记录部分

    1.定义变量x,y;

    2.分别输入求解矩阵;

    3.求解不定积分;

    4.再求定积分,加快运行速度;

    4.实验结果分析及总结

    x =                                                  

          -exp(t)*(sin(2*t) - cos(2*t) + (t*sin(2*t))/2)

     (exp(t)*(4*cos(2*t) + 5*sin(2*t) + 2*t*cos(2*t)))/4

     

     

      +-                                                 -+

      |                         0                         |

      |                                                   |

      |            /                       t sin(2 t) \   |

      |   - exp(t) | sin(2 t) - cos(2 t) + ---------- |   |

      |            \                           2      /   |

      |                                                   |

      |  exp(t) (4 cos(2 t) + 5 sin(2 t) + 2 t cos(2 t))  |

      |  -----------------------------------------------  |

      |                         4                         |

      +-                                                 -+

    附录

    clc,clear

    syms t s

    a=[1,0,0;2,1,-2;3,2,1];fs=[0;0;exp(s)*cos(2*s)];

    x0=[0;1;1];

    tx=int(expm(a*(t-s))*fs,s);  %ÏÈÇ󲻶¨»ý·Ö

    xstar=subs(tx,s,t)-subs(tx,s,0); %ÔÙÇ󶨻ý·Ö£¬ÕâÑùÔËÐÐËٶȿì

    x=expm(a*t)*x0+xstar;

    x=simple(x), pretty(x)


    展开全文
  • Matlab常用微分方程模型07 常用微分方程模型1Matlab 求解微分方程1.1 求微分方程通调用格式:y=dsolve(‘微分方程’,’x’)1.2 求满足初始条件的微分方程特解调用格式为:y=dsolve(‘微分方程’,’初始条件’,’x...

    Matlab常用微分方程模型

    07 常用微分方程模型

    1Matlab 求解微分方程

    1.1 求微分方程通解

    调用格式:y=dsolve(‘微分方程’,’x’)

    1.2 求满足初始条件的微分方程特解

    调用格式为:y=dsolve(‘微分方程’,’初始条件’,’x’)

    1.3 求解微分方程组通解,此时默认变量为 t

    调用格式为:[x,y]=dsolve(‘微分方程 1’,‘微分方程 2’)

    1.4 求满足初始条件的微分方程组的解,此时默认变量为 t

    调用格式为:[x,y]=dsolve(‘微分方程 1’,‘微分方程 2’,‘初始条件 1’,‘初始条件 2’)

    例 1求二阶微分方程的解

    y' ' ? cos? y, y(0) ? 0

    【matlab 命令】

    y=dsolve('D2y=cos(x)-y','y(0)=0','x'); [y,how]=simple(y)

    【输出结果】

    y =

    1/2*sin(x)*(2*C2+x)

    how =

    simplify

    例 2求微分方程组的解

    ? f ' ?

    ?

    f ? g

    ? g' ?

    ?

    f ? g

    ? f (0) ? 0

    ?? g(0) ? 1

    [f,g]=dsolve('Df=f+g','Dg=f-g','f(0)=0','g(0)=1'); [f,how]=simple(f)

    [g,how]=simple(g)

    【输出结果】

    f =

    1/4*2^(1/2)*(exp(2^(1/2)*t)-exp(-2^(1/2)*t))

    how =

    simplify

    g =

    1/2*exp(2^(1/2)*t)+1/2/exp(2^(1/2)*t)-1/4*2^(1/2)*exp(2^(1/2)*t)+1/4*2^(1/2)/exp(2^(1/2)*t)

    how =

    expand

    例 3对于引例中的衰变模型,其微分方程模型是:

    ? dR

    ?

    ? dt

    ? ?kR ,

    用 matlab 求镭质量的变化规律.

    【matlab 命令】

    R=dsolve('DR=-k*R','R(t0)=R0','t'); R=simplify(R)

    【输出结果】

    R =

    R0*exp(-k*(-t0+t))

    ??R |t ?t 0 ? R0

    例 4对于引例中的冷却模型,其微分方程模型是:

    ? dT

    用 matlab 求解.

    ? dt

    ?

    ?

    ?

    ?

    ? ?k (T ? 20)

    T (0) ? 100,

    T (20) ? 60

    T=dsolve('DT=-k*(T-20)','T(0)=100','t')

    【输出结果】

    T =

    20+80*exp(-k*t)

    上述结果表示瓶内水温的变化规律:T ? 20 ? 80e ? kt . 由条件T (20) ? 60 ,求出 k 的值.

    【matlab 命令】

    syms k T=60; t=20;

    s=-T+20+80*exp(-k*t);

    k=solve(s)

    vpa(k,6)

    【输出结果】

    .346574e-1

    2习题

    1.解微分方程

    dy

    (1)? xy 2 ? y

    ? dy

    ?

    ? dx

    ? xy 2 ?

    展开全文
  • MATLAB求解微分方程微分方程组方法介绍和例子。Matlab
  • matlab求解微分方程组和相平面图,通过编程实战掌握具体应用。包括matlab求解微分方程组和相平面图前、matlab求解微分方程组和相平面图中、matlab求解微分方程组和相平面图后。
  • matlab微分方程和常微分方程组的求解-matlab微分方程和常微分方程组的求解.pdf matlab微分方程和常微分方程组的求解
  • 应用matlab软件对常微分方程求解;前沿;一常微分方程组的符号(4)若边界条件少于方程组的阶数则返回的结果r中会出现任意常数C1C2(6)若没有给定输出参量则在命令窗口显示列表若该命令找不到解析则返回一警告信息...
  • Matlab求解微分方程(组)及偏微分方程(组)
  • 数学应用软件作业6 用Matlab求解微分方程(组)的解析和数值精选注:上机作业文件夹以自己的班级姓名学号命名,文件夹包括如下上机报告和 Matlab 程序。上机报告模板如下:佛山科学技术学院上 机 报 告课程名称 ...

    数学应用软件作业6 用Matlab求解微分方程(组)的解析解和数值解精选

    注:上机作业文件夹以自己的班级姓名学号命名,文件夹包括如下上机报告和 Matlab 程序。

    上机报告模板如下:

    佛山科学技术学院

    上 机 报 告

    课程名称 数学应用软件

    上机项目 用 Matlab 求解微分方程 (组)的解析解和数值解

    专业班级 姓 名 学 号

    一. 上机目的

    1. 了解求微分方程(组)的解的知识。

    2. 学习 Matlab 中求微分方程的各种解的函数,如dsolve 命令、ode45 函数等等,其中注意把

    方程化为新的方程的形式。

    3. 掌握用 matlab 编写程序解决求解微分方程的问题。

    二. 上机内容

    ’’’ ’’ ’

    1、求高阶线性齐次方程:y -y -3y +2y=0 。

    2 、求常微分方程组

    dx dy

    2x   10 cos t, x  2

     t 0

    dt dt

    dx  dy 2y  4e2t , y t 0  0

    dt dt

    3、求解

    分别用函数 ode45 和 ode15s 计算求解,分别画出图形,图形分别标注标题。

    4 、求解微分方程

    y ' y  t  1, y (0)  1,

    先求解析解,在[0,1]上作图;

    再用 ode45 求数值解 (作图的图形用 “o”表示),在同一副图中作图进行比较,用

    不同的颜色表示。

    三. 上机方法与步骤

    给出相应的问题分析及求解方法,并写出 Matlab 程序,并有上机程序显示截图。

    题1:直接用命令dsolve 求解出微分方程的通解。

    Matlab 程序:

    dsolve('D3y-D2y-3*Dy+2*y','x')

     dx

      5cos t 2 exp(2t) x y

     xt

    dy

    题 2 :将微分方程组改写为  5cos t 2 exp(2t) x y ,再用命令 dsolve 求解微分方

    dt

     x (0)  2, y (0)  0

    程的通解。

    Matlab 程序:

    建立 timu2.m 如下:

    [x,y]=dsolve('Dx=5*cos(t)+2*exp(-2*t)-x-y','Dy=-5*cos(t)+2*exp(-2*t)+x-

    y','x(0)=2,y(0)=0','t')

    x=simple(x)

    y=simple(y)

    题 3 : 由于所给的微分方程为一阶微分方程,则直接用函数ode45 和 ode15s 求解微分方程的

    数值解,具体程序如下:

    (1)Matlab 程序:

    建立M文件fun2.m,如下:

    function dy=fun2(t,y);

    dy=zeros(2,1);

    dy(1)=0.04*(1-y(1))-(1-y(2))*y(1)+0.0001*((1-y(2))^2);

    dy(2)=-10000*y(1)+3000*((1-y(2))^2);

    取t0=0,tf=100,建立程序timu32.m如下:

    t0=0;tf=100;

    [T,Y]=ode45('fun2',[0 100],[1 1]);

    plot(T,Y(:,1), '+',T,Y(:,2),'*');

    title('ode45图形');

    (2 )Matlab 程序:

    建立M文件fun1.m,如下:

    function dy=fun1(t,y

    展开全文
  • matlab求解微分方程

    千次阅读 2020-03-30 00:51:14
    matlab求解微分方程 1.解析 dsolve 函数 dsolve函数用于求常微分方程组的精确,也称为常微分方程的符号。如果没有初始条件或边界条件,则求出通;如果有,则求出特。 1)函数格式 Y = dsolve(‘eq1,eq2,…...

    matlab求解微分方程

    1.解析解

    dsolve 函数
    dsolve函数用于求常微分方程组的精确解,也称为常微分方程的符号解。如果没有初始条件或边界条件,则求出通解;如果有,则求出特解。
    1)函数格式

    Y = dsolve(‘eq1,eq2,…’ , ’cond1,cond2,…’ , ’Name’)

    其中,‘eq1,eq2,…’:表示微分方程或微分方程组;

            ’cond1,cond2,…’:表示初始条件或边界条件;
    
            ‘Name’:表示变量。没有指定变量时,matlab默认的变量为t;
    

    D: 微分符号;D2表示二阶微分,D3表示三阶微分,以此类推。
    例1
    在这里插入图片描述
    在这里插入图片描述
    例2
    在这里插入图片描述
    在这里插入图片描述

    2.数值解

    这里利用ode45函数求解
    1)函数格式

    [T,Y] = ode45(‘odefun’,tspan,y0)

    [T,Y] = ode45(‘odefun’,tspan,y0,options)

    [T,Y,TE,YE,IE] = ode45(‘odefun’,tspan,y0,options)

    sol = ode45(‘odefun’,[t0 tf],y0…)

    其中: odefun是函数句柄,可以是函数文件名,匿名函数句柄或内联函数名;

          tspan 是求解区间 [t0 tf],或者一系列散点[t0,t1,...,tf];
    
          y0 是初始值向量
    
          T 返回列向量的时间点
    
          Y 返回对应T的求解列向量
    
          options 是求解参数设置,可以用odeset在计算前设定误差,输出参数,事件等
    

    在编写fun函数的时候,需要将方程化为标准形式
    在这里插入图片描述
    例1
    在这里插入图片描述
    标准化:
    在这里插入图片描述
    fun函数:

    function dydt= fun1(t,y)
    dydt=zeros(2,1);  %初始化dydt,使其成为列数组
    %参数初始化
    %设y(1)=y,y(2)=y',dydt(1)=y',dydt(2)=y''
    dydt(1)=y(2);
    dydt(2)=-t*y(1)+exp(t)*y(2)+3*sin(2*t);
    end
    

    主函数:

    %数值解
    tspan=[3.9 4];
    y0=[8 2];%初值
    [t,y]=ode45('fun1',tspan,y0);
    plot(t,y(:,1),'-o');  %结果中y有两列,第一列为y,第二列为y',此处取第一列
    
    

    例2
    在这里插入图片描述
    fun函数:

    function dy = fun2(t,y)
    dy=zeros(2,1);
    %%%设u(t),v(t)为0
    c=2;
    a=2;
    d=3;
    b=4;
    %设y(1)=x,y(2)=y,dy(1)=x',dy(2)=y'
    dy(1)=-c*y(1)*y(2)-a*y(1);
    dy(2)=-d*y(1)*y(2)-b*y(2);
    
    end
    

    主函数:

    tspan=[0 10];
    y0=[2 2];%初值
    [t,y]=ode45('fun2',tspan,y0);
    plot(y(:,1),y(:,2));
    
    展开全文
  • Matlab求解微分方程

    2015-01-10 16:37:28
    Matlab求解各种微分方程代码,包括时延微分方程等。
  • MATLAB求解微分方程

    2021-05-23 20:48:31
    下面介绍如何用 Matlab 来计算微分方程(组)的数值。 Euler折线法 微分方程的基本数值解法——Euler折线法。 步骤: 分割求解区间,差商代替微商,代数方程 例子: : 等距剖分:a=x0<x1<x2<⋯&l
  • matlab 求解微分方程.ppt
  • Matlab软件求解微分方程的解析和数值二、实验目的:掌握 Matlab软件求解微分方程模型的解析和数值的方法三、实验内容1、熟悉Matlab软件求解微分方程解析的命令dsolve()2...
  • TMU_BME_2013 Topic: 如何使用 MATLAB微分方程组 a.What ? 微分方程 指描述未知函数的导数与自变 量之间的关系的方程未知函数是一元函 数的微分方程称作 常微分方程 未知函数 是多元函数的微分方程称作 偏...
  • 数学实验,Experiments in Mathematics,,微 分 方 程,实验目的,实验内容,MATLAB,2、学会用Matlab微分方程的数值.,实验软件,1、学会用Matlab求简单微分方程的解析.,1、求简单微分方程的解析.,4、实验作业.,2、...
  • 上机报告模板如下:佛山科学技术学院上 机 报告课程名称 数学应用软件上机项目 用Matlab求解微分方程(组)的解析和数值专业班级 姓 名 学 号一. 上机目的1. 了解求微分方程(组)的的知识。2. 学习Matla...
  • 《数学应用软件作业6 用Matlab求解微分方程(组)的解析和数值》由会员分享,可在线阅读,更多相关《数学应用软件作业6 用Matlab求解微分方程(组)的解析和数值(12页珍藏版)》请在人人文库网上搜索。...
  • 实验二微分方程与差分方程模型matlab求解 实验二: 微分方程与差分方程模型 Matlab 求解一、实验目的[1] 掌握解析、数值解法,并学会用图形观察的形态和进行的定性分析;[2] 熟悉 MATLAB 软件... 微分方程模型...
  • 精通matlab求解微分方程组和相平面图
  • MATLAB解微分方程matlab时间也不短了,可是一直没有接触过微分方程。这次看看书,学习学习,记点儿笔记。1.可以解析求解的微分方程。dsolve()调用格式为:将yc的内容copy到latex中编译,得到结果。关于Matlab的...
  • matlab微分方程求解

    2021-07-23 17:40:04
    matlab微分方程求解,通过编程实战掌握具体应用。包括matlab微分方程求解前、matlab微分方程求解中、matlab微分方程求解后。
  • matlab求解微分方程解析

    万次阅读 2019-08-09 20:58:31
    1求解微分方程方程组用函数“dsolve” dsolve(‘方程1’,‘方程2’…‘方程n’,‘初始条件’,‘自变量’) clc,clear %% %求解du/dt=i+u^2的通 dsolve('Du=1+u^2','t') %% %求解微分方程组 dy^2/dx^2+4*dy/dx+29*y=...
  • 微分方程的解析,求微分方程(组)的解析命令:,dsolve(方程1, 方程2,方程n, 初始条件, 自变量),结 果:u = tan(t-c),用MATLAB求解微分方程, 输入命令:dsolve(Du=1+u2,t), 输入命令: y...
  • (1)PDEtool(GUI)求解微分方程的一般步骤 在Matlab命令窗口输入pdetool,回车,PDE工具箱的图形用户界面(GUI)系统就启动了.从定义一个偏微分方程问题到完成微分方程的定,整个过程大致可以分为六个阶段

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 8,994
精华内容 3,597
关键字:

matlab求解微分方程模型

matlab 订阅