Time-derivative estimation by backward differencing. JointAccelerationBackwardDifference uses backward differencing to estimate the second time derivative of the joint state.
More...
#include <joint_acceleration_backward_difference.h>
|
void | AssignScene (ScenePtr scene) override |
|
void | SetPreviousJointState (Eigen::VectorXdRefConst joint_state) |
| Logs previous joint state. SetPreviousJointState must be called after solve is called in a Python/C++ script is called to ensure the time-derivatives are appropriately approximated. Each previous joint state is pushed back by column and the given joint_state is placed in q_.col(0). Finally, we compute the new qbd_. More...
|
|
void | Update (Eigen::VectorXdRefConst x, Eigen::VectorXdRef phi) override |
|
void | Update (Eigen::VectorXdRefConst x, Eigen::VectorXdRef phi, Eigen::MatrixXdRef jacobian) override |
|
int | TaskSpaceDim () override |
|
virtual void | InstantiateBase (const Initializer &init) |
|
virtual void | Update (Eigen::VectorXdRefConst q, Eigen::VectorXdRef phi, Eigen::MatrixXdRef jacobian, HessianRef hessian) |
|
virtual void | Update (Eigen::VectorXdRefConst x, Eigen::VectorXdRefConst u, Eigen::VectorXdRef phi) |
|
virtual void | Update (Eigen::VectorXdRefConst x, Eigen::VectorXdRefConst u, Eigen::VectorXdRef phi, Eigen::MatrixXdRef dphi_dx, Eigen::MatrixXdRef dphi_du) |
|
virtual void | Update (Eigen::VectorXdRefConst x, Eigen::VectorXdRefConst u, Eigen::VectorXdRef phi, Eigen::MatrixXdRef dphi_dx, Eigen::MatrixXdRef dphi_du, HessianRef ddphi_ddx, HessianRef ddphi_ddu, HessianRef ddphi_dxdu) |
|
virtual int | TaskSpaceJacobianDim () |
|
virtual void | PreUpdate () |
|
virtual std::vector< TaskVectorEntry > | GetLieGroupIndices () |
|
std::vector< KinematicFrameRequest > | GetFrames () const |
|
| Object () |
|
virtual | ~Object () |
|
virtual std::string | type () const |
| Type Information wrapper: must be virtual so that it is polymorphic... More...
|
|
std::string | GetObjectName () |
|
void | InstantiateObject (const Initializer &init) |
|
virtual std::string | Print (const std::string &prepend) const |
|
| InstantiableBase ()=default |
|
virtual | ~InstantiableBase ()=default |
|
virtual std::vector< Initializer > | GetAllTemplates () const =0 |
|
void | InstantiateInternal (const Initializer &init) override |
|
Initializer | GetInitializerTemplate () override |
|
std::vector< Initializer > | GetAllTemplates () const override |
|
virtual void | Instantiate (const JointAccelerationBackwardDifferenceInitializer &init) |
|
const JointAccelerationBackwardDifferenceInitializer & | GetParameters () const |
|
Time-derivative estimation by backward differencing. JointAccelerationBackwardDifference uses backward differencing to estimate the second time derivative of the joint state.
For more information see: http://mathworld.wolfram.com/BackwardDifference.html
Here, x+qbd_ represents the simplified estimate of the second time derivative.
◆ AssignScene()
void exotica::JointAccelerationBackwardDifference::AssignScene |
( |
ScenePtr |
scene | ) |
|
|
overridevirtual |
◆ SetPreviousJointState()
Logs previous joint state. SetPreviousJointState must be called after solve is called in a Python/C++ script is called to ensure the time-derivatives are appropriately approximated. Each previous joint state is pushed back by column and the given joint_state is placed in q_.col(0). Finally, we compute the new qbd_.
◆ TaskSpaceDim()
int exotica::JointAccelerationBackwardDifference::TaskSpaceDim |
( |
| ) |
|
|
overridevirtual |
◆ Update() [1/2]
◆ Update() [2/2]
◆ backward_difference_params_
Eigen::Vector2d exotica::JointAccelerationBackwardDifference::backward_difference_params_ |
|
private |
Binomial cooeficient parameters.
◆ I_
Eigen::MatrixXd exotica::JointAccelerationBackwardDifference::I_ |
|
private |
◆ N_
int exotica::JointAccelerationBackwardDifference::N_ |
|
private |
Number of dofs for robot.
◆ q_
Eigen::MatrixXd exotica::JointAccelerationBackwardDifference::q_ |
|
private |
Log of previous two joint states.
◆ qbd_
Eigen::VectorXd exotica::JointAccelerationBackwardDifference::qbd_ |
|
private |
x+qbd_ is a simplifed estimate of the second time derivative.
The documentation for this class was generated from the following file: