#include <parallel_matrix_overlap_impl.h>
◆ BufferMap
template<typename matrix_type >
◆ Interface
template<typename matrix_type >
◆ GenerateOverlapClass()
template<typename matrix_type >
Generates a new matrix with overlap from another matrix.
- Parameters
-
_mat | matrix to create overlap from |
newMat | matrix to store overlap matrix in |
masterOLLayout | Layout |
masterOLLayout | |
overlap_depth | |
◆ calculate()
template<typename matrix_type >
calculate
calculates overlap
References pcl::AddLayout(), pcl::SingleLevelLayout< TInterface >::begin(), pcl::CollectUniqueElements(), ug::GenerateOverlapClass< matrix_type >::communicate(), ug::DBG_MATRIX_OVERLAP, pcl::SingleLevelLayout< TInterface >::end(), IF_DEBUG, ug::ParallelNodes::local_size(), ug::ParallelNodes::local_to_global(), ug::GenerateOverlapClass< matrix_type >::m_com, ug::GenerateOverlapClass< matrix_type >::m_masterDirichletLast, ug::GenerateOverlapClass< matrix_type >::m_mat, ug::GenerateOverlapClass< matrix_type >::m_newMat, ug::GenerateOverlapClass< matrix_type >::m_overlapDepthMaster, ug::GenerateOverlapClass< matrix_type >::m_overlapDepthSlave, ug::GenerateOverlapClass< matrix_type >::m_overlapSize, ug::GenerateOverlapClass< matrix_type >::m_pc, ug::GenerateOverlapClass< matrix_type >::m_slaveDirichletLast, ug::GenerateOverlapClass< matrix_type >::m_totalMasterLayout, ug::GenerateOverlapClass< matrix_type >::m_totalSlaveLayout, ug::GenerateOverlapClass< matrix_type >::m_vMasterLayouts, ug::GenerateOverlapClass< matrix_type >::m_vSlaveLayouts, ug::GenerateOverlapClass< matrix_type >::PN, pcl::PrintLayout(), PROFILE_BEGIN, PROFILE_FUNC_GROUP, ug::SetDirichletRow(), pcl::TestLayout(), UG_ASSERT, UG_DLOG, and UG_LOG.
Referenced by ug::MakeConsistent().
◆ communicate()
template<typename matrix_type >
communicate
creates one overlap level one-sided
- Parameters
-
sendingNodesLayout | Layout of which nodes send their matrix rows |
receivingNodesLayout | Layout of which nodes receive matrix rows |
bCreateNewNodes | if true, create new indices/interfaces for globalIndices which are not yet on this or the other processor |
newSlavesLayout | new slaves are added to this layout |
newMastersLayout | new masters are added to this layout |
pids | used to send/receive notifications |
bSet | if true, use overwrite (set) for received matrix rows. else add matrix rows. |
level | current overlap level |
References ug::ParallelNodes::add_new_layouts_to(), ug::RowSendingScheme< matrix_type >::add_rows_to_matrix(), pcl::AddLayout(), ug::DBG_MATRIX_OVERLAP, IF_DEBUG, ug::RowSendingScheme< matrix_type >::issue_send(), ug::ParallelNodes::local_size(), ug::GenerateOverlapClass< matrix_type >::m_com, ug::GenerateOverlapClass< matrix_type >::m_newMat, ug::GenerateOverlapClass< matrix_type >::m_pc, ug::GenerateOverlapClass< matrix_type >::m_totalMasterLayout, ug::GenerateOverlapClass< matrix_type >::m_totalSlaveLayout, ug::GenerateOverlapClass< matrix_type >::m_vMasterLayouts, ug::GenerateOverlapClass< matrix_type >::m_vSlaveLayouts, ug::GenerateOverlapClass< matrix_type >::PN, pcl::PrintLayout(), ug::RowSendingScheme< matrix_type >::process(), PROFILE_FUNC_GROUP, ug::RowSendingScheme< matrix_type >::set_create_new_nodes(), ug::RowSendingScheme< matrix_type >::set_rows_in_matrix(), pcl::TestLayout(), UG_ASSERT, UG_DLOG, and UG_LOG.
Referenced by ug::GenerateOverlapClass< matrix_type >::calculate().
◆ m_com
template<typename matrix_type >
◆ m_masterDirichletLast
template<typename matrix_type >
◆ m_mat
template<typename matrix_type >
◆ m_newMat
template<typename matrix_type >
◆ m_overlapDepthMaster
template<typename matrix_type >
◆ m_overlapDepthSlave
template<typename matrix_type >
◆ m_overlapSize
template<typename matrix_type >
◆ m_pc
template<typename matrix_type >
◆ m_slaveDirichletLast
template<typename matrix_type >
◆ m_totalMasterLayout
template<typename matrix_type >
◆ m_totalSlaveLayout
template<typename matrix_type >
◆ m_vMasterLayouts
template<typename matrix_type >
◆ m_vSlaveLayouts
template<typename matrix_type >
◆ PN
template<typename matrix_type >
The documentation for this class was generated from the following file: