From 8a7a8f4169f83c02a4481bdd1a9836cbd0908daa Mon Sep 17 00:00:00 2001 From: Katharina Heck <katharina.heck@iws.uni-stuttgart.de> Date: Thu, 30 Nov 2017 13:18:03 +0100 Subject: [PATCH] [fix] volumevariabels pn calculation and cmake fix number of vtu files --- .../richards/implicit/volumevariables.hh | 4 +++- .../richards/implicit/CMakeLists.txt | 16 ++++++++-------- .../implicit/test_ccrichardsanalytical.cc | 1 + 3 files changed, 12 insertions(+), 9 deletions(-) diff --git a/dumux/porousmediumflow/richards/implicit/volumevariables.hh b/dumux/porousmediumflow/richards/implicit/volumevariables.hh index 37e333874a..6ec1986868 100644 --- a/dumux/porousmediumflow/richards/implicit/volumevariables.hh +++ b/dumux/porousmediumflow/richards/implicit/volumevariables.hh @@ -198,8 +198,10 @@ public: const auto& priVars = ParentType::extractDofPriVars(elemSol, scv); // set the wetting pressure + using std::max; + Scalar minPc = MaterialLaw::pc(materialParams, 1.0); fluidState.setPressure(wPhaseIdx, priVars[pressureIdx]); - fluidState.setPressure(nPhaseIdx, problem.nonWettingReferencePressure()); + fluidState.setPressure(nPhaseIdx, max(problem.nonWettingReferencePressure(), fluidState.pressure(wPhaseIdx) + minPc)); // compute the capillary pressure to compute the saturation // make sure that we the capillary pressure is not smaller than the minimum pc diff --git a/test/porousmediumflow/richards/implicit/CMakeLists.txt b/test/porousmediumflow/richards/implicit/CMakeLists.txt index a7baf2d5ce..36aed5fe8a 100644 --- a/test/porousmediumflow/richards/implicit/CMakeLists.txt +++ b/test/porousmediumflow/richards/implicit/CMakeLists.txt @@ -36,7 +36,7 @@ dune_add_test(SOURCES test_ccrichardsanalytical.cc COMMAND ${CMAKE_SOURCE_DIR}/bin/testing/runtest.py CMD_ARGS --script fuzzy --files ${CMAKE_SOURCE_DIR}/test/references/richardsanalyticalcc-reference.vtu - ${CMAKE_CURRENT_BINARY_DIR}/richardsanalyticalcc-00000.vtu + ${CMAKE_CURRENT_BINARY_DIR}/test_ccrichardsanalytical-00002.vtu --command "${CMAKE_CURRENT_BINARY_DIR}/test_ccrichardsanalytical test_ccrichardsanalytical.input -Problem.Name test_ccrichardsanalytical") # non-isothermal tests dune_add_test(SOURCES test_richardsniconvection_fv.cc @@ -45,9 +45,9 @@ dune_add_test(SOURCES test_richardsniconvection_fv.cc COMMAND ${CMAKE_SOURCE_DIR}/bin/testing/runtest.py CMD_ARGS --script fuzzy --files ${CMAKE_SOURCE_DIR}/test/references/richardsniconvectionbox-reference.vtu - ${CMAKE_CURRENT_BINARY_DIR}/test_boxrichardsniconvection-00010.vtu + ${CMAKE_CURRENT_BINARY_DIR}/test_boxrichardsniconvection-00044.vtu --command "${CMAKE_CURRENT_BINARY_DIR}/test_boxrichardsniconvection test_richardsniconvection.input -Problem.Name test_boxrichardsniconvection" - --zeroThreshold {"velocity":1e-16}) + ) dune_add_test(SOURCES test_richardsniconvection_fv.cc NAME test_ccrichardsniconvection @@ -55,7 +55,7 @@ dune_add_test(SOURCES test_richardsniconvection_fv.cc COMMAND ${CMAKE_SOURCE_DIR}/bin/testing/runtest.py CMD_ARGS --script fuzzy --files ${CMAKE_SOURCE_DIR}/test/references/richardsniconvectioncc-reference.vtu - ${CMAKE_CURRENT_BINARY_DIR}/test_ccrichardsniconvection-00010.vtu + ${CMAKE_CURRENT_BINARY_DIR}/test_ccrichardsniconvection-00043.vtu --command "${CMAKE_CURRENT_BINARY_DIR}/test_ccrichardsniconvection test_richardsniconvection.input -Problem.Name test_ccrichardsniconvection") dune_add_test(SOURCES test_richardsniconduction_fv.cc @@ -64,9 +64,9 @@ dune_add_test(SOURCES test_richardsniconduction_fv.cc COMMAND ${CMAKE_SOURCE_DIR}/bin/testing/runtest.py CMD_ARGS --script fuzzy --files ${CMAKE_SOURCE_DIR}/test/references/richardsniconductionbox-reference.vtu - ${CMAKE_CURRENT_BINARY_DIR}/test_boxrichardsniconduction-00006.vtu + ${CMAKE_CURRENT_BINARY_DIR}/test_boxrichardsniconduction-00024.vtu --command "${CMAKE_CURRENT_BINARY_DIR}/test_boxrichardsniconduction test_richardsniconduction.input -Problem.Name test_boxrichardsniconduction" - --zeroThreshold {"velocity":1e-8}) + ) dune_add_test(SOURCES test_richardsniconduction_fv.cc NAME test_ccrichardsniconduction @@ -74,9 +74,9 @@ dune_add_test(SOURCES test_richardsniconduction_fv.cc COMMAND ${CMAKE_SOURCE_DIR}/bin/testing/runtest.py CMD_ARGS --script fuzzy --files ${CMAKE_SOURCE_DIR}/test/references/richardsniconductioncc-reference.vtu - ${CMAKE_CURRENT_BINARY_DIR}/test_ccrichardsniconduction-00006.vtu + ${CMAKE_CURRENT_BINARY_DIR}/test_ccrichardsniconduction-00024.vtu --command "${CMAKE_CURRENT_BINARY_DIR}/test_ccrichardsniconduction test_richardsniconduction.input -Problem.Name test_ccrichardsniconduction" - --zeroThreshold {"velocity":1e-8}) + ) #install sources install(FILES diff --git a/test/porousmediumflow/richards/implicit/test_ccrichardsanalytical.cc b/test/porousmediumflow/richards/implicit/test_ccrichardsanalytical.cc index 15e81010c0..a0ebdd0332 100644 --- a/test/porousmediumflow/richards/implicit/test_ccrichardsanalytical.cc +++ b/test/porousmediumflow/richards/implicit/test_ccrichardsanalytical.cc @@ -197,6 +197,7 @@ int main(int argc, char** argv) try timeLoop->advanceTimeStep(); // write vtk output + if(timeLoop->willBeFinished()) vtkWriter.write(timeLoop->time()); // report statistics of this time step -- GitLab