Stan Math Library
4.9.0
Automatic Differentiation
|
KINSOL algebraic system data holder.
Based on cvodes_ode_data.
F1 | functor type for system function. |
F2 | functor 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_ |