32 #if defined(__cpp_lib_math_special_functions) || !defined(NUMCPP_NO_USE_BOOST)
39 #ifndef __cpp_lib_math_special_functions
40 #include "boost/math/special_functions/ellint_2.hpp"
43 #include <type_traits>
59 template<
typename dtype1,
typename dtype2>
65 #ifdef __cpp_lib_math_special_functions
82 template<
typename dtype1,
typename dtype2>
85 if (inArrayK.
size() != inArrayP.
size())
97 [](dtype1 inK, dtype2 inP) ->
auto{ return ellint_2(inK, inP); });
#define THROW_INVALID_ARGUMENT_ERROR(msg)
Definition: Error.hpp:36
#define STATIC_ASSERT_ARITHMETIC(dtype)
Definition: StaticAsserts.hpp:37
Holds 1D and 2D arrays, the main work horse of the NumCpp library.
Definition: NdArrayCore.hpp:72
size_type size() const noexcept
Definition: NdArrayCore.hpp:4289
const_iterator cbegin() const noexcept
Definition: NdArrayCore.hpp:1221
Shape shape() const noexcept
Definition: NdArrayCore.hpp:4276
const_iterator cend() const noexcept
Definition: NdArrayCore.hpp:1529
iterator begin() noexcept
Definition: NdArrayCore.hpp:1171
auto ellint_2(const NdArray< dtype1 > &inArrayK, const NdArray< dtype2 > &inArrayP)
Definition: ellint_2.hpp:83
auto ellint_2(dtype1 inK, dtype2 inP)
Definition: ellint_2.hpp:60
OutputIt transform(InputIt first, InputIt last, OutputIt destination, UnaryOperation unaryFunction)
Definition: StlAlgorithms.hpp:784
Definition: Coordinate.hpp:45