Descriptor of a dof numbering.
More...
#include <NumberingSubset.hpp>
|
using | const_shared_ptr = std::shared_ptr<const NumberingSubset> |
| Alias for shared pointer to a constant object.
|
|
using | vector_const_shared_ptr = std::vector<const_shared_ptr> |
| Alias for a vector of const_shared_ptr.
|
|
using | unique_id_parent |
| Alias for the parent.
|
|
using | underlying_type |
| Type used for the unique id.
|
|
|
bool | DoMoveMesh () const noexcept |
| Whether a vector defined on this numbering subset might be used to compute a movemesh.
|
|
NumberingSubsetNS::unique_id | GetUniqueId () const |
| Get the value of the internal unique ID.
|
|
|
const bool | do_move_mesh_ |
| Whether a vector defined on this numbering subset might be used to compute a movemesh.
|
|
const NumberingSubsetNS::unique_id | unique_id_ |
| The value of the unique id for the current DerivedT object.
|
|
|
class | Internal::NumberingSubsetNS::NumberingSubsetManager |
| Friendship!
|
|
Descriptor of a dof numbering.
NumberingSubsets are most prominently used in global linear algebra description: numbering used for rows and columns in a GlobalMatrix are for instance tagged by a NumberingSubset.
- Todo
- #9 Explain more precisely numbering subset here!
◆ unique_id_parent
Initial value:
Crtp::UniqueId<NumberingSubset, NumberingSubsetNS::unique_id, UniqueIdNS::AssignationMode::manual>
Alias for the parent.
◆ NumberingSubset() [1/3]
Constructor.
- Parameters
-
[in] | id | Unique identifier of the numbering subset. |
[in] | do_move_mesh | Whether a vector defined on this numbering subset might be used to compute a movemesh. If true, a FEltSpace featuring this numbering subset will compute additional quantities to enable fast computation. This should be false for most numbering subsets, and when it's true the sole unknown involved should be a displacement. |
◆ NumberingSubset() [2/3]
The copy constructor.
- Parameters
-
[in] | rhs | The object from which the construction occurs. |
◆ NumberingSubset() [3/3]
The move constructor.
- Parameters
-
[in] | rhs | The object from which the construction occurs. |
◆ operator=() [1/2]
The (copy) operator=.
- Parameters
-
[in] | rhs | The object from which the affectation occurs. |
- Returns
- Reference to the object (to enable chained affectation).
◆ operator=() [2/2]
The (move) operator=.
- Parameters
-
[in] | rhs | The object from which the affectation occurs. |
- Returns
- Reference to the object (to enable chained affectation).
◆ GetUniqueId()
Get the value of the internal unique ID.
- Returns
- Unique id.
◆ GenerateNewEligibleId()
Generate a unique id.
No new objects is created, and the new identifier is not counted in the list - the purpose here is just to provide a value that don't collide with existing objects. This is really used in a very edge case; think twice before using this functionality as it really might not be what you really seek.
- Returns
- A unique id that is not in use yet.
◆ ClearUniqueIdList()
Clear all unique ids.
- Attention
- This functionality has been put there only for the sake of writing tests; please do not use it! It should be considered as private, even if unfortunately I can't easily put it that way.
◆ AssignUniqueId()
If AssignationMode is automatic, generates a new unique identifier.
- Returns
- The new unique id, which is just an increment from the previously assigned one.
◆ NewUniqueId()
If AssignationMode is manual, checks the unique identifier provided is valid.
- Parameters
-
[in] | new_unique_id | The proposed new unique id. If it already exists an exception will be thrown. |
- Returns
- The unmodified unique id.
◆ do_move_mesh_
const bool MoReFEM::NumberingSubset::do_move_mesh_ |
|
private |
Whether a vector defined on this numbering subset might be used to compute a movemesh.
If true, a FEltSpace featuring this numbering subset will compute additional quantities to enable fast computation. This should be false for most numbering subsets, and when it's true the sole unknown involved should be a displacement.
The documentation for this class was generated from the following file:
- /builds/2mk6rsew/0/MoReFEM/CoreLibrary/MoReFEM/Sources/Core/NumberingSubset/NumberingSubset.hpp