TVM
0.9.2
|
#include <tvm/function/abstract/Function.h>
Classes | |
struct | slice_jdot |
Public Member Functions | |
virtual const Eigen::VectorXd & | velocity () const |
virtual const Eigen::VectorXd & | normalAcceleration () const |
virtual MatrixConstRef | JDot (const Variable &x) const |
Public Member Functions inherited from tvm::internal::FirstOrderProvider | |
virtual const Eigen::VectorXd & | value () const |
virtual MatrixConstRefWithProperties | jacobian (const Variable &x) const |
bool | linearIn (const Variable &x) const |
const Space & | imageSpace () const |
int | size () const |
int | rSize () const |
int | tSize () const |
const VariableVector & | variables () const |
Public Member Functions inherited from tvm::graph::internal::AbstractNode | |
template<typename EnumT > | |
bool | isUpdateEnabled (EnumT e) const |
virtual bool | isUpdateStaticallyEnabled (int) const |
virtual bool | isUpdateCustomEnabled (int) const |
virtual | ~AbstractNode ()=default |
void | update (int i) |
Public Member Functions inherited from tvm::graph::internal::Inputs | |
virtual | ~Inputs ()=default |
template<typename T , typename EnumI , typename... Args> | |
void | addInput (std::shared_ptr< T > source, EnumI i, Args... args) |
template<typename T , typename EnumI , typename... Args, typename std::enable_if< std::is_base_of< abstract::Outputs, T >::value, int >::type = 0> | |
void | addInput (T &source, EnumI i, Args... args) |
template<typename T > | |
void | removeInput (T *source) |
template<typename T , typename... Args> | |
void | removeInput (T *source, Args... args) |
template<typename T > | |
Iterator | getInput (T *source) |
template<typename T > | |
Iterator | getInput (const std::shared_ptr< T > &source) |
Public Member Functions inherited from tvm::graph::abstract::Outputs | |
virtual | ~Outputs ()=default |
template<typename EnumT > | |
bool | isOutputEnabled (EnumT e) const |
bool | isOutputEnabled (int i) const |
virtual bool | isOutputStaticallyEnabled (int) const |
virtual bool | isOutputCustomEnabled (int) const |
Protected Member Functions | |
Function (int m=0) | |
Function (Space image) | |
void | resizeCache () override |
void | resizeVelocityCache () |
void | resizeNormalAccelerationCache () |
void | resizeJDotCache () |
void | addVariable_ (VariablePtr v) override |
void | removeVariable_ (VariablePtr v) override |
Protected Member Functions inherited from tvm::internal::FirstOrderProvider | |
FirstOrderProvider (int m) | |
FirstOrderProvider (Space image) | |
void | resizeValueCache () |
void | resizeJacobianCache () |
void | addVariable (VariablePtr v, bool linear) |
void | removeVariable (VariablePtr v) |
void | addVariable (const VariableVector &v, bool linear) |
void | splitJacobian (const MatrixConstRef &J, const std::vector< VariablePtr > &vars, bool keepProperties=false) |
void | splitJacobian (const MatrixConstRef &J, const VariableVector &vars, bool keepProperties=false) |
void | resize (int m) |
Protected Member Functions inherited from tvm::graph::abstract::Node< FirstOrderProvider > | |
void | registerUpdates (EnumT u, void(U::*fn)(), Args... args) |
void | registerUpdates (EnumT u, void(U::*fn)()) |
void | addOutputDependency (EnumO o, EnumU u) |
void | addOutputDependency (std::initializer_list< EnumO > os, EnumU u) |
void | addInternalDependency (EnumU1 uDependent, EnumU2 u) |
void | addInputDependency (EnumU u, std::shared_ptr< S > source, EnumO i, Args... args) |
void | addInputDependency (EnumU u, S &source, EnumO i, Args... args) |
void | addDirectDependency (EnumO o, std::shared_ptr< S > source, EnumI i) |
void | addDirectDependency (EnumO o, S &source, EnumI i) |
Protected Attributes | |
Eigen::VectorXd | velocity_ |
Eigen::VectorXd | normalAcceleration_ |
utils::internal::MapWithVariableAsKey< Eigen::MatrixXd, slice_jdot > | JDot_ |
Protected Attributes inherited from tvm::internal::FirstOrderProvider | |
Eigen::VectorXd | value_ |
utils::internal::MapWithVariableAsKey< MatrixWithProperties, slice_matrix, true > | jacobian_ |
Space | imageSpace_ |
VariableVector | variables_ |
utils::internal::MapWithVariableAsKey< bool, slice_linear > | linear_ |
Protected Attributes inherited from tvm::graph::internal::AbstractNode | |
std::map< int, std::function< void(AbstractNode &)> > | updates_ |
std::map< int, std::vector< int > > | outputDependencies_ |
std::map< int, std::vector< int > > | internalDependencies_ |
std::map< int, input_dependency_t > | inputDependencies_ |
std::map< int, std::pair< Outputs *, int > > | directDependencies_ |
Protected Attributes inherited from tvm::graph::abstract::Outputs | |
bool | is_node_ = false |
Additional Inherited Members | |
Public Types inherited from tvm::graph::internal::AbstractNode | |
enum | Update_ |
using | UpdateParent = AbstractNode |
using | UpdateBase = AbstractNode |
Public Types inherited from tvm::graph::internal::Inputs | |
using | inputs_t = std::unordered_map< abstract::Outputs *, std::set< int > > |
using | store_t = std::unordered_set< std::shared_ptr< abstract::Outputs > > |
Public Types inherited from tvm::graph::abstract::Outputs | |
enum | Output_ |
using | OutputParent = Outputs |
using | OutputBase = Outputs |
Static Public Member Functions inherited from tvm::graph::internal::AbstractNode | |
static constexpr const char * | UpdateName (Update_) |
template<typename EnumT > | |
static constexpr bool | UpdateStaticallyEnabled (EnumT) |
Static Public Member Functions inherited from tvm::graph::abstract::Outputs | |
static constexpr const char * | OutputName (Output_) |
template<typename EnumT > | |
static constexpr bool | OutputStaticallyEnabled (EnumT) |
Static Public Attributes inherited from tvm::graph::internal::AbstractNode | |
static constexpr unsigned int | UpdateSize = 0 |
static constexpr auto | UpdateBaseName = "AbstractNode" |
Static Public Attributes inherited from tvm::graph::abstract::Outputs | |
static constexpr unsigned int | OutputSize = 0 |
static constexpr auto | OutputBaseName = "Outputs" |
Protected Types inherited from tvm::graph::internal::AbstractNode | |
using | input_dependency_t = std::map< Outputs *, std::set< int > > |
Base class defining the classical outputs for a function
|
protected |
Constructor for a function with value in \( \mathbb{R}^m \).
m | the size of the function/constraint image space, i.e. the row size of the jacobians (or equivalently in this case the size of the output value). |
|
protected |
Constructor for a function with value in a specified space.
image | Description of the image space |
|
overrideprotectedvirtual |
To be overridden by derived classes that need to react to the addition of a variable. Called at the end of addVariable();
Reimplemented from tvm::internal::FirstOrderProvider.
|
inlinevirtual |
|
inlinevirtual |
Reimplemented in tvm::robot::JointsSelector.
|
overrideprotectedvirtual |
To be overridden by derived classes that need to react to the removal of a variable. Called at the end of removeVariable();
Reimplemented from tvm::internal::FirstOrderProvider.
|
overrideprotectedvirtual |
Resize all cache members corresponding to active output
Reimplemented from tvm::internal::FirstOrderProvider.
Reimplemented in tvm::function::abstract::LinearFunction.
|
protected |
|
protected |
|
protected |
|
inlinevirtual |
Note: by default, these methods return the cached value. However, they are virtual in case the user might want to bypass the cache. This would be typically the case if he/she wants to directly return the output of another method, e.g. return the jacobian of an other Function.
Reimplemented in tvm::robot::JointsSelector.
|
protected |
|
protected |
|
protected |