应用软件课程设计 0 应用软件课程设计实验二:复化求积公式求数值积分 一、实验题目 已知积分精确值I=4.006994,分别用复化梯形公式和复化辛普森公式求积分 201exp( )Ix dx 要求:不允许用MATLAB 内部函数;分析用复化梯形公式时,剖分区间n 对误差的影响;比较两种方法哪种最接近精确值并分析原因;与MATLAB 中的quad、quadl 命令比较结果。 附:复化梯形公式和复化辛普森公式 记,nabhninabiaxi,,1,0, baninbfnabiafafnabTdxxf11)(21)()(21)( 1111111112( )( )()4 ()( )62( )( )2( )4()6iinnbxiiiiaxiinniiiixxhf x dxf x dxf xff xhf af bf xf x 二、算法说明 复化梯形公式算法的N-S 图: 给定f 表示被积函数,[a,b]表示积分区间,n 表示积分区间被拆分成小区间个数 function T=JF(f,a,b,n) w= f(a)/2 s=(b-a)/n; i=1 i<=n-1 yy= f(a+i*s); y=sum(yy); z=f (b)/2; T=s*(w+y+z); 算法的伪代码描述: 1、定义函数function T=JF(f,a,b,n) 2、w= f(a)/2 %% f(a)表示在a 点函数的值 3、s=(b-a)/n; %%每个小区间的宽度 4、对于i=1,2,3,4,5 ……,n-1 yy=f(a+i*s); %%每一个i 都计算出一个yy,形成一个向量 5、y=sum(yy);%%对向量 yy 所有元素求和 6、z=f (b)/2;%% 在b 点函数的值 7、T=s*(w+y+z); %%形成最终值,既积分结果 应用软件课程设计 1 复化Simpson 求积算法的N-S 图: 给定f 表示被积函数,[a,b]表示积分区间,n 表示积分区间被拆分成小区间个数 function Q=SJF(f,a,b,n) g= f(a) w=f (b) h=(b-a)/n; i=1 i<=n-1 yy= f(a+i*h); y=2*sum(yy) k=1 K<=n ll=f(a+k*h-h/2); l=4*sum(ll); Q=(g+w+y+l)*h/6; 算法的伪代码描述: 1、定义函数function Q=SJF(f,a,b,n) 2、g= f(a) %% f(a)表示在a 点函数的值 3、h=(b-a)/n; %%每个小区间的宽度 w=f (b) %% 在b 点函数的值 4、对于i=1,2,3,4,5 ……,n-1 yy=f(a+i*h); %%每一个i 都计算出一个yy,形成一个向量 5、y=2*sum(yy);%%对向量 yy 所有元素求和 6、对于k=1,2,3,4,5 ……,n ll=f(a+k*h-h/2); %%每一个k 都计算出一个ll,形成一个向量 7、l=4*sum(ll);%%对向量 ll 所有元素求和 8、Q=(g+w+y+l)*h/6; %%形成最终...