template<typename F, typename T_y0, typename T_t0, typename T_ts, typename... T_Args>
class stan::math::cvodes_integrator_adjoint_vari< F, T_y0, T_t0, T_ts, T_Args >
Integrator interface for CVODES' adjoint ODE solvers (Adams & BDF methods). 
- Template Parameters
 - 
  
    | F | Type of ODE right hand side  | 
    | T_y0 | Type of scalars for initial state  | 
    | T_t0 | Type of initial time  | 
    | T_ts | Type of time-points where ODE solution is returned  | 
    | T_Args | Types of pass-through parameters  | 
  
   
Definition at line 37 of file cvodes_integrator_adjoint.hpp.
 
 | 
| template<typename FF , require_eigen_col_vector_t< T_y0 > *  = nullptr>  | 
|   | cvodes_integrator_adjoint_vari (const char *function_name, FF &&f, const T_y0 &y0, const T_t0 &t0, const std::vector< T_ts > &ts, double relative_tolerance_forward, const Eigen::VectorXd &absolute_tolerance_forward, double relative_tolerance_backward, const Eigen::VectorXd &absolute_tolerance_backward, double relative_tolerance_quadrature, double absolute_tolerance_quadrature, long int max_num_steps, long int num_steps_between_checkpoints, int interpolation_polynomial, int solver_forward, int solver_backward, std::ostream *msgs, const T_Args &... args) | 
|   | Construct cvodes_integrator object.  
  | 
|   | 
| std::vector< Eigen::Matrix< T_Return, Eigen::Dynamic, 1 > >  | solution () noexcept | 
|   | Obtain solution of ODE.  
  | 
|   | 
| void  | set_zero_adjoint () final | 
|   | No-op for setting adjoints since this class does not own any adjoints.  
  | 
|   | 
| void  | chain () final | 
|   | Apply the chain rule to this variable based on the variables on which it depends.  
  | 
|   | 
 | 
| void  | store_state (std::size_t n, const Eigen::VectorXd &state, Eigen::Matrix< var, Eigen::Dynamic, 1 > &state_return) | 
|   | Overloads which setup the states returned from the forward solve.  
  | 
|   | 
| void  | store_state (std::size_t n, const Eigen::VectorXd &state, Eigen::Matrix< double, Eigen::Dynamic, 1 > &state_return) | 
|   | 
| template<typename yT , typename... ArgsT>  | 
| constexpr auto  | rhs (double t, const yT &y, const std::tuple< ArgsT... > &args_tuple) const | 
|   | Call the ODE RHS with given tuple.  
  | 
|   | 
| int  | rhs (double t, const double *y, double *&dy_dt) const | 
|   | Calculates the ODE RHS, dy_dt, using the user-supplied functor at the given time t and state y.  
  | 
|   | 
| int  | rhs_adj (double t, N_Vector y, N_Vector yB, N_Vector yBdot) const | 
|   | 
| int  | quad_rhs_adj (double t, N_Vector y, N_Vector yB, N_Vector qBdot) | 
|   | 
| int  | jacobian_rhs_states (double t, N_Vector y, SUNMatrix J) const | 
|   | Calculates the jacobian of the ODE RHS wrt to its states y at the given time-point t and state y.  
  | 
|   | 
| int  | jacobian_rhs_adj_states (double t, N_Vector y, SUNMatrix J) const | 
|   | 
 | 
| static constexpr cvodes_integrator_adjoint_vari *  | cast_to_self (void *mem) | 
|   | Utility to cast user memory pointer passed in from CVODES to actual typed object pointer.  
  | 
|   | 
| static constexpr int  | cv_rhs (realtype t, N_Vector y, N_Vector ydot, void *user_data) | 
|   | Implements the function of type CVRhsFn which is the user-defined ODE RHS passed to CVODES.  
  | 
|   | 
| static constexpr int  | cv_rhs_adj (realtype t, N_Vector y, N_Vector yB, N_Vector yBdot, void *user_data) | 
|   | Implements the function of type CVRhsFnB which is the RHS of the backward ODE system.  
  | 
|   | 
| static constexpr int  | cv_quad_rhs_adj (realtype t, N_Vector y, N_Vector yB, N_Vector qBdot, void *user_data) | 
|   | Implements the function of type CVQuadRhsFnB which is the RHS of the backward ODE system's quadrature.  
  | 
|   | 
| static constexpr int  | cv_jacobian_rhs_states (realtype t, N_Vector y, N_Vector fy, SUNMatrix J, void *user_data, N_Vector tmp1, N_Vector tmp2, N_Vector tmp3) | 
|   | Implements the function of type CVDlsJacFn which is the user-defined callback for CVODES to calculate the jacobian of the ode_rhs wrt to the states y.  
  | 
|   | 
| static constexpr int  | cv_jacobian_rhs_adj_states (realtype t, N_Vector y, N_Vector yB, N_Vector fyB, SUNMatrix J, void *user_data, N_Vector tmp1, N_Vector tmp2, N_Vector tmp3) | 
|   | Implements the CVLsJacFnB function for evaluating the jacobian of the adjoint problem wrt to the backward states.  
  | 
|   |