1#ifndef STAN_MATH_REV_FUN_INV_LOGIT_HPP
2#define STAN_MATH_REV_FUN_INV_LOGIT_HPP
25template <
typename T, require_stan_scalar_or_eigen_t<T>* =
nullptr>
28 as_array_or_scalar(a).adj() += as_array_or_scalar(vi.adj())
29 * as_array_or_scalar(vi.val())
30 * (1.0 - as_array_or_scalar(vi.val()));
48template <
typename T, require_eigen_vt<is_var, T>* =
nullptr>
50 auto x_arena =
to_arena(std::forward<T>(x));
54 += ret.adj().array() * ret.val().array() * (1.0 - ret.val().array());
var_value< plain_type_t< T > > make_callback_var(T &&value, F &&functor)
Creates a new var initialized with a callback_vari with a given value and reverse-pass callback funct...
void reverse_pass_callback(F &&functor)
Puts a callback on the autodiff stack to be called in reverse pass.
arena_t< T > to_arena(const T &a)
Converts given argument into a type that either has any dynamic allocation on AD stack or schedules i...
fvar< T > inv_logit(const fvar< T > &x)
Returns the inverse logit function applied to the argument.
typename internal::arena_type_impl< std::decay_t< T > >::type arena_t
Determines a type that can be used in place of T that does any dynamic allocations on the AD stack.
The lgamma implementation in stan-math is based on either the reentrant safe lgamma_r implementation ...