zoukankan      html  css  js  c++  java
  • matlab ODE数值解

    ode45

    ode45,常微分方程的数值求解。MATLAB提供了求常微分方程数值解的函数。当难以求得微分方程的解析解时,可以求其数值解,Matlab中求微分方程数值解的函数有七个:ode45,ode23,ode113,ode15s,ode23s,ode23t,ode23tb 。
    ode是Matlab专门用于解微分方程的功能函数。该求解器有变步长(variable-step)和定步长(fixed-step)两种类型。不同类型有着不同的求解器,其中ode45求解器属于变步长的一种,采用Runge-Kutta算法;其他采用相同算法的变步长求解器还有ode23。
    ode45表示采用四阶-五阶Runge-Kutta算法,它用4阶方法提供候选解,5阶方法控制误差,是一种自适应步长(变步长)的常微分方程数值解法,其整体截断误差为(Δx)^5。解决的是Nonstiff(非刚性)常微分方程。
    ode45是解决数值解问题的首选方法,若长时间没结果,应该就是刚性的,可换用ode15s试试。
    [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,[t0tf],y0...)
    [T,Y] = ode45(odefun,tspan,y0)
    odefun 是函数句柄,可以是函数文件名,匿名函数句柄或内联函数
    tspan 是区间 [t0 tf] 或者一系列散点[t0,t1,...,tf]
    y0 是初始值向量
    T 返回列向量的时间点
    Y 返回对应T的求解列向量
    [T,Y] = ode45(odefun,tspan,y0,options)
    options 是求解参数设置,可以用odeset在计算前设定误差,输出参数,事件等
    [T,Y] = ode45(odefun,tspan,y0,options)
    options 是求解参数设置,可以用odeset在计算前设定误差,输出参数,事件等
    [T,Y,TE,YE,IE] =ode45(odefun,tspan,y0,options)
    在设置了事件参数后的对应输出
    TE 事件发生时间
    YE 事件发生时之答案
    IE 事件函数消失时之指针i
    sol =ode45(odefun,[t0 tf],y0...)
    sol 结构体输出结果
  • 相关阅读:
    HTTP——Web服务器、代理、缓存
    nginx配置文件详解2
    nginx配置文件详解
    shell笔记2
    django笔记
    python 发请求,urllib,urllib2
    nginx配置
    python os模块学习
    mac 终端命令小结
    mac常用命令笔记
  • 原文地址:https://www.cnblogs.com/xiaobaohuizi/p/10060334.html
Copyright © 2011-2022 走看看