高斯型积分公式
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Guass-Legendre 积分程序
1. 目的意义:
可以提高数值积分的代数精度
2. 数学公式:
)
()()(1k n k k b a x f A dx x f x ∑⎰=≈ρ
3. 程序:
#include
#include
#define N 10
#define f(x) (cos(x))
int main()
{
int n=0;
int k=0;
int i=0;
double x[N]={0.0};
double A[N]={0.0};
double s=0.0;
n=2;
switch(n)
{
case 1:
{
x[1]=0;
A[1]=2;
break;
}
case 2:
{
x[1]=-0.5773502692;
x[2]=0.5773502692;
A[1]=1;
A[2]=1;
break;
}
case 3:
{
x[1]=-0.77459666920;
x[2]=0;
x[3]=0.77459666920;
A[1]=0.5555555556;
A[2]=0.8888888889;
A[3]=0.5555555556;
break;
}
case 4:
{
x[1]=-0.8611363116;
x[2]=-0.3399810436;
x[3]=0.3399810436;
x[4]=0.8611363116;
A[1]=0.3478548451;
A[2]=0.6521451549;
A[3]=0.6521451549;
A[4]=0.3478548451;
break;
}
default:
{
printf("error! 请添加数据!\n");
return 0;
}
}
for(i=1;i<=n;i++)
{
s=s+A[i]*f(x[i]);
}
printf("由高斯-勒让德积分公式计算得I=%lf\n",s);
return 0;
}
4.运行结果:
5.参考文献:
[1] 谭浩强. C语言程序设计[M]. 北京:清华大学出版社,2005.
[2] 秦新强. 数值逼近, 西安,2010.