Two-Stage Barrier¶
- class TwoStageBarrier : public ipc::Barrier;¶
Inheritance diagram for ipc::TwoStageBarrier:
Collaboration diagram for ipc::TwoStageBarrier:
2-Stage activation function from [Chen et al. 2025].
Public Functions¶
- TwoStageBarrier() = default;¶
-
virtual double operator()(
const double d, const double dhat) const override;¶ Two-stage activation barrier.
\[\begin{split} b(d) = \begin{cases} -\frac{\hat{d}^2}{4} \left(\ln\left(\frac{2d}{\hat{d}}\right) - \tfrac{1}{2}\right) & d < \frac{\hat{d}}{2}\\ \tfrac{1}{2} (\hat{d} - d)^2 & d < \hat{d}\\ 0 & d \ge \hat{d} \end{cases} \end{split}\]
-
virtual double first_derivative(
const double d, const double dhat) const override;¶ Derivative of the barrier function.
\[\begin{split} b'(d) = \begin{cases} -\frac{\hat{d}}{4d} & d < \frac{\hat{d}}{2}\\ d - \hat{d} & d < \hat{d}\\ 0 & d \ge \hat{d} \end{cases} \end{split}\]