Navigation

Operators and Keywords

Function List:

C++ API

level-set

Routines for calculating the time-evolution of the level-set equation and extracting geometric information from the level-set function.

Select category:

The Fast Marching Algorithm

fastmarching
Solve the Eikonal equation using the Fast-Marching Method.

Distance Functions

ls_init_narrowband
Calculate the estimated distances of grid points in the "narrow band" to the zero level-set of PHI.
ls_distance_fcn
Calculate the distance function of a set.
ls_signed_distance
Calculate the signed distance function of a set described by its level-set function.
ls_hausdorff_dist
Approximate the Hausdorff distance between two sets.

Time Evolution of Level-Sets

ls_solve_stationary
Solve a generalised Eikonal equation with speeds of arbitrary signs.
ls_extract_solution
Calculate a level-set function of an evolving geometry from the result of 'ls_solve_stationary'.

Time Stepping of the Level-Set Equation

upwind_gradient_norm
Approximate the gradient norm of PHI using an upwind scheme.
ls_time_step
Evolve the level-set equation with time stepping.

Geometric Constraints

ls_check
Check a geometric constraint for the level-set function PHI.
ls_enforce
Enforce a geometric constraint for the level-set function PHI.
ls_enforce_speed
Enforce geometric constraints by changing the speed field F accordingly.

Set Predicates

ls_inside
Return in a logical array which points are inside the domain described by the level-set function PHI.
ls_issubset
Check if the set described by PHI1 is a subset of PHI2.
ls_isempty
Check if the set described by PHI is the empty set.
ls_equal
Check if the sets described by PHI1 and PHI2 are equal.
ls_disjoint
Check if all the sets described by the given level-set functions are disjoint.

Set Operations and Construction of Shapes

ls_genbasic
Construct the level-set function for a basic geometric shape.
ls_complement
Construct a level-set function for the complement of the set described by PHI.
ls_union
Calculate a level-set function for the union of the sets described by the argument level-set functions.
ls_intersect
Calculate a level-set function for the intersection of the sets described by the argument level-set functions.
ls_setdiff
Calculate a level-set function for the set difference PHI1 minus PHI2.
ls_setxor
Calculate a level-set function for the set "xor" of the two domains given via PHI1 and PHI2.

Geometry of Level-Sets in 2D

ls_find_geometry
Interpret the level-set function PHI and extract geometrical properties.
ls_absolute_geom
Extend the geometry structure GEOM of 'ls_find_geometry' to include absolute coordinates.
ls_nb_from_geom
Initialise the narrow-band values utilising information about the geometry.
ls_build_mesh
Build a triangle mesh for the level-set geometry described by GEOM and by the level-set function PHI.

Miscellaneous Routines

ls_animate_evolution
Animate the evolution of a level-set geometry.
ls_get_tests
Return a couple of level-set functions for certain 2D cases in the cell-array PHIS.
ls_normalise
Normalise the level-set function PHI.
ls_sign_colourmap
Construct a colour map that can visibly distinguish between positive and negative values.

Shape Optimisation with Level Sets

so_init_params
Initialise the parameter structure for the shape optimisation routines.
so_step_armijo
Perform a line search according to the Armijo rule.
so_run_descent
Run a descent method for shape optimisation.
so_save_descent
Update handlers to save the descent run to a file.
so_replay_descent
Replay a descent file saved by 'so_save_descent'.
so_explore_descent
Interactively explore a descent file saved by 'so_save_descent'.
so_example_problem
Construct an example problem for shape optimisation.

Package: level-set