1#ifndef STAN_MATH_PRIM_FUN_BESSEL_FIRST_KIND_HPP
2#define STAN_MATH_PRIM_FUN_BESSEL_FIRST_KIND_HPP
6#include <boost/math/special_functions/bessel.hpp>
38template <
typename T2, require_arithmetic_t<T2>* =
nullptr>
41 return boost::math::cyl_bessel_j(v, z);
54template <
typename T1,
typename T2, require_any_container_t<T1, T2>* =
nullptr,
55 require_not_var_matrix_t<T2>* =
nullptr>
58 [](
auto&& c,
auto&& d) {
60 std::forward<
decltype(d)>(d));
62 std::forward<T1>(a), std::forward<T2>(b));
auto apply_scalar_binary(F &&f, T1 &&x, T2 &&y)
Base template function for vectorization of binary scalar functions defined by applying a functor to ...
void check_not_nan(const char *function, const char *name, const T_y &y)
Check if y is not NaN.
fvar< T > bessel_first_kind(int v, const fvar< T > &z)
The lgamma implementation in stan-math is based on either the reentrant safe lgamma_r implementation ...