From 62ff1c184b58f15b347fdcec0c5f3ff7539b5522 Mon Sep 17 00:00:00 2001 From: Soeren Peters <peters@irmb.tu-bs.de> Date: Fri, 1 Dec 2023 08:52:22 +0000 Subject: [PATCH] Fix bug in BC writer. --- .../WriteBoundaryConditionsSimulationObserver.cpp | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/src/cpu/core/SimulationObservers/WriteBoundaryConditionsSimulationObserver.cpp b/src/cpu/core/SimulationObservers/WriteBoundaryConditionsSimulationObserver.cpp index 515ae68f4..d78dbf8b4 100644 --- a/src/cpu/core/SimulationObservers/WriteBoundaryConditionsSimulationObserver.cpp +++ b/src/cpu/core/SimulationObservers/WriteBoundaryConditionsSimulationObserver.cpp @@ -173,24 +173,23 @@ void WriteBoundaryConditionsSimulationObserver::addDataGeo(SPtr<Block3D> block) for (int ix2 = minX2; ix2 <= maxX2; ix2++) { for (int ix1 = minX1; ix1 <= maxX1; ix1++) { if (!bcArray->isUndefined(ix1, ix2, ix3)) { - auto bc = bcArray->getBC(ix1, ix2, ix3); - if (!bc) - continue; + // int index = 0; nodeNumbers(ix1, ix2, ix3) = nr++; nodes.push_back(makeUbTuple(float(val<1>(org) - val<1>(nodeOffset) + ix1 * dx), float(val<2>(org) - val<2>(nodeOffset) + ix2 * dx), float(val<3>(org) - val<3>(nodeOffset) + ix3 * dx))); + auto bc = bcArray->getBC(ix1, ix2, ix3); if (!bcArray->hasBC(ix1, ix2, ix3)) { data[0].push_back(c0o1); - } else if (bc->hasNoSlipBoundary()) + } else if (bc && bc->hasNoSlipBoundary()) data[0].push_back(c1o1); - else if (bc->hasVelocityBoundary()) + else if (bc && bc->hasVelocityBoundary()) data[0].push_back(c2o1); - else if (bc->hasDensityBoundary()) + else if (bc && bc->hasDensityBoundary()) data[0].push_back(c3o1); - else if (bc->hasSlipBoundary()) + else if (bc && bc->hasSlipBoundary()) data[0].push_back(c4o1); // else // data[0].push_back(5.0); -- GitLab