diff options
Add support for calling a function for each subgrid of Grid2D
Diffstat (limited to 'apps/adrian/cylinder2d/optimized_grid')
-rw-r--r-- | apps/adrian/cylinder2d/optimized_grid/cylinder2d.cpp | 17 |
1 files changed, 6 insertions, 11 deletions
diff --git a/apps/adrian/cylinder2d/optimized_grid/cylinder2d.cpp b/apps/adrian/cylinder2d/optimized_grid/cylinder2d.cpp index 74ad91b..b01913f 100644 --- a/apps/adrian/cylinder2d/optimized_grid/cylinder2d.cpp +++ b/apps/adrian/cylinder2d/optimized_grid/cylinder2d.cpp @@ -189,17 +189,15 @@ void setBoundaryValues(Grid2D<T,DESCRIPTOR>& grid, int iT) } } -void getResults(const std::string& prefix, - Grid2D<T,DESCRIPTOR>& grid, +void getResults(Grid2D<T,DESCRIPTOR>& grid, + const std::string& prefix, int iT) { - OstreamManager clout(std::cout,"getResults"); - auto& converter = grid.getConverter(); auto& sLattice = grid.getSuperLattice(); auto& sGeometry = grid.getSuperGeometry(); - SuperVTMwriter2D<T> vtmWriter(prefix + "cylinder2d"); + SuperVTMwriter2D<T> vtmWriter(prefix); SuperLatticePhysVelocity2D<T,DESCRIPTOR> velocity(sLattice, converter); SuperLatticePhysPressure2D<T,DESCRIPTOR> pressure(sLattice, converter); SuperLatticeGeometry2D<T,DESCRIPTOR> geometry(sLattice, sGeometry); @@ -357,12 +355,9 @@ int main(int argc, char* argv[]) timer.update(iT); timer.printStep(); - getResults("level0_", coarseGrid, iT); - getResults("level1_outflow_", fineOutflowGrid, iT); - getResults("level2_outflow_", fineOutflowGrid2, iT); - getResults("level1_", fineGrid, iT); - getResults("level2_", fineGrid2, iT); - getResults("level3_", fineGrid3, iT); + coarseGrid.forEachGrid("cylinder2d", [&](Grid2D<T,DESCRIPTOR>& grid, const std::string& id) { + getResults(grid, id, iT); + }); takeMeasurements(fineGrid3); } |