-
Notifications
You must be signed in to change notification settings - Fork 3
Description
Description
Hi @maltezfaria 👋
This PR adds support for extending an interface-defined scalar normal speed along level-set normals.
I’m currently working on Stefan-type problems, where the normal velocity ( v_n ) is obtained from an interfacial flux balance and is therefore defined only on Γ. To evolve the level set consistently, a normal extension of ( v_n ) into a narrow band is required (as described for instance in Peng et al., 1999).
What’s added
-
extend_along_normals!
A utility that extends a scalar field away from the interface by solving in pseudo-time:
$∂_\tau F + \text{sign}(ϕ) n \cdot ∇F = 0, \quad n = ∇ϕ / |∇ϕ|$
using discretization from Pen et al. 1999 -
Optional update hook in
NormalMotionTerm
NormalMotionTermcan now take an update callback (similar toAdvectionTerm) so the speed field can be extended at each RK stage.
Existing usage remains unchanged.
Happy to adapt the API if you prefer a different integration style.
A working prototype is available in my fork:
https://github.com/Fastaxx/LevelSetMethods.jl/tree/feature/extend-velocity-along-normals
Validation and testing
No response
Motivation
No response
Target audience
No response
Can you help?
No response