diff --git a/UTSR/Struve1.cpp b/UTSR/Struve1.cpp new file mode 100644 index 0000000..d8db787 --- /dev/null +++ b/UTSR/Struve1.cpp @@ -0,0 +1,17 @@ +#include +#include +#include +#include + +double Struve1(double z) { + std::function S1 = [z](double tt) { + return (2.0 / M_PI) * z * std::sqrt(1 - tt * tt) * std::sin(z * tt); + }; + + auto integrand = [&S1](double x) { return S1(x); }; + + double result = boost::math::quadrature::gauss_kronrod::integrate(integrand, 0.0, 1.0); + + return result; +} +