wbc
|
Radial Potential field. The computed gradient will be constant on volumnes with constant radius around the center of the potential field: More...
#include <RadialPotentialField.hpp>
Public Member Functions | |
RadialPotentialField (const uint _dimension, const std::string &_name="") | |
virtual | ~RadialPotentialField () |
virtual const base::VectorXd & | update (const base::VectorXd &position) |
Compute control update according to potential field equation. | |
Public Member Functions inherited from wbc::PotentialField | |
PotentialField (const uint _dimension, const std::string &_name="unset") | |
virtual | ~PotentialField () |
Additional Inherited Members | |
Public Attributes inherited from wbc::PotentialField | |
base::Time | time |
uint | dimension |
double | influence_distance |
base::VectorXd | distance |
base::VectorXd | pot_field_center |
base::VectorXd | gradient |
const std::string | name |
Radial Potential field. The computed gradient will be constant on volumnes with constant radius around the center of the potential field:
grad = (x - x0) / ||d||^{2}, ||d|| <= dMax = 0 , else
with: d = x - x0 = Distance to field dMax = Maximum Influence distance x = current position x0 = Potential field center
RadialPotentialField::RadialPotentialField | ( | const uint | _dimension, |
const std::string & | _name = "" ) |
Init all members. Dimension of the field. Has to be > 0. e.g. a field in Cartesian space would have dimension 3.
|
inlinevirtual |
|
virtual |
Compute control update according to potential field equation.
Implements wbc::PotentialField.