一、写在前面
本篇文章介绍了以插值方法为基础的数值积分算法,其中最经典的便是Romberg提出的思想理念,同上篇文章一样,还是用一个实验来展示Romberg算法思想。
实验内容:
二、实验过程
在代码片中,我给出了较为详细的注释,在这里不在多说,最好的语言是代码!^V^
三、实验结果:
【参考代码】
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
double function(double x) //原函数(可以不用给出,只给出几组已知数据放在数值中)
{
if(x == 0)
return 1; //当x->0,函数极限是1
return sin(x)/x;
}
double CompositeTrapezoidalRule(double a, double b, int n) //复化梯形公式在区间[a, b]上n等分
{
int i;
double h = (b-a)/n; //h为步长
double sum = function(a) + function(b);
for(i = 1; i<n; i++) //运用公式
{
sum += 2*function(a + h