ClampedLogSqBarrier¶
- class ClampedLogSqBarrier : public ipc::Barrier;¶
Inheritance diagram for ipc::ClampedLogSqBarrier:
Collaboration diagram for ipc::ClampedLogSqBarrier:
Clamped log barrier with a quadratic log term from [Huang et al. 2024].
Public Functions¶
- ClampedLogSqBarrier() = default;¶
-
virtual double operator()(
const double d, const double dhat) const override;¶ Function that grows to infinity as d approaches 0 from the right.
\[ b(d) = (d-\hat{d})^2\ln^2\left(\frac{d}{\hat{d}}\right) \]
-
virtual double first_derivative(
const double d, const double dhat) const override;¶ Derivative of the barrier function.
\[ b'(d) = 2 (d - \hat{d}) \ln\left(\frac{d}{\hat{d}}\right) \left[\ln\left(\frac{d}{\hat{d}}\right) + \frac{d - \hat{d}}{d}\right] \]
-
virtual double second_derivative(
const double d, const double dhat) const override;¶ Second derivative of the barrier function.
\[ b''(d) = 2 \left(\ln^2\left(\frac{d}{\hat{d}}\right) - \left( \ln\left(\frac{d}{\hat{d}}\right) - 1\right) \frac{(\hat{d} - d)^2}{d^2} - 4 \ln\left(\frac{d}{\hat{d}}\right) \frac{\hat{d} - d}{d}\right) \]