《复化积分法(复化梯形求积-复化Simpson公式-变步长求积法)MATLAB编程实验报告(共4页).doc》由会员分享,可在线阅读,更多相关《复化积分法(复化梯形求积-复化Simpson公式-变步长求积法)MATLAB编程实验报告(共4页).doc(4页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上复化积分法(复化梯形求积,复化Simpson公式,变步长求积法)MATLAB编程实验报告一、 问题描述:编写函数实现复化积分法。二、 实验步骤(过程):(一) 复化求积法(1) 复化梯形求积:用复化梯形求积公式求解function f=Tn(a,b,n,y)syms t;h=(b-a)/n;f=0;for k=1:n+1 x(k)=a+(k-1)*h z(k)=subs(y,t,x(k);end for i=2:n f=f+z(i); end q=subs(y,t,a); if y=sin(t)/t&a=0 q=1; end p=subs(y,t,b); T=h/2*
2、(q+p+2*f); T=vpa(T,7)clc,clear;syms t;a=0;b=1;y=sin(t)/t;n=8;Tn(a,b,n,y);(2) 复化Simpson公式:用复化Simpson公式求解function f=simpson(a,b,n,y)syms t;h=(b-a)/n;f=0;l=0;for k=1:n+1 x(k)=a+(k-1)*h w(k)=0.5*h+x(k) z(k)=subs(y,t,x(k);end for i=2:n f=f+z(i); end for i=1:n l=l+w(i); end q=subs(y,t,a); if y=sin(t)/t&a=
3、0 q=1; end p=subs(y,t,b); T=h/2*(q+p+2*f);T=vpa(T,7)clc,clear;syms t;a=1;b=2;y=exp(1/t);n=5;simpson(a,b,n,y);(3) 变步长求积法:以书本例4.5为例function f=TN(a,b,y,R0)syms t;T=;f=0;q=subs(y,t,a);if y=sin(t)/t&a=0 q=1;endp=subs(y,t,b);T(1)=(b-a)/2*(q+p);i=2;n=i-1;h=(b-a)/n;z1=a+h/2;z2=subs(y,t,z1);T(2)=T(1)/2+h/2*z
4、2;while (T(i)-T(i-1)/3)R0 i=i+1 n=i-1; n=2(n-1) h=(b-a)/n; f=0; for k=1:n x(k)=a+h*(k-1); w(k)=x(k)+h/2; z(k)=subs(y,t,w(k); f=f+z(k); end T(i)=T(i-1)/2+h/2*f if (T(i)-T(i-1)/3)=R0 break; endendtl=T(i)clc,clear;format long;syms t;y=sin(t)/t;a=0;b=1;R0=0.5*10(-3);TN(a,b,y,R0);结论如下:三、 结论:复化梯形求积:复化Simpson公式变步长求积法专心-专注-专业