Gauss-Legendre积分公式
- 格式:pdf
- 大小:74.43 KB
- 文档页数:3
Gauss-Legendre积分公式
数值逼近实习
题⽬⼆重积分的复化梯形公式
专业信息与计算科学
班级计算092
学号3090811072
学⽣薛藏朋
指导教师秦新强2011 年
⼀、实验⽬的1.利⽤Gauss-Legendre 公式计算积分
2.⽐较计算误差与实际误差
⼆、数学模型
∈--=++≈?∑-=),(),(12)(][)]()(2)([2)(''211b a f h a b f R b f x f a f h dx x f n b a n k k ηη 三、算法
Step 1:输⼊等分数n
Step2:输⼊积分上下限;
Step3: 求出步长及对应个点;
Step4: 由
∈--=++≈?∑-=),(),(12)(][)]()(2)([2)(''211b a f h a b f R b f x f a f h dx x f n b a n k k ηη计算积分结果 Step5:将积分结果输出;
四、程序#include
using namespace std;
#include"math.h"
#define N 10
double f(double x)
{double z;
z=cos(x);
return(z);
}
int main(){
int i, n,m;
double X[N],A[N],F=0;
cout<<"请输⼊代数精度n"<
cin>>n;
m=(n+1)/2;
switch(m)
{
case 1:X[1]=0;A[1]=2; break;
case
2:X[1]=0.5773502692;X[2]=-X[1];A[1]=A[2]=1;break ;
case
3:X[1]=0.77459666920;X[2]=-X[1];X[3]=0;A[1]=A[2] =0.5555555556;A[3]=0.8888888889;break;
case
4:X[1]=0.8611363116;X[2]=-X[1];X[3]=0.3399810436; X[4]=-X[3];A[1]=A[2]=0.3478548451;
A[3]=A[4]=0.6521451549; break;
case
5:X[1]=0.9061798459;X[2]=-X[1];X[3]=0.5384693101 0;X[4]=-X[3];X[5]=0;A[1]=A[2]=0.2369268851;
A[3]=A[4]=0.4786286705;A[5]=0.5688888889; break;
case
6:X[1]=0.9324695142;X[2]=-X[1];X[3]=0.6612093865 ;X[4]=-X[3];X[5]=0.12386191816;X[6]=-X[5];
A[1]=A[2]=0.1713244924;A[3]=A[4]=0.3607615730;A [5]=A[6]=0.4679139346; break;
case
7:X[1]=0.9491079123;X[2]=-X[1];X[3]=0.7415311856 ;X[4]=-X[3];X[5]=0.40584515140;X[6]=-X[5];X[7]=0;
A[1]=A[2]=0.1294849662;A[3]=A[4]=0.2797053915;A [5]=A[6]=0.3818300505;A[7]=0.4179591834; break;
case
8:X[1]=0.9602898565;X[2]=-X[1];X[3]=0.7966664774 ;X[4]=-X[3];X[5]=0.5255324099;X[6]=-X[5];X[7]=0.1 834346425;
X[8]=-X[7];A[1]=A[2]=0.1012285363;A[3]=A[4]=0.22 23810345;A[5]=A[6]=0.3137066459;A[7]=A[8]=0.362 6837834; break;
default:printf("error\n");
}
for(i=1;i<=m;i++)
{
F=F+f(X[i])*A[i];
}
cout<<"具有" }五、数值算例 六、参考⽂献[1]秦新强,数值逼近,西安:西安理⼯⼤学印刷⼚,2010. [2]秦新强,数值逼近学习指导,西安:西安理⼯ ⼤学印刷⼚,2010.