class
ImplicitDomainMesherClass to perform the discretization and optimization of a surface implicitly defined by a level set function.
This class performs the discretization of a level set function defined over a computational mesh which contains a regular domain .
Base classes
Constructors, destructors, conversion operators
- ImplicitDomainMesher()
- Default constructor.
Public functions
- auto setLevelSet(Real ls) -> ImplicitDomainMesher&
- Specifies the level set to discretize.
- auto setRMC(Real rmc = 1e-5) -> ImplicitDomainMesher&
- Specifies the removal of small parasitic components.
-
auto setBoundaryReference(const Geometry::
Attribute& ref) -> ImplicitDomainMesher& - Sets the material reference for the discretized boundary .
- auto setSplit(const SplitMap& split) -> ImplicitDomainMesher&
- Specifies how to split the materials into an interior and exterior domains.
-
auto split(const Geometry::
Attribute& ref, const Split& s) -> ImplicitDomainMesher& - Indicates that a material reference should be split.
-
auto noSplit(const Geometry::
Attribute& ref) -> ImplicitDomainMesher& - Indicates that a material reference should not be split.
-
auto discretize(const MMG::
RealGridFunction& ls) -> MMG:: Mesh - Discretizes and optimizes an implicitly defined surface defined by a level set function.
Function documentation
ImplicitDomainMesher& Rodin:: External:: MMG:: ImplicitDomainMesher:: setLevelSet(Real ls)
Specifies the level set to discretize.
Returns | Reference to self (for method chaining) |
---|
The default value is 0.
ImplicitDomainMesher& Rodin:: External:: MMG:: ImplicitDomainMesher:: setRMC(Real rmc = 1e-5)
Specifies the removal of small parasitic components.
Returns | Reference to self (for method chaining) |
---|
ImplicitDomainMesher& Rodin:: External:: MMG:: ImplicitDomainMesher:: setBoundaryReference(const Geometry:: Attribute& ref)
Sets the material reference for the discretized boundary .
Returns | Reference to self (for method chaining) |
---|
Specifies what the label for the boundary will be. By default, the value is 10.
ImplicitDomainMesher& Rodin:: External:: MMG:: ImplicitDomainMesher:: setSplit(const SplitMap& split)
Specifies how to split the materials into an interior and exterior domains.
Returns | Reference to self (for method chaining) |
---|
This map specifies for each input material reference the values of the 2 new domains created by the level-set splitting. By default, the material references of the interior and exterior, are 2 and 3 respectively.
ImplicitDomainMesher& Rodin:: External:: MMG:: ImplicitDomainMesher:: split(const Geometry:: Attribute& ref,
const Split& s)
Indicates that a material reference should be split.
Parameters | |
---|---|
ref in | Material to split |
s in | Interior and exterior labels |
Returns | Reference to self (for method chaining) |
ImplicitDomainMesher& Rodin:: External:: MMG:: ImplicitDomainMesher:: noSplit(const Geometry:: Attribute& ref)
Indicates that a material reference should not be split.
Parameters | |
---|---|
ref in | Material to split |
Returns | Reference to self (for method chaining) |
MMG:: Mesh Rodin:: External:: MMG:: ImplicitDomainMesher:: discretize(const MMG:: RealGridFunction& ls)
Discretizes and optimizes an implicitly defined surface defined by a level set function.
Parameters | |
---|---|
ls in | Level set function |
The material reference of the level set (edge) boundary will be 10.