Skip to content

A library for numerical integration of functions. Functions are passed as blocks, the integration interval and step are passed as function parameters. 3 methods are implemented.

License

Notifications You must be signed in to change notification settings

Stuzja/quadrature

Repository files navigation

Quadrature🤡🤡🤡🤡🤡💀

Мы команда - квадратура!
Такова наша натура!
Вставлю сюда слово тура!
Я закончил, всë, ура!

Команде “Quadrature” было поручено разработать библиотеку на языке Ruby, ответственную за интегрирование функций. В качестве методов, нами были выбраны следующие способы:
Во всех нижеперечисленных функциях входные параметры это:

@param [Block] func - интегрируемая функция;
@param [Float] min_lim - левая граница интеграла;
@param [Float] max_lim - правая граница интеграла;
@param [Float] delta - шаг интегрирования;

  1. Метод трапеции — метод численного интегрирования функции одной переменной, заключающийся в замене на каждом элементарном отрезке подынтегральной функции на многочлен первой степени, то есть линейную функцию. Площадь под графиком функции аппроксимируется прямоугольными трапециями.
    Чтобы воспользоваться это функцией используйте: Quadrature.trapezoidal_integration(func, min_lim, max_lim, delta)

  2. Метод Симпсона — метод, заключающийся в приближении подыинтегральной функции на отрезке [a, b] интерполяционным многочленом второй степени p2(x), то есть приближение графика функции на отрезке параболой.
    Чтобы воспользоваться это функцией используйте: Quadrature.simpson_integration(func, min_lim, max_lim, delta)

  3. Метод прямоугольников — метод численного интегрирования функции одной переменной, заключающийся в замене подынтегральной функции на многочлен нулевой степени, то есть константу, на каждом элементарном отрезке. (приближённое вычисление площади под графиком суммированием площадей конечного числа прямоугольников, ширина которых будет определяться расстоянием между соответствующими соседними узлами интегрирования, а высота — значением подынтегральной функции в этих узлах)
    Чтобы воспользоваться это функцией используйте: Quadrature.rectangle_integral(func, min_lim, max_lim, delta)

  4. Метод Чебышёва является одним из представителей методов наивысшей алгебраической точности Гаусса. Его отличительной особенностью является наличие у подынтегральной функции множителя 1/sqrt(1-x^2).
    Чтобы воспользоваться это функцией используйте: Quadrature.chebyshev_integration(func, a, b, n)

About

A library for numerical integration of functions. Functions are passed as blocks, the integration interval and step are passed as function parameters. 3 methods are implemented.

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published