已阅读5页,还剩13页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
一阶常微分方程的数值求解,一.教学要求,掌握Euler方法数值求解一阶常微分初值问题,并能利用MATLAB软件进行数值计算。,二.教学过程,考虑如下的一维经典初值问题,基本思想:用差商代替微商,根据Talyor公式,y(x)在点xk处有,具体步骤:,等距剖分:,步长:,分割求解区间,差商代替微商,得方程组:,分割求解区间,差商代替微商,解代数方程,为分割点,k=0,1,2,.,n-1,yk是y(xk)的近似,例1:用Euler法求解如下初值问题,取步长h=(2-0)/n=2/n,得差分方程,当h=0.1,即n=20时,Matlab源程序见Euler_example1.m,解:,clc;clear;h=0.1;a=0;b=2;x=a:h:b;y(1)=1;fori=1:length(x)-1y(i+1)=y(i)+h*0.5*y(i);endplot(x,y,r+,x,exp(0.5*x),k-);xlabel(Variablex);ylabel(Variabley);,Euler_example1.m,数值解与真解如下图,例2:用Euler法求解如下初值问题,取步长h=(2-0)/n=2/n,得差分方程,当h=0.1,即n=20时,Matlab源程序见Euler_example2.m,解:,clc;clear;h=0.1;a=0;b=2;x=a:h:b;y(1)=1;fori=1:length(x)-1y(i+1)=y(i)+h*(y(i)+2*x(i)/(y(i)2);endplot(x,y,r+,x,(5/3*(exp(3*x)-2*x-2/3).(1/3),k-);xlabel(Variablex);ylabel(Variabley);,Euler_example2.m,数值解与真解如下图,为了减小误差,可采用以下方法:,让步长h取得更小一些;如取h=0.01,h=0.001,改用具有较高精度的数值方法:,龙格-库塔方法,如Runge-Kutta(龙格-库塔)方法,是一类求解常微分方程的数值方法,有多种不同的迭代格式,龙格-库塔方法的基本思想,常用的是经典的四阶R-K方法,其中,例3:利用四阶R-K方法求解例1与例2,并与Euler方法的数值解进行比较。,当h=0.1,即n=20时,求解例1的Matlab源程序见RK_example1.m,数值结果如下图,clc;clear;h=0.1;a=0;b=2;x=a:h:b;Euler_y(1)=1;%Euler方法的初值RK_y(1)=1;%R-K方法的初值fori=1:length(x)-1Euler_y(i+1)=Euler_y(i)+h*0.5*Euler_y(i);%Euler方法L1=0.5*RK_y(i);%L1L2=0.5*(RK_y(i)+0.5*h*L1);%L2L3=0.5*(RK_y(i)+0.5*h*L2);%L3L4=0.5*(RK_y(i)+h*L3);%L4RK_y(i+1)=RK_y(i)+1/6*h*(L1+2*L2+2*L3+L4);%R-K方法endplot(x,Euler_y,r+,x,exp(0.5*x),k-,x,RK_y,b*);xlabel(Variablex);ylabel(Variabley);,RK_example1.m,当h=0.1,即n=20时,求解例2的Matlab源程序见RK_example2.m,数值结果如下图,functionz=rightf(x,y)z=y+2*x/(y2);,clc;clear;h=0.1;a=0;b=2;x=a:h:b;Euler_y(1)=1;%Euler方法的初值RK_y(1)=1;%R-K方法的初值fori=1:length(x)-1Euler_y(i+1)=Euler_y(i)+h*(Euler_y(i)+2*x(i)/(Euler_y(i)2);%Euler方法L1=rightf(x(i),RK_y(i);%L1L2=rightf(x(i)+0.5*h,RK_y(i)+0.5*h*L1);%L2L3=rightf(x(i)+0.5*h,RK_y(i)+0.5*h*L2);%L3L4=rightf(x(i)+h,RK_y(i)+h*L3);%L4RK_y(i+1)=RK_y(i)+1/6*h*(L1+2*L2+2*L3+L4);%R-K方法endplot(x,Euler_y,r+,x,(5/3*(exp(3*x)-2*x-2/3).(1/3),k-,x,RK_y,b*);xlabel(Variablex);ylabel(Variabley);,rightf.m,RK_example2.m,Matlab函数数值求解,T,Y=solver(odefun,tspan,y0),其中y0为初值条件,tspan为求解区间;Matlab在数值求解时自动对求解区间进行分割,T(向量)中返回的是分割点的值(自变量),Y(向量)中返回的是解函数在这些分割点上的函数值。solver为Matlab的ODE求解器(可以是ode45、ode23、ode113、ode15s、ode23s、ode23t、ode23tb),没有一种算法可以有效地解决所有的O
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026中铁建工集团第一建设有限公司秋季校园招聘考试笔试备考题库及答案解析
- 2025山东聊城阳谷县事业单位综合类岗位招聘工作人员20人考试笔试模拟试题及答案解析
- 企业数字化供应链协作方案
- 2026湖北省定向华中师范大学选调生招录笔试考试备考题库及答案解析
- 2025山东枣庄山亭区青年见习招募55人(第五批)笔试考试参考题库附答案解析
- 2025年河北邯郸市永年区公开招聘医院人事代理人员112名笔试考试参考试题附答案解析
- 2025福建厦门市集美区诚毅中学产假顶岗英语教师招聘1人考试笔试模拟试题及答案解析
- 2026民航广西空管分局校园招聘笔试考试参考题库附答案解析
- 广东省阳江市阳春市第四中学2025-2026学年八年级上学期11月期中物理试题(含答案)
- 2025年法考主观题真题及答案
- 2024年国家开放大学电大开放英语考试题题库
- 《涡流检测》课件
- 数电票商品税收分类编码表
- MOOC 光学发展与人类文明-华南师范大学 中国大学慕课答案
- 设备安装监理细则
- 大创申报答辩ppt
- 《活出最乐观的自己》读书笔记思维导图PPT模板下载
- 高中地理 人教版 选修二《资源、环境与区域发展》第五课时:玉门之变-玉门市的转型发展
- 催化加氢技术(药物合成技术课件)
- 近三年(2023-2023年)广西物理学业水平考试试题
- 建筑结构检测与加固课程复习考试试题及答案B
评论
0/150
提交评论