IBAMR
An adaptive and distributed-memory parallel implementation of the immersed boundary (IB) method
|
Class FastSweepingLSMethod provides a fast-sweeping algorithm implementation of the level set method. Specifically, this class produces a solution to the Eikonal equation , which produces the signed distance away from an interface. More...
#include </home/runner/work/IBAMR/IBAMR/include/ibamr/FastSweepingLSMethod.h>
Public Member Functions | |
FastSweepingLSMethod (std::string object_name, SAMRAI::tbox::Pointer< SAMRAI::tbox::Database > db=NULL, bool register_for_restart=true) | |
Constructor. | |
virtual | ~FastSweepingLSMethod ()=default |
Destructor. | |
void | initializeLSData (int D_idx, SAMRAI::tbox::Pointer< IBTK::HierarchyMathOps > hierarchy_math_ops, int integrator_step, double time, bool initial_time) override |
Initialize level set data using the fast-sweeping method. | |
Public Member Functions inherited from IBAMR::LSInitStrategy | |
LSInitStrategy (std::string object_name, bool register_for_restart=true) | |
Constructor. | |
virtual | ~LSInitStrategy () |
Virtual destructor. | |
virtual void | registerPhysicalBoundaryCondition (SAMRAI::solv::RobinBcCoefStrategy< NDIM > *robin_bc_coef) |
Register physical boundary condition for the level set. | |
virtual void | registerInterfaceNeighborhoodLocatingFcn (LocateInterfaceNeighborhoodFcnPtr callback, void *ctx) |
Register interface neighborhood locating functions. | |
virtual void | setReinitializeLSData (bool reinit_ls_data) |
Indicate that the class should reinitialize level set. | |
void | putToDatabase (SAMRAI::tbox::Pointer< SAMRAI::tbox::Database > db) override |
Protected Attributes | |
bool | d_consider_phys_bdry_wall = false |
int | d_wall_location_idx [2 *NDIM] |
Protected Attributes inherited from IBAMR::LSInitStrategy | |
std::string | d_object_name |
bool | d_registered_for_restart |
LevelSetOrder | d_ls_order = FIRST_ORDER_LS |
LevelSetTimeStepping | d_ls_ts = GAUSS_SEIDEL_PSEUDO_TS |
double | d_abs_tol = 1.0e-5 |
int | d_max_its = 100 |
bool | d_enable_logging = false |
bool | d_reinitialize_ls = false |
int | d_reinit_interval = 0 |
SAMRAI::solv::RobinBcCoefStrategy< NDIM > * | d_bc_coef |
std::vector< LocateInterfaceNeighborhoodFcnPtr > | d_locate_interface_fcns |
std::vector< void * > | d_locate_interface_fcns_ctx |
Additional Inherited Members | |
Public Types inherited from IBAMR::LSInitStrategy | |
using | LocateInterfaceNeighborhoodFcnPtr = void(*)(int D_idx, SAMRAI::tbox::Pointer< IBTK::HierarchyMathOps > hier_math_ops, double time, bool initial_time, void *ctx) |
Function specifying distance function near an interface. | |
Class FastSweepingLSMethod provides a fast-sweeping algorithm implementation of the level set method. Specifically, this class produces a solution to the Eikonal equation , which produces the signed distance away from an interface.
References Zhao, H., A Fast Sweeping Method For Eikonal Equations