diff --git a/src/blockforest/communication/LocalCommunicationMode.h b/src/blockforest/communication/LocalCommunicationMode.h index e4e259452faa31e353e5630f1732dc0f163b7097..0d943452b928cd6c9616be398213279c1f6102a5 100644 --- a/src/blockforest/communication/LocalCommunicationMode.h +++ b/src/blockforest/communication/LocalCommunicationMode.h @@ -25,7 +25,7 @@ namespace walberla { namespace blockforest { -enum LocalCommunicationMode { START = 0, WAIT = 1, BUFFER = 2 }; +enum LocalCommunicationMode { START = 0, WAIT = 1, BUFFER = 2, NO_OPTIMIZATION = 3 }; } // namespace blockforest diff --git a/src/blockforest/communication/UniformBufferedScheme.h b/src/blockforest/communication/UniformBufferedScheme.h index c16a9146dd39bc683fc00cebf52be5dc8eeb0e1d..93216ef8cc202cc7c4d450a835accfbc92c2240e 100644 --- a/src/blockforest/communication/UniformBufferedScheme.h +++ b/src/blockforest/communication/UniformBufferedScheme.h @@ -306,7 +306,7 @@ void UniformBufferedScheme<Stencil>::startCommunication() if( !selectable::isSetSelected( block->getNeighborState( neighborIdx, uint_t(0) ), requiredBlockSelectors_, incompatibleBlockSelectors_ ) ) continue; - if( block->neighborExistsLocally( neighborIdx, uint_t(0) ) ) + if( block->neighborExistsLocally( neighborIdx, uint_t(0) ) && localMode_ != NO_OPTIMIZATION ) { auto neighbor = dynamic_cast< Block * >( forest->getBlock(nBlockId) ); WALBERLA_ASSERT_EQUAL( neighbor->getProcess(), block->getProcess() );