Class PenaltyBarrier1DLessThan

Inheritance Relationships

Base Type

Class Documentation

class Mechatronix::PenaltyBarrier1DLessThan : public Mechatronix::PenaltyBarrier1Dsubtype

Penalty Less Than.

Public Functions

inline explicit PenaltyBarrier1DLessThan(string const &name)

Construct the penalty.

inline void setup(integer subType, real_type epsilon, real_type h)
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

virtual real_type operator()(real_type x) const override

Evaluate penalty \( p(x) \)

\[ p(0) = 1 \]
\[ p(-h) = \epsilon \]
\[ \lim_{x\to+\infty} p(x) = +\infty \]
\[ \lim_{x\to-\infty} p(x) = 0 \]
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