选用复合梯形公式复合Simpson公式计算Word格式文档下载.docx
《选用复合梯形公式复合Simpson公式计算Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《选用复合梯形公式复合Simpson公式计算Word格式文档下载.docx(9页珍藏版)》请在冰豆网上搜索。
(1)I=
(2)I=
(3)I=
(4)I=
二·
实验要求:
1.编制数值积分算法的程序
2.分别用两种算法计算同一个积分,并比较计算结果
3.分别取不同步长,试比较计算结果(如n=10,20等)
4.给定精度要求,试用变步长算法,确定最佳步长
三·
实验流程图:
复化梯形公式:
输入端点a,b正整数n
直接计算TN=h/2*[f(a)+2∑f(xk)+f(b)]k=1,2…,n-1
输出定积分近似值TN
复化Simpson公式
输出定积分近似值SN
(1)置h=(b-a)/(2n)
(2)F0=f(a)+f(b),F1=0,F2=0
(3)对j=1,2,…,2n-1循环执行步4到步5
(4)置x=a+jh
(5)如果j是偶数,则F2=F2+f(x),否则F1=F1+f(x)
(6)置SN=h(F0+4F1+2F2)/3
(7)输出SN,停机
四·
源程序:
#include<
iostream>
F0=f1(a)+f1(b);
F1=F2=0;
for(j=1;
j<
2*n;
j++)
{
x=a+j*h;
if(j%2==0)
F2=F2+f1(x);
else
F1=F1+f1(x);
}
S=((F0+F1*4+F2*2)*h)/3;
cout<
<
"
第一个积分公式:
端点a为"
a<
、b为"
b<
n为"
n<
endl<
结果为"
S<
endl;
//2
a=0;
b=1;
h=(b-a)/(2*n);
F0=f2(a)+f2(b);
F2=F2+f2(x);
F1=F1+f2(x);
S=(F0+F1*4+F2*2)*h/3;
第二个积分公式:
//3
F0=f3(a)+f3(b);
F2=F2+f3(x);
F1=F1+f3(x);
第三个积分公式:
//4
F0=f4(a)+f4(b);
F2=F2+f4(x);
F1=F1+f4(x);
第四个积分公式:
利用复化梯形公式求积分"
//1
b=0.25*3.141592;
h=(b-a)/n;
F1=0;
n;
F1=F1+f1(x);
S=((F0+F1*2)*h)/2;
F1=F1+f2(x);
F1=F1+f3(x);
F1=F1+f4(x);
return0;
}
五.实验结果
六.实验心得:
通过本次实验,我掌握了求数值积分的各种方法。
了解了数值积分精度与步长的关系,体验了各种数值积分方法的精度和计算量,也让我了解了三种积分公式的精度及其区别。
虽然复化梯形公式,运算简单,但是其结果不够精确。
复化Simpson公式,比较复杂一点,但是其效果却比复化梯形公式的结果好的多。
Romberg公式给我们求最佳步长的方法,通过其可以算出十分精确的值。