![]() |
deal.II version GIT relicensing-7058-gb35ee29762 2026-11-11 09:30:01+00:00
|
The concrete LevelSetDescription used when the level set function is described as a (DoFHandler, Vector)-pair.
Definition at line 152 of file mesh_classifier.cc.
Public Member Functions | |
| DiscreteLevelSetDescription (const DoFHandler< dim > &dof_handler, const VectorType &level_set) | |
| const hp::FECollection< dim > & | get_fe_collection () const override |
| unsigned int | active_fe_index (const typename Triangulation< dim >::active_cell_iterator &cell) const override |
| void | get_local_level_set_values (const typename Triangulation< dim >::active_cell_iterator &cell, const unsigned int face_index, Vector< double > &local_levelset_values) override |
| void | check_consistency () const override |
Private Attributes | |
| const ObserverPointer< const DoFHandler< dim > > | dof_handler |
| const ObserverPointer< const VectorType > | level_set |
| NonMatching::internal::MeshClassifierImplementation::DiscreteLevelSetDescription< dim, VectorType >::DiscreteLevelSetDescription | ( | const DoFHandler< dim > & | dof_handler, |
| const VectorType & | level_set | ||
| ) |
Constructor.
Definition at line 224 of file mesh_classifier.cc.
|
overridevirtual |
Return the FECollection of the DoFHandler passed to the constructor.
Implements NonMatching::internal::MeshClassifierImplementation::LevelSetDescription< dim >.
Definition at line 235 of file mesh_classifier.cc.
|
overridevirtual |
Return the active FE index of the DoFCellAccessor associated with the DoFHandler and the incoming cell in the triangulation.
Implements NonMatching::internal::MeshClassifierImplementation::LevelSetDescription< dim >.
Definition at line 277 of file mesh_classifier.cc.
|
overridevirtual |
Writes the local face dofs of the global level set vector to local_levelset_values.
Implements NonMatching::internal::MeshClassifierImplementation::LevelSetDescription< dim >.
Definition at line 244 of file mesh_classifier.cc.
|
overridevirtual |
Check that the level set vector gives access to the values of all locally relevant DoFs, that is, all DoFs on locally owned and ghost cells. MeshClassifier::reclassify() reads the level set values on all of these cells, so the ghost entries of the vector need to cover all locally relevant DoFs. This is, for example, not the case for a LinearAlgebra::distributed::Vector initialized by MatrixFree::initialize_dof_vector(), whose ghost entries typically only include the DoFs of locally owned cells. Such a vector should instead be set up with the result of DoFTools::extract_locally_relevant_dofs() as ghost entries.
In debug mode, an assertion fails if not all locally relevant DoFs are accessible. In release mode, this function does nothing.
This function is called at the beginning of MeshClassifier::reclassify() rather than in the constructor, because at construction time the triangulation, the DoFs, and the vector may not set up yet.
Reimplemented from NonMatching::internal::MeshClassifierImplementation::LevelSetDescription< dim >.
Definition at line 268 of file mesh_classifier.cc.
|
private |
Pointer to the DoFHandler associated with the level set function.
Definition at line 212 of file mesh_classifier.cc.
|
private |
Pointer to the vector containing the level set function's global dof values.
Definition at line 218 of file mesh_classifier.cc.