Calculating Area Under Curve Using Code and Excel - Prum Soriya

Hot

Post Top Ad

Saturday, 2 July 2022

Calculating Area Under Curve Using Code and Excel



Calculating Left Reimann Sum, Right Reimann Sum and Midpoint Riemann sum on excel:




Code on c++ for calculating area under curve with trapezoidal rule:
#include <iostream> 
#include <cmath>
#include <fstream>
#include <iomanip>

double f(double x);
double LeftRiemannSum(double a, double b, unsigned int n);
double RightRiemannSum(double a, double b, unsigned int n);
double MidPointRiemannSum(double a, double b, unsigned int n);
int main()
{
    std::ofstream File("data.csv");
     File << "n,L_n,R_n,M_n\n"; 
     for (unsigned int i = 20; i <= 10000; i += 20)
    {
        File << i << std::setprecision(11) << ','
               << LeftRiemannSum(0, 2, i) << ','
               << RightRiemannSum(0, 2, i) << ','
               << MidPointRiemannSum(0, 2, i) << '\n';
    }
    std::cout << "Finished Writting...";
    std::cin.get();
    return 0;
}

double f(double x)
{
    return std::pow(x, 3) + 1;
}

double LeftRiemannSum(double a, double b, unsigned int n)
{
    double dx = (b-a) /n;
    double sum = 0.0;
    double x = a;
    for (unsigned int i = 1; i<=n; i++)
    {
        sum += f(x) * dx;  
        x += dx;
    }
    return sum;
}

double RightRiemannSum(double a, double b, unsigned int n)
{
    double dx = (b - a) / n;
    double sum = 0.0;
    double x =a;
    for (unsigned int i = 1; i<= n; i++)
    {
        x +=dx;
        sum += f(x) * dx;
    }
    return sum;
}

double MidPointRiemannSum(double a, double b, unsigned int n)
{
    double dx = (b -a) / n;
    double sum = 0.0;
    double x = a + 0.5*dx;
    for(unsigned int i = 1; i <= n; i++)
    {
        sum += f(x) * dx;
        x += dx;
    }
    return sum;
}
Result of the code:

No comments:

Post a Comment

ISP Network Design Research Project

Post Top Ad