Skip to content

MPI FV doesnt compile

Problem occurs in a line with TODO(Dominic), so @di25cox :

The FiniteVolumeCellDescription does not contain a method getAdjacentToRemoteRank(), so building fails:

/home/sven/numrel/exahype/Engine-ExaHyPE/./ExaHyPE/exahype/solvers/FiniteVolumesSolver.cpp: In member function ‘virtual void exahype::solvers::FiniteVolumesSolver::preProcess(int, int) const’:
/home/sven/numrel/exahype/Engine-ExaHyPE/./ExaHyPE/exahype/solvers/FiniteVolumesSolver.cpp:2152:22: error: ‘exahype::solvers::FiniteVolumesSolver::CellDescription {aka class exahype::records::FiniteVolumesCellDescription}’ has no member named ‘getAdjacentToRemoteRank’
     !cellDescription.getAdjacentToRemoteRank() // TODO(Dominic): What is going on here?
                      ^
/home/sven/numrel/exahype/Engine-ExaHyPE/./ExaHyPE/exahype/solvers/FiniteVolumesSolver.cpp: In member function ‘virtual void exahype::solvers::FiniteVolumesSolver::postProcess(int, int)’:
/home/sven/numrel/exahype/Engine-ExaHyPE/./ExaHyPE/exahype/solvers/FiniteVolumesSolver.cpp:2168:24: error: ‘exahype::solvers::FiniteVolumesSolver::CellDescription {aka class exahype::records::FiniteVolumesCellDescription}’ has no member named ‘getAdjacentToRemoteRank’
       !cellDescription.getAdjacentToRemoteRank() // TODO(Dominic): What is going on here?
                        ^

This workaround works for me:

diff --git a/ExaHyPE/exahype/solvers/FiniteVolumesSolver.cpp b/ExaHyPE/exahype/solvers/FiniteVolumesSolver.cpp
index ddba006..949ba38 100644
--- a/ExaHyPE/exahype/solvers/FiniteVolumesSolver.cpp
+++ b/ExaHyPE/exahype/solvers/FiniteVolumesSolver.cpp
@@ -2149,7 +2149,7 @@ void exahype::solvers::FiniteVolumesSolver::preProcess(
     cellDescription.getType()==CellDescription::Type::Cell
     #ifdef Parallel
     &&
-    !cellDescription.getAdjacentToRemoteRank() // TODO(Dominic): What is going on here?
+    1 // !cellDescription.getAdjacentToRemoteRank() // TODO(Dominic): What is going on here? // TODO FIX THIS LINE
     #endif
   ) {
     uncompress(cellDescription);
@@ -2165,7 +2165,7 @@ void exahype::solvers::FiniteVolumesSolver::postProcess(
       cellDescription.getType()==CellDescription::Type::Cell
       #ifdef Parallel
       &&
-      !cellDescription.getAdjacentToRemoteRank() // TODO(Dominic): What is going on here?
+      1 // !cellDescription.getAdjacentToRemoteRank() // TODO(Dominic): What is going on here? // TODO FIX THIS LINE
       #endif
       &&
       CompressionAccuracy>0.0

I pushed this to 1d435a25 on the master. Should have used a merge request instead. Is a workaround anyway. Please fix it.