-
Notifications
You must be signed in to change notification settings - Fork 0
Description
Hi Rocchi
Thank you for creating this project - it's been really helpful for me since I am a beginer in Level-Set method! π
While working with the code in the function levelset.py/motion_under_curvature, I noticed an possible bug in calculating the curvature.
As far as I know, the curvature is calculated as follows:
The denominator should be the cube of the gradient of phi (||βΟ||Β³), but the current implementation uses squared (||βΟ||Β²) .
I don't know whether the Ο is the signed distance function. If we assume the signed distance function always have ||βΟ|| = 1, it is OK. But in the simulation, ||βΟ|| = 1 is not always guaranteed because of the numerical discretization and calculation error.
So maybe it is better to change it to :
agrad2 = math.pow(px ** 2 + py ** 2, 1.5) + 0.001
