Automatic Differentiation
 
Loading...
Searching...
No Matches
stan::math::kinsol_system_data< F1, Args > Class Template Reference

Detailed Description

template<typename F1, typename... Args>
class stan::math::kinsol_system_data< F1, Args >

KINSOL algebraic system data holder.

Based on cvodes_ode_data.

Template Parameters
F1functor type for system function.
F2functor type for jacobian function. Default is 0. If 0, use rev mode autodiff to compute the Jacobian.

Definition at line 29 of file kinsol_data.hpp.

#include <kinsol_data.hpp>

Public Member Functions

 kinsol_system_data (const F1 &f, const Eigen::VectorXd &x, std::ostream *const msgs, const Args &... args)
 
 ~kinsol_system_data ()
 

Static Public Member Functions

static int kinsol_f_system (const N_Vector x, const N_Vector f_eval, void *const user_data)
 
static int kinsol_jacobian (const N_Vector x, const N_Vector f_eval, const SUNMatrix J, void *const user_data, const N_Vector tmp1, const N_Vector tmp2)
 Implements the function of type CVDlsJacFn which is the user-defined callbacks for KINSOL to calculate the jacobian of the system.
 

Public Attributes

sundials::Context sundials_context_
 
N_Vector nv_x_
 
SUNMatrix J_
 
SUNLinearSolver LS_
 
void * kinsol_memory_
 

Private Types

typedef kinsol_system_data< F1, Args... > system_data
 

Private Attributes

const F1 & f_
 
const Eigen::VectorXd & x_
 
const size_t N_
 
std::ostream *const msgs_
 
const std::tuple< const Args &... > args_tuple_
 

The documentation for this class was generated from the following file: