Skip to content
Snippets Groups Projects
Commit f7b26bed authored by Kilian Weishaupt's avatar Kilian Weishaupt
Browse files

[test][sincos] Use uzawa preconditioner

parent eb38c414
No related branches found
No related tags found
1 merge request!1921Feature/uzawa 3.2
...@@ -6,6 +6,7 @@ dumux_add_test(NAME test_ff_navierstokes_sincos ...@@ -6,6 +6,7 @@ dumux_add_test(NAME test_ff_navierstokes_sincos
LABELS freeflow LABELS freeflow
TIMEOUT 1000 TIMEOUT 1000
CMAKE_GUARD HAVE_UMFPACK CMAKE_GUARD HAVE_UMFPACK
COMPILE_DEFINITIONS LINEARSOLVER=UMFPackBackend
COMMAND ./convergencetest.py COMMAND ./convergencetest.py
CMD_ARGS test_ff_navierstokes_sincos params.input CMD_ARGS test_ff_navierstokes_sincos params.input
-Grid.UpperRight "6.28 6.28" -Grid.UpperRight "6.28 6.28"
...@@ -18,6 +19,7 @@ dumux_add_test(NAME test_ff_navierstokes_sincos_instationary ...@@ -18,6 +19,7 @@ dumux_add_test(NAME test_ff_navierstokes_sincos_instationary
TARGET test_ff_navierstokes_sincos TARGET test_ff_navierstokes_sincos
LABELS freeflow LABELS freeflow
CMAKE_GUARD HAVE_UMFPACK CMAKE_GUARD HAVE_UMFPACK
COMPILE_DEFINITIONS LINEARSOLVER=UMFPackBackend
COMMAND ${CMAKE_SOURCE_DIR}/bin/testing/runtest.py COMMAND ${CMAKE_SOURCE_DIR}/bin/testing/runtest.py
CMD_ARGS --script fuzzy CMD_ARGS --script fuzzy
--files ${CMAKE_SOURCE_DIR}/test/references/test_ff_navierstokes_sincos_instationary-reference.vtu --files ${CMAKE_SOURCE_DIR}/test/references/test_ff_navierstokes_sincos_instationary-reference.vtu
...@@ -28,3 +30,20 @@ dumux_add_test(NAME test_ff_navierstokes_sincos_instationary ...@@ -28,3 +30,20 @@ dumux_add_test(NAME test_ff_navierstokes_sincos_instationary
-Problem.Name test_ff_navierstokes_sincos_instationary -Problem.Name test_ff_navierstokes_sincos_instationary
-Problem.IsStationary false -Problem.IsStationary false
-Component.LiquidKinematicViscosity 0.1") -Component.LiquidKinematicViscosity 0.1")
dumux_add_test(NAME test_ff_navierstokes_sincos_uzawapreconditioner_factory
SOURCES main.cc
LABELS freeflow
TIMEOUT 5000
CMAKE_GUARD "( HAVE_UMFPACK AND DUNE_ISTL_VERSION GREATER_EQUAL 2.7 )"
COMPILE_DEFINITIONS LINEARSOLVER=IstlSolverFactoryBackend<LinearSolverTraits<GridGeometry>>
COMMAND ${CMAKE_SOURCE_DIR}/bin/testing/runtest.py
CMD_ARGS --script fuzzy
--files ${CMAKE_SOURCE_DIR}/test/references/test_ff_navierstokes_sincos_instationary-reference.vtu
${CMAKE_CURRENT_BINARY_DIR}/test_ff_navierstokes_sincos_uzawapreconditioner-00017.vtu
--command "${CMAKE_CURRENT_BINARY_DIR}/test_ff_navierstokes_sincos_uzawapreconditioner_factory params.input
-Grid.UpperRight '1 1'
-Grid.Cells '50 50'
-Problem.Name test_ff_navierstokes_sincos_uzawapreconditioner
-Problem.IsStationary false
-Component.LiquidKinematicViscosity 0.1")
...@@ -41,11 +41,16 @@ ...@@ -41,11 +41,16 @@
#include <dumux/common/parameters.hh> #include <dumux/common/parameters.hh>
#include <dumux/common/properties.hh> #include <dumux/common/properties.hh>
#include <dumux/common/valgrind.hh> #include <dumux/common/valgrind.hh>
#include <dumux/io/grid/gridmanager.hh> #include <dumux/io/grid/gridmanager_yasp.hh>
#include <dumux/io/staggeredvtkoutputmodule.hh> #include <dumux/io/staggeredvtkoutputmodule.hh>
#include <dumux/linear/seqsolverbackend.hh> #include <dumux/linear/seqsolverbackend.hh>
#include <dumux/nonlinear/newtonsolver.hh> #include <dumux/nonlinear/newtonsolver.hh>
#include <dune/common/version.hh>
#if DUNE_VERSION_NEWER_REV(DUNE_ISTL,2,7,1)
#include <dumux/linear/istlsolverfactorybackend.hh>
#endif
#include "problem.hh" #include "problem.hh"
/*! /*!
...@@ -252,7 +257,7 @@ int main(int argc, char** argv) try ...@@ -252,7 +257,7 @@ int main(int argc, char** argv) try
: std::make_shared<Assembler>(problem, gridGeometry, gridVariables, timeLoop, xOld); : std::make_shared<Assembler>(problem, gridGeometry, gridVariables, timeLoop, xOld);
// the linear solver // the linear solver
using LinearSolver = Dumux::UMFPackBackend; using LinearSolver = LINEARSOLVER;
auto linearSolver = std::make_shared<LinearSolver>(); auto linearSolver = std::make_shared<LinearSolver>();
// the non-linear solver // the non-linear solver
......
...@@ -4,7 +4,8 @@ TEnd = 1.0 # [s] ...@@ -4,7 +4,8 @@ TEnd = 1.0 # [s]
[Grid] [Grid]
LowerLeft = 0 0 LowerLeft = 0 0
UpperRight = 1 1 UpperRight = 6.28 6.28
Cells = 20 20
[Problem] [Problem]
Name = test_ff_sincos Name = test_ff_sincos
...@@ -34,3 +35,13 @@ AddProcessRank = false ...@@ -34,3 +35,13 @@ AddProcessRank = false
[Flux] [Flux]
UpwindWeight = 0.5 UpwindWeight = 0.5
[LinearSolver]
Type = restartedflexiblegmressolver
Verbosity = 1
GMResRestart = 50
[LinearSolver.Preconditioner]
Type = uzawa
Verbosity = 1
Iterations = 5
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment