Class PenaltyBarrier1DInterval

Inheritance Relationships

Base Type

Class Documentation

class Mechatronix::PenaltyBarrier1DInterval : public Mechatronix::PenaltyBarrier1Dsubtype

Penalty Interval.

Public Functions

inline explicit PenaltyBarrier1DInterval(string const &name)

Construct the penalty.

void setup(integer subType, real_type epsilon, real_type tolerance, real_type mi, real_type ma)
virtual void setup(GenericContainer const &gc) override

Set parameter for the penalty Less Than. The generic container gc must contain

  • ”subType” the sub tipe of the wall of teh penalty

  • ”tolerance” the tolerance

  • ”epsilon” the regularization parameter

  • ”min” the left border of the interval

  • ”max” the right border of the interval \

virtual void update_tolerance(real_type _tolerance) override

change the tolerance of the control, used in the continuation

virtual real_type operator()(real_type x) const override

Evaluate penalty \( p(x) \) for the interval \( [a,b] \)

\[ p(a) \approx 1 \]
\[ p(b) \approx 1 \]
\[ p(a+h) \approx \epsilon \]
\[ p(b-h) \approx \epsilon \]
\[ \lim_{x\to\pm\infty} p(x) = \infty \]
virtual real_type D(real_type x) const override

first derivative

virtual real_type DD(real_type x) const override

second derivative

virtual string info() const override

print information about penalty