📜  哈代法则

📅  最后修改于: 2021-05-28 04:19:21             🧑  作者: Mango

哈代法则是牛顿-科茨公式的扩展。考虑点f列出的函数f(x)  x_i等距 h=x_{i+1} - x_i这样 f_1 = f(x_1), f_2 = f(x_2).....
鉴于以下输入
1.函数f(x) ,必须计算其被积数。
2.上限和下限   x_{1}, x_{2}=x_{1}+h, x_{3}=x_{1}+2h, x_{4}=x_{1}+3h, x_{5}=x_{1}+4h, ....

哈代法则可以通过近似被积f(x)来推导

例子 :

任务是找到函数的使用哈代的规则被积

f(x) = 1/(1+x^2)上限b = 6,下限a = 0。

方法 :
哈代法则是一种数值积分技术,用于查找积分的近似值。

 f_1, f_2, f_3, f_4, f_5, f_6, f_7 是f(x)在它们各自的x间隔处的值。
为了对间隔(a,b)中的任何函数f(x)进行积分,请遵循以下步骤:

1.n = 6的值,它是间隔被划分成的部分的数量。
2.计算宽度,h =(ba)/ 6
3,将x0到x6的值计算为 x_1 = a, x_2 = x_1 + h, x_3 = x_1 + 2h, ...x_7=x_1 + 5h
考虑y = f(x)。现在找到的值 y(y_1, y_2, .. y_7) 对于相应的 x(x_1, x_2, x_3... x_7)价值观。
4.将所有以上找到的值替换为Hardy规则,以计算积分值。

下面是上述方法的实现:

// C program to implement Hardy's Rule
// on the given function
  
#include 
#include 
  
// In order to represent the implementation,
// a function f(x) = 1/(1 + x) is considered
// in this program
  
// Function to return the value of f(x)
// for the given value of x
float y(float x)
{
    return (1 / (1 + x));
}
  
// Function to computes the integrand of y
// at the given intervals of x with
// step size h and the initial limit a
// and final limit b
float Hardyrule(float a, float b)
{
    // Number of intervals
  
    int n = 6;
    int h;
  
    // Computing the step size
    h = ((b - a) / n);
    float sum = 0;
  
    // Substituing a = 0, b = 4 and h = 1
    float hl = (28* y(a) + 162 * y(a + h)
  
                + 220 * y(a + 3 * h)
                +  162* y(a + 5 * h)
                +28* y(a + 6*h))*h/100
                ;
  
    sum = sum + hl;
    return sum;
}
  
// Driver code
int main()
{
    float lowlimit = 0;
    float upplimit = 6;
    printf("f(x) = %.4f",
           Hardyrule(0, 6));
    return 0;
}
输出:
f(x) = 1.9500

想要从精选的最佳视频中学习和练习问题,请查看《基础知识到高级C的C基础课程》。