OGS
|
Provides basic functionality for the AssemblyMixin that does not require template parameters.
Definition at line 41 of file AssemblyMixin.h.
#include <AssemblyMixin.h>
Protected Member Functions | |
AssemblyMixinBase (AbstractJacobianAssembler &jacobian_assembler) | |
void | initializeAssemblyOnSubmeshes (MeshLib::Mesh &bulk_mesh, std::vector< std::reference_wrapper< MeshLib::Mesh > > const &submeshes, std::vector< std::vector< std::string > > const &residuum_names, std::vector< std::vector< std::reference_wrapper< ProcessVariable > > > const &pvs) |
void | updateActiveElements (ProcessLib::Process const &process) |
Static Protected Member Functions | |
static void | copyResiduumVectorsToBulkMesh (GlobalVector const &rhs, NumLib::LocalToGlobalIndexMap const &local_to_global_index_map, std::vector< std::reference_wrapper< MeshLib::PropertyVector< double > > > residuum_vectors) |
static void | copyResiduumVectorsToSubmesh (int const process_id, GlobalVector const &rhs, NumLib::LocalToGlobalIndexMap const &local_to_global_index_map, SubmeshAssemblyData const &sad) |
Protected Attributes | |
std::vector< SubmeshAssemblyData > | submesh_assembly_data_ |
std::vector< std::vector< std::reference_wrapper< MeshLib::PropertyVector< double > > > > | residuum_vectors_bulk_ |
std::size_t | b_submesh_id_ = 0 |
ID of the b vector on submeshes, cf. NumLib::VectorProvider. | |
Assembly::ParallelVectorMatrixAssembler | pvma_ |
Private Types | |
enum class | ActiveElementIDsState { UNINITIALIZED , HAS_DEACTIVATED_SUBDOMAINS , NO_DEACTIVATED_SUBDOMAINS } |
Private Member Functions | |
void | updateActiveElementsImpl (Process const &process) |
Private Attributes | |
ActiveElementIDsState | ids_state_ = ActiveElementIDsState::UNINITIALIZED |
|
strongprivate |
Enumerator | |
---|---|
UNINITIALIZED | |
HAS_DEACTIVATED_SUBDOMAINS | |
NO_DEACTIVATED_SUBDOMAINS |
Definition at line 43 of file AssemblyMixin.h.
|
inlineexplicitprotected |
Definition at line 51 of file AssemblyMixin.h.
|
staticprotected |
Definition at line 215 of file AssemblyMixin.cpp.
Referenced by ProcessLib::AssemblyMixin< Process >::assembleWithJacobian().
|
staticprotected |
Definition at line 230 of file AssemblyMixin.cpp.
References ProcessLib::SubmeshAssemblyData::bulk_node_ids, and ProcessLib::SubmeshAssemblyData::residuum_vectors.
Referenced by ProcessLib::AssemblyMixin< Process >::assembleWithJacobian().
|
protected |
Definition at line 114 of file AssemblyMixin.cpp.
References DBUG(), residuum_vectors_bulk_, and submesh_assembly_data_.
Referenced by ProcessLib::AssemblyMixin< Process >::initializeAssemblyOnSubmeshes().
|
protected |
Definition at line 136 of file AssemblyMixin.cpp.
References DBUG(), ProcessLib::Process::getActiveElementIDs(), HAS_DEACTIVATED_SUBDOMAINS, ids_state_, NO_DEACTIVATED_SUBDOMAINS, UNINITIALIZED, and updateActiveElementsImpl().
Referenced by ProcessLib::AssemblyMixin< Process >::updateActiveElements().
|
private |
Definition at line 167 of file AssemblyMixin.cpp.
References DBUG(), ProcessLib::Process::getActiveElementIDs(), HAS_DEACTIVATED_SUBDOMAINS, ids_state_, NO_DEACTIVATED_SUBDOMAINS, and submesh_assembly_data_.
Referenced by updateActiveElements().
|
protected |
ID of the b vector on submeshes, cf. NumLib::VectorProvider.
Definition at line 85 of file AssemblyMixin.h.
Referenced by ProcessLib::AssemblyMixin< Process >::assembleWithJacobian().
|
private |
Definition at line 90 of file AssemblyMixin.h.
Referenced by updateActiveElements(), and updateActiveElementsImpl().
|
protected |
Definition at line 87 of file AssemblyMixin.h.
Referenced by ProcessLib::AssemblyMixin< Process >::assembleWithJacobian().
|
protected |
Definition at line 82 of file AssemblyMixin.h.
Referenced by ProcessLib::AssemblyMixin< Process >::assembleWithJacobian(), and initializeAssemblyOnSubmeshes().
|
protected |
Definition at line 79 of file AssemblyMixin.h.
Referenced by ProcessLib::AssemblyMixin< Process >::assembleWithJacobian(), initializeAssemblyOnSubmeshes(), and updateActiveElementsImpl().