资源简介
这是一个基于计算方法拉格朗日插值法实现的C语言版本的小程序,可以计算不同节点分割下的估计值及其误差值
代码片段和文件信息
#include
#include
#define PI 3.1415926535898
double f1(int iint n){//第一个xi序列
return -5+10*i/(double)n;
}
double f2(int iint n){//第二个xi序列
return -5*cos((2*i+1)*PI/(2*n+2));
}
double g(int i){//yi序列
return (double)i/50.0-5;
}
double l1(int ndouble x){//1中的差值函数
int ij;
double fxtmp;
fx=0.0;
for(i=0;i<=n;i++){
tmp=1.0;
for(j=0;j tmp=tmp*(x-f1(jn))/(f1(in)-f1(jn));
for(j=i+1;j<=n;j++)
tmp=tmp*(x-f1(jn))/(f1(in)-f1(jn));
fx=fx+tmp*1/(1+f1(in)*f1(in));
}
return fx;
}
double l2(int ndouble x){//2中的差值函数
int ij;
double fxtmp;
fx=0.0;
for(i=0;i<=n;i++){
tmp=1.0;
for(j=0;j tmp=tmp*(x-f2(jn))/(f2(in)-f2(jn));
for(j=i+1;j<=n;j++)
tmp=tmp*(x-f2(jn))/(f2(in)-f2(jn));
评论
共有 条评论