[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Package for level-set method?
From: |
Juan Pablo Carbajal |
Subject: |
Re: Package for level-set method? |
Date: |
Wed, 12 Mar 2014 14:28:12 +0100 |
On Wed, Mar 12, 2014 at 1:28 PM, Daniel Kraft <address@hidden> wrote:
> Hi all!
>
> For my PhD, I'm working on shape optimisation with the level-set method.
> The basic idea here is to describe geometries / domains via a level-set
> function phi, such that the domain is given as the open set
>
> { x | phi(x) < 0 }.
>
> By calculating the viscosity solutions of the level-set equation
>
> phi_t(x, t) + F(x) | gradient phi(x, t) | = 0,
>
> one can perform "changes" of the geometry('s level-set function) that
> correspond to movement of the boundary in normal direction according to
> the given speed-field F.
>
> Using a proper discretisation scheme, this equation can be propagated in
> time. However, it is also possible to find the resulting geometries by
> solving the stationary Eikonal equation
>
> F(x) | gradient d(x) | = 0
>
> first, whose solution d can be used to find the evolved geometries at
> arbitrary times t >= 0. d can be calculated numerically using the Fast
> Marching method, as described, for instance, by Sethian. I'm working on
> a theoretical paper about this at the moment, but also have working
> implementations already.
>
> I would be interested to polish my code and release it as free software
> to Octave Forge if there is interest. (Will have to ask my employer
> (University of Graz) first for permission, but I think that should be ok.)
>
> What I have and could release:
>
> * Implementation of the Fast Marching method to solve the equation for d
> given arbitrary F (need not be strictly positive or something like
> this). It works on structured (rectangular) grids of any dimension and
> with the possibility to exclude certain grid points from the possible
> domain.
>
> * Calculation of the level-set function for evolved domains based on
> this. I'm currently using this on a structured grid in two dimensions,
> but I think the code should handle arbitrary dimensions just fine. (Or
> I can extend it to do so.)
>
> * Determining geometrical properties from the level-set function,
> including a polygonal approximation of the boundary and calculation of a
> triangle mesh for the described domain. This works in 2D and my mesh
> structure is currently a bit different from the one used in the msh and
> fem-fenics packages, but it shouldn't be hard to rewrite the code to
> generate meshes fitting to msh / fem-fenics.
>
> In the future, I may also work on allowing more general meshes (for
> instance, finer where the boundary movements must be resolved, but
> coarser in the interior for more efficient PDE solving), and can
> maintain the package accordingly.
>
> Would you be interested in this package to be relased on Octave Forge,
> or do you think it is not of general interest?
>
> Yours,
> Daniel
>
> --
> http://www.domob.eu/
> OpenPGP: 901C 5216 0537 1D2A F071 5A0E 4D94 6EED 04F7 CF52
> Namecoin: id/domob -> https://nameid.org/?name=domob
> --
> Done: Arc-Bar-Cav-Hea-Kni-Ran-Rog-Sam-Tou-Val-Wiz
> To go: Mon-Pri
>
Very interesting!
If you prepare a package and uploaded it somewhere I can check it and
test the instalation. Best place would be bitbucket, github etc...