20 #ifndef MIRTK_LinearElasticityConstraint_H 21 #define MIRTK_LinearElasticityConstraint_H 23 #include "mirtk/TransformationConstraint.h" 41 mirtkPublicAttributeMacro(
bool, Approximate);
46 mirtkPublicAttributeMacro(
bool, WithRespectToWorld);
49 mirtkPublicAttributeMacro(
bool, UseLatticeSpacing);
52 mirtkPublicAttributeMacro(
bool, ConstrainRotation);
57 mirtkPublicAttributeMacro(
double, Lambda);
62 mirtkPublicAttributeMacro(
double, Mu);
65 mirtkAttributeMacro(Array<Matrix>, Jacobian);
95 virtual void Update(
bool =
true);
111 virtual void WriteGradient(
const char *,
const char *)
const;
118 #endif // MIRTK_LinearElasticityConstraint_H virtual ParameterList Parameter() const
Get parameter key/value as string map.
virtual void Initialize()
Initialize energy term once input and parameters have been set.
virtual void WriteGradient(const char *, const char *) const
Write gradient of penalty term.
Array< Pair< string, string > > ParameterList
Ordered list of parameter name/value pairs.
virtual bool SetWithoutPrefix(const char *, const char *)
Set parameter value from string.
virtual void EvaluateGradient(double *, double, double)
Compute gradient of penalty term w.r.t transformation parameters.
virtual double Evaluate()
Compute penalty for current transformation estimate.
virtual void Update(bool=true)
Update internal state upon change of input.
LinearElasticityConstraint(const char *="", double=1.)
Constructor.