Class SignRegularizedWithSinAtan

Inheritance Relationships

Base Type

Class Documentation

class Mechatronix::SignRegularizedWithSinAtan : public Mechatronix::RegularizedBase

Sign function smoothed.

Inizialization

inline explicit SignRegularizedWithSinAtan()
virtual void setup(GenericContainer const &gc) override
void setup(real_type h)

Compute \( \kappa \) for regularized sign from h and epsilon

inline void update_h(real_type h)

Evaluate

virtual real_type operator()(real_type x) const override

Evaluate

\[ \sin(\arctan(x/\kappa)) \]

where \( \kappa \) satisfy

\[ \sin(\arctan(h/\kappa)) = 1-h \]

and thus

\[ \kappa = h \frac{\sqrt{(2-h)\epsilon}}{1-h} \]

../_images/SignRegularizedWithSinAtan0.jpeg

virtual real_type D(real_type x) const override

Evaluate regularized sign first derivative

../_images/SignRegularizedWithSinAtan1.jpeg

virtual real_type DD(real_type x) const override

Evaluate regularized sign second derivative

../_images/SignRegularizedWithSinAtan2.jpeg

Info

virtual string info() const override