scls (Self-Correcting Level Set, Chiodi-Desjardins 2018)
intsharp/sharpening.py
Self-Correcting Level Set (Chiodi-Desjardins 2018)
Supports: 1D and 2D (selected automatically based on domain)
RHS for the volume fraction \( \alpha \):
\[ -\nabla\cdot\big(\alpha(1-\alpha)\mathbf{m}\big) + \nabla\cdot\big(\epsilon(\nabla\alpha\cdot\mathbf{m})\mathbf{m}\big) + \nabla\cdot\big((1-|\mathbf{m}|^2)\epsilon\nabla\alpha\big) \]
Regularized direction:
\[ \mathbf{m} = \frac{\epsilon\nabla\alpha}{\sqrt{\epsilon^2|\nabla\alpha|^2 + \hat\alpha^2\exp\!\big(-\hat\beta\,\epsilon^2|\nabla\alpha|^2\big)}} \]
Parameters:
eps_target: Target interface thickness \( \epsilon \)strength: Sharpening strength \( \Gamma \)scls_alpha: \( \hat\alpha \) (default 0.001), set viamethod_paramsscls_beta: \( \hat\beta \) (default 1000), set viamethod_params