-常微分方程的数值解法.pptVIP

  • 22
  • 0
  • 约小于1千字
  • 约 10页
  • 2019-05-12 发布于湖北
  • 举报
常微分方程的数值解法 引入 微分方程的数值解法是动态系统仿真的基础。 思考:数值分析课程-计算机求解数学问题? 仿真软件的实现(具体执行步骤) ? 常微分方程的数值解法 Euler法 Runge-Kutta法 Adams算法 Gear算法 Matlab下的常微分方程求解函数 二阶、三阶龙格库塔法ode23() 四阶、五阶龙格库塔法ode45() 自适应变步长求解法 Matlab下的常微分方程求解函数 问题描述: 调用格式: [t,x]=ode23(方程函数名,tspan,x0,选项,附加参数) [t,x]=ode45(方程函数名,tspan,x0,选项,附加参数) 选项可以通过odeget(),odeset()函数来设置,通常采用默认值即可。 Matlab下的常微分方程求解函数 调用格式: [t,x]=ode23(方程函数名,tspan,x0,选项,附加参数) [t,x]=ode45(方程函数名,tspan,x0,选项,附加参数) 说明: 方程函数名:为描述系统状态的M函数的名称,用单引号括住 tspan:[t0,tf]分别为起始、终止时间; x0: 状态变量的初始值。 t:求解的时间变量 x:求得的状态变量 方程函数名的编写 编写格式固定 function xdot = 方程函数名(t,x,flag,附加参数) t:时间变量; x:方程的状态变量; xdot:状态变量的导数; flag:运行标志位,系统变量; 附加参数:用逗号分隔; An example 设著名的Lorenz模型的状态方程表示为 若令其初值为 试用Matlab求解该方程的数值解。 参见:lorenzeq,main_lorenzeq ex2: 已知著名的Van der Pol方程 选择状态变量 ,则原方程可以变换成 这里 为一可变参数,使用附加参数的方法对其进行传递。 参见函数:vdp main_vdp Ex3 考虑著名的Rossler微分方程组, 选定a=b=0.2,c=5.7,且x1(0)=x2(0)=x3(0)=0,求解该微分方程。 * * * *

文档评论(0)

1亿VIP精品文档

相关文档