下载此文档

微分方程数值解 打靶法求边值问题.doc


文档分类:高等教育 | 页数:约3页 举报非法文档有奖
1/3
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/3 下载此文档
文档列表 文档介绍
微分方程数值解实验七学号班级姓名指导教师实验题目打靶法求边值问题评分实验要求:掌握打靶法求边值问题问题: 用打靶法求如下边值问题2、实验内容:(求解过程,包括简单得分析,求解程序代码,所得结果)程序代码:(1)先猜测初值,调用T7函数龙格库塔算法计算出该初值下得边界值,与题中得边界值相减,计算差值,既F(s)=yb—y(b)、functiony=f(a)%利用龙格库塔算法计算F(s)=yb—y(b)qj=[1,2];cz=[0,a];[t,w]=T7(qj,cz,0、01);y=0—w(end,2);end(2)在ydot函数中输入题目中得微分方程,用龙格库塔算法计算预设初值下得边界值。function [t,w]=T7(qj,cz,h)%求解实验7问题%qj为所求区间%cz=[y1,y2]为y1,y2得初值%h为步长%eg:[t,w]=T7([qj,cz,0、01); n=round((qj(2)—qj(1))/h); t=zeros(n,1);w=zeros(n,length(cz)); t(1)=qj(1);w(1,:)=cz;fori=1:nt(i+1)=t(i)+h; w(i+1,:)=RungeKutta(t(i),w(i,:),h);endendfunctiony=RungeKutta(t,w,h)%龙格—库塔法求解微分方程%h为步长k1=ydot(t,w);k2=ydot(t+h/2,w+h/2*k1); k3=ydot(t+h/2,w+h/2*k2); k4=ydot(t+h,w+h*k3);y=w+h/6*(k1+2*k2+2*k3+k4);endfunctionz=ydot(t,y)%输入带求解得微分方程z(1)=(4-2*y(2))/(t^3);z(2) =-exp(y(1));end(3)利用二分法不断修正,调整初值, sol=dbf(a,b,tol)%打靶法求解边值%f:F(s)=yb-y(b);%a,b:猜想初值%tol:容忍误差%sol:方程f(x)=0得根%eg:sol=dbf(0,2、5,0、001)ifsign(f(a))*sign(f(b))>0error('Pleaseletf(a)*f(b)<0')endi=1;k(i,1)=a;k(i,2)=b;whileabs(k(i,2)-k(i,1))>tolif f((k(i,1)+k(i,2))/2)==0 break end iff(k(i,1))*f((k(i,1)+k(i,2))/2)〈0 k(i+1,1)=k(i,1); k(i+1,2)=(k(i,1)+k(i,2))/2; else k(i+1,2)=k(i,2); k(i+1,1)=(k(i,1)+k(i,2))/2; end i=i+1;endsol=(k(i,1)+k(i,2))/2;end执行代码

微分方程数值解 打靶法求边值问题 来自淘豆网m.daumloan.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数3
  • 收藏数0 收藏
  • 顶次数0
  • 上传人君。好
  • 文件大小24 KB
  • 时间2020-10-12