Automatic Differentiation
 
Loading...
Searching...
No Matches
to_arena.hpp File Reference
#include <stan/math/prim/fun/Eigen.hpp>
#include <stan/math/rev/meta.hpp>
#include <stan/math/rev/core/arena_matrix.hpp>
#include <vector>
#include <cstring>

Go to the source code of this file.

Namespaces

namespace  stan
 The lgamma implementation in stan-math is based on either the reentrant safe lgamma_r implementation from C or the boost::math::lgamma implementation.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 

Functions

template<typename T , require_not_same_t< T, arena_t< T > > * = nullptr, require_not_container_t< T > * = nullptr, require_not_matrix_cl_t< T > * = nullptr>
arena_t< T > stan::math::to_arena (T &&a)
 Converts given argument into a type that either has any dynamic allocation on AD stack or schedules its destructor to be called when AD stack memory is recovered.
 
template<typename T , require_same_t< T, arena_t< T > > * = nullptr, require_not_matrix_cl_t< T > * = nullptr, require_not_std_vector_t< T > * = nullptr>
std::remove_reference_t< T > stan::math::to_arena (T &&a)
 Converts given argument into a type that either has any dynamic allocation on AD stack or schedules its destructor to be called when AD stack memory is recovered.
 
template<typename T , require_eigen_t< T > * = nullptr, require_not_same_t< T, arena_t< T > > * = nullptr>
arena_t< T > stan::math::to_arena (const T &a)
 Converts given argument into a type that either has any dynamic allocation on AD stack or schedules its destructor to be called when AD stack memory is recovered.
 
template<typename T >
std::vector< T, arena_allocator< T > > stan::math::to_arena (const std::vector< T, arena_allocator< T > > &a)
 Converts given argument into a type that either has any dynamic allocation on AD stack or schedules its destructor to be called when AD stack memory is recovered.
 
template<typename T , require_same_t< T, arena_t< T > > * = nullptr>
arena_t< std::vector< T > > stan::math::to_arena (const std::vector< T > &a)
 Converts given argument into a type that has any dynamic allocation on AD stack.
 
template<bool Condition, typename T , std::enable_if_t<!Condition > * = nullptr>
stan::math::to_arena_if (T &&a)
 If the condition is true, converts given argument into a type that has any dynamic allocation on AD stack.
 
template<bool Condition, typename T , std::enable_if_t< Condition > * = nullptr>
arena_t< T > stan::math::to_arena_if (const T &a)