20 #ifndef MIRTK_StretchingForce_H 21 #define MIRTK_StretchingForce_H 23 #include "mirtk/InternalForce.h" 51 mirtkPublicAttributeMacro(
double, RestLength);
54 mirtkAttributeMacro(
double, AverageLength);
57 mirtkPublicAttributeMacro(
bool, UseCurrentAverageLength);
105 virtual void Update(
bool);
124 #endif // MIRTK_StretchingForce_H virtual bool SetWithoutPrefix(const char *, const char *)
Set parameter value from string.
virtual void EvaluateGradient(double *, double, double)
Compute internal force w.r.t. transformation parameters.
virtual double Evaluate()
Compute penalty for current transformation estimate.
virtual ParameterList Parameter() const
Get parameter name/value pairs.
Array< Pair< string, string > > ParameterList
Ordered list of parameter name/value pairs.
StretchingForce & operator=(const StretchingForce &)
Assignment operator.
Stretching force (rest edge length)
virtual void Initialize()
Initialize internal force term once input and parameters have been set.
virtual void Update(bool)
Update internal force data structures.
StretchingForce(const char *="", double=1.0)
Constructor.
virtual ParameterList Parameter() const
Get parameter key/value as string map.
virtual ~StretchingForce()
Destructor.
virtual void Reinitialize()
Reinitialize internal force term after change of input topology.