template<typename T>
class gtsam::Expression< T >
Expression class that supports automatic differentiation.
|
|
| Expression (const T &value) |
| | Construct a constant expression.
|
| |
|
| Expression (const Key &key) |
| | Construct a leaf expression, with Key.
|
| |
|
| Expression (const Symbol &symbol) |
| | Construct a leaf expression, with Symbol.
|
| |
|
| Expression (unsigned char c, std::uint64_t j) |
| | Construct a leaf expression, creating Symbol.
|
| |
|
template<typename A > |
| | Expression (typename UnaryFunction< A >::type function, const Expression< A > &expression) |
| | Construct a unary function expression.
|
| |
|
template<typename A1 , typename A2 > |
| | Expression (typename BinaryFunction< A1, A2 >::type function, const Expression< A1 > &expression1, const Expression< A2 > &expression2) |
| | Construct a binary function expression.
|
| |
|
template<typename A1 , typename A2 , typename A3 > |
| | Expression (typename TernaryFunction< A1, A2, A3 >::type function, const Expression< A1 > &expression1, const Expression< A2 > &expression2, const Expression< A3 > &expression3) |
| | Construct a ternary function expression.
|
| |
|
template<typename A > |
| | Expression (const Expression< A > &expression, T(A::*method)(typename MakeOptionalJacobian< T, A >::type) const) |
| | Construct a nullary method expression.
|
| |
|
template<typename A1 , typename A2 > |
| | Expression (const Expression< A1 > &expression1, T(A1::*method)(const A2 &, typename MakeOptionalJacobian< T, A1 >::type, typename MakeOptionalJacobian< T, A2 >::type) const, const Expression< A2 > &expression2) |
| | Construct a unary method expression.
|
| |
|
template<typename A1 , typename A2 , typename A3 > |
| | Expression (const Expression< A1 > &expression1, T(A1::*method)(const A2 &, const A3 &, typename MakeOptionalJacobian< T, A1 >::type, typename MakeOptionalJacobian< T, A2 >::type, typename MakeOptionalJacobian< T, A3 >::type) const, const Expression< A2 > &expression2, const Expression< A3 > &expression3) |
| | Construct a binary method expression.
|
| |
|
virtual | ~Expression () |
| | Destructor.
|
| |
|
std::set< Key > | keys () const |
| | Return keys that play in this expression.
|
| |
|
void | dims (std::map< Key, int > &map) const |
| | Return dimensions for each argument, as a map.
|
| |
|
void | print (const std::string &s) const |
| | Print.
|
| |
| T | value (const Values &values, boost::optional< std::vector< Matrix > & > H=boost::none) const |
| | Return value and optional derivatives, reverse AD version Notes: this is not terribly efficient, and H should have correct size. More...
|
| |
| virtual boost::shared_ptr< Expression > | clone () const |
| |
|
const boost::shared_ptr< internal::ExpressionNode< T > > & | root () const |
| | Return root.
|
| |
|
size_t | traceSize () const |
| | Return size needed for memory buffer in traceExecution.
|
| |
|
Expression< T > & | operator+= (const Expression< T > &e) |
| | Add another expression to this expression.
|
| |
|
|
| Expression (const boost::shared_ptr< internal::ExpressionNode< T > > &root) |
| | Construct with a custom root.
|
| |
|
| Expression () |
| | Default constructor, for serialization.
|
| |
|
KeysAndDims | keysAndDims () const |
| |
|
T | valueAndDerivatives (const Values &values, const KeyVector &keys, const FastVector< int > &dims, std::vector< Matrix > &H) const |
| | private version that takes keys and dimensions, returns derivatives
|
| |
|
T | traceExecution (const Values &values, internal::ExecutionTrace< T > &trace, void *traceStorage) const |
| | trace execution, very unsafe
|
| |
|
T | valueAndJacobianMap (const Values &values, internal::JacobianMap &jacobians) const |
| | brief Return value and derivatives, reverse AD version
|
| |