CppAD: A C++ Algorithmic Differentiation Package
20171217
|
Public Types | |
typedef Eigen::Matrix < ad_scalar, Eigen::Dynamic, Eigen::Dynamic, Eigen::RowMajor > | ad_matrix |
typedef CppAD::AD< scalar > | ad_scalar |
typedef Eigen::Matrix< scalar, Eigen::Dynamic, Eigen::Dynamic, Eigen::RowMajor > | matrix |
enum | option_enum { pack_sparsity_enum, bool_sparsity_enum, set_sparsity_enum } |
typedef Base | scalar |
Public Member Functions | |
const std::string & | afun_name (void) const |
Name corresponding to a base_atomic object. More... | |
void | allocate_work (size_t thread) |
allocates work_ for a specified thread More... | |
atomic_eigen_mat_inv (void) | |
virtual bool | for_sparse_hes (const vector< bool > &vx, const vector< bool > &r, const vector< bool > &s, vector< std::set< size_t > > &h, const vector< Base > &x) |
Link, after case split, from for_hes_sweep to atomic_base. More... | |
virtual bool | for_sparse_hes (const vector< bool > &vx, const vector< bool > &r, const vector< bool > &s, vector< bool > &h, const vector< Base > &x) |
virtual bool | for_sparse_hes (const vector< bool > &vx, const vector< bool > &r, const vector< bool > &s, vectorBool &h, const vector< Base > &x) |
virtual bool | for_sparse_hes (const vector< bool > &vx, const vector< bool > &r, const vector< bool > &s, vector< std::set< size_t > > &h) |
virtual bool | for_sparse_hes (const vector< bool > &vx, const vector< bool > &r, const vector< bool > &s, vector< bool > &h) |
virtual bool | for_sparse_hes (const vector< bool > &vx, const vector< bool > &r, const vector< bool > &s, vectorBool &h) |
template<class InternalSparsity > | |
void | for_sparse_hes (const vector< Base > &x, const vector< size_t > &x_index, const vector< size_t > &y_index, const InternalSparsity &for_jac_sparsity, const InternalSparsity &rev_jac_sparsity, InternalSparsity &for_hes_sparsity) |
Link, before case split, from for_hes_sweep to atomic_base. More... | |
virtual bool | for_sparse_jac (size_t q, const vector< std::set< size_t > > &r, vector< std::set< size_t > > &s, const vector< Base > &x) |
Link, after case split, from for_jac_sweep to atomic_base. More... | |
virtual bool | for_sparse_jac (size_t q, const vector< bool > &r, vector< bool > &s, const vector< Base > &x) |
virtual bool | for_sparse_jac (size_t q, const vectorBool &r, vectorBool &s, const vector< Base > &x) |
virtual bool | for_sparse_jac (size_t q, const vector< std::set< size_t > > &r, vector< std::set< size_t > > &s) |
virtual bool | for_sparse_jac (size_t q, const vector< bool > &r, vector< bool > &s) |
virtual bool | for_sparse_jac (size_t q, const vectorBool &r, vectorBool &s) |
template<class InternalSparsity > | |
void | for_sparse_jac (const vector< Base > &x, const vector< size_t > &x_index, const vector< size_t > &y_index, InternalSparsity &var_sparsity) |
Link, before case split, from for_jac_sweep to atomic_base. More... | |
void | free_work (size_t thread) |
frees work_ for a specified thread More... | |
ad_matrix | op (const ad_matrix &arg) |
template<class ADVector > | |
void | operator() (const ADVector &ax, ADVector &ay, size_t id=0) |
Implement the user call to afun(ax, ay) and old_atomic call to afun(ax, ay, id) . More... | |
void | option (enum option_enum option_value) |
virtual bool | rev_sparse_hes (const vector< bool > &vx, const vector< bool > &s, vector< bool > &t, size_t q, const vector< std::set< size_t > > &r, const vector< std::set< size_t > > &u, vector< std::set< size_t > > &v, const vector< Base > &x) |
Link from reverse Hessian sparsity sweep to base_atomic. More... | |
virtual bool | rev_sparse_hes (const vector< bool > &vx, const vector< bool > &s, vector< bool > &t, size_t q, const vector< bool > &r, const vector< bool > &u, vector< bool > &v, const vector< Base > &x) |
virtual bool | rev_sparse_hes (const vector< bool > &vx, const vector< bool > &s, vector< bool > &t, size_t q, const vectorBool &r, const vectorBool &u, vectorBool &v, const vector< Base > &x) |
virtual bool | rev_sparse_hes (const vector< bool > &vx, const vector< bool > &s, vector< bool > &t, size_t q, const vector< std::set< size_t > > &r, const vector< std::set< size_t > > &u, vector< std::set< size_t > > &v) |
virtual bool | rev_sparse_hes (const vector< bool > &vx, const vector< bool > &s, vector< bool > &t, size_t q, const vector< bool > &r, const vector< bool > &u, vector< bool > &v) |
virtual bool | rev_sparse_hes (const vector< bool > &vx, const vector< bool > &s, vector< bool > &t, size_t q, const vectorBool &r, const vectorBool &u, vectorBool &v) |
template<class InternalSparsity > | |
void | rev_sparse_hes (const vector< Base > &x, const vector< size_t > &x_index, const vector< size_t > &y_index, const InternalSparsity &for_jac_sparsity, bool *rev_jac_flag, InternalSparsity &rev_hes_sparsity) |
Link, before case split, from rev_hes_sweep to atomic_base. More... | |
virtual bool | rev_sparse_jac (size_t q, const vector< std::set< size_t > > &rt, vector< std::set< size_t > > &st, const vector< Base > &x) |
Link, after case split, from rev_jac_sweep to atomic_base. More... | |
virtual bool | rev_sparse_jac (size_t q, const vector< bool > &rt, vector< bool > &st, const vector< Base > &x) |
virtual bool | rev_sparse_jac (size_t q, const vectorBool &rt, vectorBool &st, const vector< Base > &x) |
virtual bool | rev_sparse_jac (size_t q, const vector< std::set< size_t > > &rt, vector< std::set< size_t > > &st) |
virtual bool | rev_sparse_jac (size_t q, const vector< bool > &rt, vector< bool > &st) |
virtual bool | rev_sparse_jac (size_t q, const vectorBool &rt, vectorBool &st) |
template<class InternalSparsity > | |
void | rev_sparse_jac (const vector< Base > &x, const vector< size_t > &x_index, const vector< size_t > &y_index, InternalSparsity &var_sparsity) |
Link, before case split, from rev_jac_sweep to atomic_base. More... | |
virtual bool | reverse (size_t q, const vector< Base > &tx, const vector< Base > &ty, vector< Base > &px, const vector< Base > &py) |
Link from reverse mode sweep to users routine. More... | |
virtual void | set_old (size_t id) |
Set value of id (used by deprecated old_atomic class) More... | |
option_enum | sparsity (void) const |
current sparsity setting More... | |
Static Public Member Functions | |
static const std::string & | class_name (size_t index) |
atomic_base function name corresponding to a certain index More... | |
static atomic_base * | class_object (size_t index) |
atomic_base function object corresponding to a certain index More... | |
static void | clear (void) |
Free all thread_alloc static memory held by atomic_base (avoids reallocations). More... | |
Private Member Functions | |
virtual bool | forward (size_t p, size_t q, const CppAD::vector< bool > &vx, CppAD::vector< bool > &vy, const CppAD::vector< scalar > &tx, CppAD::vector< scalar > &ty) |
virtual bool | reverse (size_t q, const CppAD::vector< double > &tx, const CppAD::vector< double > &ty, CppAD::vector< double > &px, const CppAD::vector< double > &py) |
Private Attributes | |
CppAD::vector< matrix > | f_arg_ |
CppAD::vector< matrix > | f_result_ |
CppAD::vector< matrix > | r_arg_ |
CppAD::vector< matrix > | r_result_ |
Definition at line 150 of file eigen_mat_inv.hpp.