|
CppAD: A C++ Algorithmic Differentiation Package
20130918
|
Public Types | |
| enum | option_enum { bool_sparsity_enum, set_sparsity_enum } |
Public Member Functions | |
| const std::string & | afun_name (void) const |
| Name corresponding to a base_atomic object. | |
| atomic_base (void) | |
| Base class for atomic_user functions. | |
| atomic_base (const std::string &name) | |
| Constructor. | |
| virtual bool | for_sparse_jac (size_t q, const vector< std::set< size_t > > &r, vector< std::set< size_t > > &s) |
| Link from forward Jacobian sparsity sweep to atomic_base. | |
| virtual bool | for_sparse_jac (size_t q, const vector< bool > &r, vector< bool > &s) |
| virtual bool | forward (size_t p, size_t q, const vector< bool > &vx, vector< bool > &vy, const vector< Base > &tx, vector< Base > &ty) |
| Link from atomic_base to forward mode. | |
| 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). | |
| 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) |
| Link from reverse Hessian sparsity sweep to base_atomic. | |
| 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_jac (size_t q, const vector< std::set< size_t > > &rt, vector< std::set< size_t > > &st) |
| Link from reverse Jacobian sparsity sweep to atomic_base. | |
| virtual bool | rev_sparse_jac (size_t q, const vector< bool > &rt, vector< bool > &st) |
| 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. | |
| virtual void | set_id (size_t id) |
| Set value of id (used by deprecated old_atomic class) | |
| option_enum | sparsity (void) const |
| current sparsity setting | |
| virtual | ~atomic_base (void) |
| destructor informs CppAD that this atomic function with this index has dropped out of scope by setting its pointer to null | |
Static Public Member Functions | |
| static const std::string & | class_name (size_t index) |
| atomic_base function name corresponding to a certain index | |
| static atomic_base * | class_object (size_t index) |
| atomic_base function object corresponding to a certain index | |
| static void | clear (void) |
| Free all thread_alloc static memory held by atomic_base (avoids reallocations). | |
Static Private Member Functions | |
| static std::vector< std::string > & | class_name (void) |
| List of names for each object in this class. | |
| static std::vector < atomic_base * > & | class_object (void) |
| List of all the object in this class. | |
Private Attributes | |
| vector< Base > | afun_tx_ [CPPAD_MAX_NUM_THREADS] |
| vector< Base > | afun_ty_ [CPPAD_MAX_NUM_THREADS] |
| vector< bool > | afun_vx_ [CPPAD_MAX_NUM_THREADS] |
| temporary work space used afun, declared here to avoid memory allocation/deallocation for each call to afun | |
| vector< bool > | afun_vy_ [CPPAD_MAX_NUM_THREADS] |
| const size_t | index_ |
| index of this object in class_object | |
| option_enum | sparsity_ |
| sparsity pattern this object is currently using (set by constructor and option member functions) | |
Definition at line 28 of file atomic_base.hpp.