Automatic Differentiation
 
Loading...
Searching...
No Matches
fmod.hpp
Go to the documentation of this file.
1#ifndef STAN_MATH_PRIM_FUN_FMOD_HPP
2#define STAN_MATH_PRIM_FUN_FMOD_HPP
3
6#include <cmath>
7
8namespace stan {
9namespace math {
10
21template <typename T1, typename T2, require_all_arithmetic_t<T1, T2>* = nullptr>
22inline double fmod(const T1& a, const T2& b) {
23 return std::fmod(a, b);
24}
25
36template <typename T1, typename T2, require_any_container_t<T1, T2>* = nullptr>
37inline auto fmod(T1&& a, T2&& b) {
39 [](auto&& c, auto&& d) {
40 return fmod(std::forward<decltype(c)>(c), std::forward<decltype(d)>(d));
41 },
42 std::forward<T1>(a), std::forward<T2>(b));
43}
44
45} // namespace math
46} // namespace stan
47#endif
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 ...
fvar< T > fmod(const fvar< T > &x1, const fvar< T > &x2)
Definition fmod.hpp:17
The lgamma implementation in stan-math is based on either the reentrant safe lgamma_r implementation ...