diff --git a/CMakeCache.txt b/CMakeCache.txt index bfbabfe374fa9b4083b38f10a244be3d0b560084..100600f93d1bb5c0d31e095e2fd546ccd392cb65 100644 --- a/CMakeCache.txt +++ b/CMakeCache.txt @@ -1396,7 +1396,7 @@ CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 //ADVANCED property for variable: CMAKE_NM CMAKE_NM-ADVANCED:INTERNAL=1 //number of local generators -CMAKE_NUMBER_OF_MAKEFILES:INTERNAL=20 +CMAKE_NUMBER_OF_MAKEFILES:INTERNAL=21 //ADVANCED property for variable: CMAKE_OBJCOPY CMAKE_OBJCOPY-ADVANCED:INTERNAL=1 //ADVANCED property for variable: CMAKE_OBJDUMP diff --git a/compile_commands.json b/compile_commands.json index a8c46ff17595cea37b455fb9c239c80869b33716..1eaf95326df0984220a4afd82ec2585577d610a7 100644 --- a/compile_commands.json +++ b/compile_commands.json @@ -4,6 +4,21 @@ "command": "/usr/bin/g++ -DENABLE_EIGEN=1 -DENABLE_GMP=1 -DENABLE_MPI=1 -DENABLE_QUADMATH=1 -DENABLE_SUITESPARSE=1 -DENABLE_SUPERLU=1 -DENABLE_TBB=1 -DENABLE_UG=1 -DHAVE_CONFIG_H -DMPICH_SKIP_MPICXX -DMPIPP_H -DMPI_NO_CPPBIND -DModelP -DUG_USE_NEW_DIMENSION_DEFINES -D_GLIBCXX_USE_FLOAT128=1 -D_TBB_CPP0X -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -I/usr/local/ssd/home/vonwolls/dumux/dune-phasefield -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent/include -isystem /usr/lib/x86_64-linux-gnu/openmpi/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-common -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-geometry -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-uggrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/low -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/gm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/dom -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/ui -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/algebra -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/udm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ppif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/dddif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/util -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-typetree -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-istl -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-grid -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-localfunctions -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-functions -I/usr/include/python3.5m -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-python -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-alugrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-testtools -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-common -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-grid -I/home/ians1/vonwolls/ssd_local/dumux/dune-pdelab -isystem /usr/include/eigen3 -isystem /usr/include/suitesparse -isystem /usr/include/superlu -std=c++17 -fno-strict-aliasing -fstrict-overflow -fno-finite-math-only -O3 -march=native -funroll-loops -fdiagnostics-color=always -Wall -Wno-deprecated -Wno-deprecated-declarations -Wno-reorder -Wno-sign-compare -fPIC -DHEADERCHECK -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/src/test_slipvelocity -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -fext-numeric-literals -o CMakeFiles/headercheck__src_test_slipvelocity_3p_driver.hh.dir/headercheck/src/test_slipvelocity/3p_driver.hh.cc.o -c /home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/headercheck/src/test_slipvelocity/3p_driver.hh.cc", "file": "/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/headercheck/src/test_slipvelocity/3p_driver.hh.cc" }, +{ + "directory": "/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield", + "command": "/usr/bin/g++ -DENABLE_EIGEN=1 -DENABLE_GMP=1 -DENABLE_MPI=1 -DENABLE_QUADMATH=1 -DENABLE_SUITESPARSE=1 -DENABLE_SUPERLU=1 -DENABLE_TBB=1 -DENABLE_UG=1 -DHAVE_CONFIG_H -DMPICH_SKIP_MPICXX -DMPIPP_H -DMPI_NO_CPPBIND -DModelP -DUG_USE_NEW_DIMENSION_DEFINES -D_GLIBCXX_USE_FLOAT128=1 -D_TBB_CPP0X -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -I/usr/local/ssd/home/vonwolls/dumux/dune-phasefield -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent/include -isystem /usr/lib/x86_64-linux-gnu/openmpi/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-common -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-geometry -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-uggrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/low -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/gm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/dom -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/ui -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/algebra -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/udm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ppif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/dddif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/util -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-typetree -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-istl -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-grid -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-localfunctions -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-functions -I/usr/include/python3.5m -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-python -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-alugrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-testtools -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-common -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-grid -I/home/ians1/vonwolls/ssd_local/dumux/dune-pdelab -isystem /usr/include/eigen3 -isystem /usr/include/suitesparse -isystem /usr/include/superlu -std=c++17 -fno-strict-aliasing -fstrict-overflow -fno-finite-math-only -O3 -march=native -funroll-loops -fdiagnostics-color=always -Wall -Wno-deprecated -Wno-deprecated-declarations -Wno-reorder -Wno-sign-compare -fPIC -DHEADERCHECK -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/src/test_periodic -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -fext-numeric-literals -o CMakeFiles/headercheck__src_test_periodic_3p_driver.hh.dir/headercheck/src/test_periodic/3p_driver.hh.cc.o -c /home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/headercheck/src/test_periodic/3p_driver.hh.cc", + "file": "/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/headercheck/src/test_periodic/3p_driver.hh.cc" +}, +{ + "directory": "/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield", + "command": "/usr/bin/g++ -DENABLE_EIGEN=1 -DENABLE_GMP=1 -DENABLE_MPI=1 -DENABLE_QUADMATH=1 -DENABLE_SUITESPARSE=1 -DENABLE_SUPERLU=1 -DENABLE_TBB=1 -DENABLE_UG=1 -DHAVE_CONFIG_H -DMPICH_SKIP_MPICXX -DMPIPP_H -DMPI_NO_CPPBIND -DModelP -DUG_USE_NEW_DIMENSION_DEFINES -D_GLIBCXX_USE_FLOAT128=1 -D_TBB_CPP0X -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -I/usr/local/ssd/home/vonwolls/dumux/dune-phasefield -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent/include -isystem /usr/lib/x86_64-linux-gnu/openmpi/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-common -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-geometry -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-uggrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/low -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/gm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/dom -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/ui -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/algebra -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/udm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ppif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/dddif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/util -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-typetree -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-istl -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-grid -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-localfunctions -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-functions -I/usr/include/python3.5m -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-python -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-alugrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-testtools -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-common -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-grid -I/home/ians1/vonwolls/ssd_local/dumux/dune-pdelab -isystem /usr/include/eigen3 -isystem /usr/include/suitesparse -isystem /usr/include/superlu -std=c++17 -fno-strict-aliasing -fstrict-overflow -fno-finite-math-only -O3 -march=native -funroll-loops -fdiagnostics-color=always -Wall -Wno-deprecated -Wno-deprecated-declarations -Wno-reorder -Wno-sign-compare -fPIC -DHEADERCHECK -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/src/test_hainesjump -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -fext-numeric-literals -o CMakeFiles/headercheck__src_test_hainesjump_3p_driver.hh.dir/headercheck/src/test_hainesjump/3p_driver.hh.cc.o -c /home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/headercheck/src/test_hainesjump/3p_driver.hh.cc", + "file": "/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/headercheck/src/test_hainesjump/3p_driver.hh.cc" +}, +{ + "directory": "/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield", + "command": "/usr/bin/g++ -DENABLE_EIGEN=1 -DENABLE_GMP=1 -DENABLE_MPI=1 -DENABLE_QUADMATH=1 -DENABLE_SUITESPARSE=1 -DENABLE_SUPERLU=1 -DENABLE_TBB=1 -DENABLE_UG=1 -DHAVE_CONFIG_H -DMPICH_SKIP_MPICXX -DMPIPP_H -DMPI_NO_CPPBIND -DModelP -DUG_USE_NEW_DIMENSION_DEFINES -D_GLIBCXX_USE_FLOAT128=1 -D_TBB_CPP0X -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -I/usr/local/ssd/home/vonwolls/dumux/dune-phasefield -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent/include -isystem /usr/lib/x86_64-linux-gnu/openmpi/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-common -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-geometry -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-uggrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/low -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/gm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/dom -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/ui -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/algebra -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/udm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ppif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/dddif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/util -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-typetree -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-istl -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-grid -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-localfunctions -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-functions -I/usr/include/python3.5m -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-python -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-alugrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-testtools -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-common -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-grid -I/home/ians1/vonwolls/ssd_local/dumux/dune-pdelab -isystem /usr/include/eigen3 -isystem /usr/include/suitesparse -isystem /usr/include/superlu -std=c++17 -fno-strict-aliasing -fstrict-overflow -fno-finite-math-only -O3 -march=native -funroll-loops -fdiagnostics-color=always -Wall -Wno-deprecated -Wno-deprecated-declarations -Wno-reorder -Wno-sign-compare -fPIC -DHEADERCHECK -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/src/test_contactpointdynamics -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -fext-numeric-literals -o CMakeFiles/headercheck__src_test_contactpointdynamics_3p_driver.hh.dir/headercheck/src/test_contactpointdynamics/3p_driver.hh.cc.o -c /home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/headercheck/src/test_contactpointdynamics/3p_driver.hh.cc", + "file": "/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/headercheck/src/test_contactpointdynamics/3p_driver.hh.cc" +}, { "directory": "/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield", "command": "/usr/bin/g++ -DENABLE_EIGEN=1 -DENABLE_GMP=1 -DENABLE_MPI=1 -DENABLE_QUADMATH=1 -DENABLE_SUITESPARSE=1 -DENABLE_SUPERLU=1 -DENABLE_TBB=1 -DENABLE_UG=1 -DHAVE_CONFIG_H -DMPICH_SKIP_MPICXX -DMPIPP_H -DMPI_NO_CPPBIND -DModelP -DUG_USE_NEW_DIMENSION_DEFINES -D_GLIBCXX_USE_FLOAT128=1 -D_TBB_CPP0X -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -I/usr/local/ssd/home/vonwolls/dumux/dune-phasefield -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent/include -isystem /usr/lib/x86_64-linux-gnu/openmpi/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-common -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-geometry -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-uggrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/low -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/gm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/dom -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/ui -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/algebra -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/udm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ppif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/dddif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/util -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-typetree -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-istl -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-grid -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-localfunctions -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-functions -I/usr/include/python3.5m -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-python -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-alugrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-testtools -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-common -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-grid -I/home/ians1/vonwolls/ssd_local/dumux/dune-pdelab -isystem /usr/include/eigen3 -isystem /usr/include/suitesparse -isystem /usr/include/superlu -std=c++17 -fno-strict-aliasing -fstrict-overflow -fno-finite-math-only -O3 -march=native -funroll-loops -fdiagnostics-color=always -Wall -Wno-deprecated -Wno-deprecated-declarations -Wno-reorder -Wno-sign-compare -fPIC -DHEADERCHECK -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/dune/phasefield/archive -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -fext-numeric-literals -o CMakeFiles/headercheck__dune_phasefield_archive_tmp___myincludes.hh.dir/headercheck/dune/phasefield/archive/tmp___myincludes.hh.cc.o -c /home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/headercheck/dune/phasefield/archive/tmp___myincludes.hh.cc", @@ -29,6 +44,11 @@ "command": "/usr/bin/g++ -DENABLE_EIGEN=1 -DENABLE_GMP=1 -DENABLE_MPI=1 -DENABLE_QUADMATH=1 -DENABLE_SUITESPARSE=1 -DENABLE_SUPERLU=1 -DENABLE_TBB=1 -DENABLE_UG=1 -DHAVE_CONFIG_H -DMPICH_SKIP_MPICXX -DMPIPP_H -DMPI_NO_CPPBIND -DModelP -DUG_USE_NEW_DIMENSION_DEFINES -D_GLIBCXX_USE_FLOAT128=1 -D_TBB_CPP0X -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -I/usr/local/ssd/home/vonwolls/dumux/dune-phasefield -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent/include -isystem /usr/lib/x86_64-linux-gnu/openmpi/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-common -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-geometry -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-uggrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/low -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/gm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/dom -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/ui -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/algebra -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/udm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ppif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/dddif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/util -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-typetree -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-istl -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-grid -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-localfunctions -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-functions -I/usr/include/python3.5m -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-python -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-alugrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-testtools -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-common -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-grid -I/home/ians1/vonwolls/ssd_local/dumux/dune-pdelab -isystem /usr/include/eigen3 -isystem /usr/include/suitesparse -isystem /usr/include/superlu -std=c++17 -fno-strict-aliasing -fstrict-overflow -fno-finite-math-only -O3 -march=native -funroll-loops -fdiagnostics-color=always -Wall -Wno-deprecated -Wno-deprecated-declarations -Wno-reorder -Wno-sign-compare -fPIC -DHEADERCHECK -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/src/example_cahnhilliard -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -fext-numeric-literals -o CMakeFiles/headercheck__src_example_cahnhilliard_2p_driver.hh.dir/headercheck/src/example_cahnhilliard/2p_driver.hh.cc.o -c /home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/headercheck/src/example_cahnhilliard/2p_driver.hh.cc", "file": "/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/headercheck/src/example_cahnhilliard/2p_driver.hh.cc" }, +{ + "directory": "/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield", + "command": "/usr/bin/g++ -DENABLE_EIGEN=1 -DENABLE_GMP=1 -DENABLE_MPI=1 -DENABLE_QUADMATH=1 -DENABLE_SUITESPARSE=1 -DENABLE_SUPERLU=1 -DENABLE_TBB=1 -DENABLE_UG=1 -DHAVE_CONFIG_H -DMPICH_SKIP_MPICXX -DMPIPP_H -DMPI_NO_CPPBIND -DModelP -DUG_USE_NEW_DIMENSION_DEFINES -D_GLIBCXX_USE_FLOAT128=1 -D_TBB_CPP0X -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -I/usr/local/ssd/home/vonwolls/dumux/dune-phasefield -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent/include -isystem /usr/lib/x86_64-linux-gnu/openmpi/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-common -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-geometry -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-uggrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/low -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/gm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/dom -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/ui -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/algebra -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/udm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ppif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/dddif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/util -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-typetree -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-istl -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-grid -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-localfunctions -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-functions -I/usr/include/python3.5m -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-python -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-alugrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-testtools -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-common -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-grid -I/home/ians1/vonwolls/ssd_local/dumux/dune-pdelab -isystem /usr/include/eigen3 -isystem /usr/include/suitesparse -isystem /usr/include/superlu -std=c++17 -fno-strict-aliasing -fstrict-overflow -fno-finite-math-only -O3 -march=native -funroll-loops -fdiagnostics-color=always -Wall -Wno-deprecated -Wno-deprecated-declarations -Wno-reorder -Wno-sign-compare -fPIC -DHEADERCHECK -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/src/summerschool_inflow -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -fext-numeric-literals -o CMakeFiles/headercheck__src_summerschool_inflow_boundary_summerschool.hh.dir/headercheck/src/summerschool_inflow/boundary_summerschool.hh.cc.o -c /home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/headercheck/src/summerschool_inflow/boundary_summerschool.hh.cc", + "file": "/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/headercheck/src/summerschool_inflow/boundary_summerschool.hh.cc" +}, { "directory": "/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield", "command": "/usr/bin/g++ -DENABLE_EIGEN=1 -DENABLE_GMP=1 -DENABLE_MPI=1 -DENABLE_QUADMATH=1 -DENABLE_SUITESPARSE=1 -DENABLE_SUPERLU=1 -DENABLE_TBB=1 -DENABLE_UG=1 -DHAVE_CONFIG_H -DMPICH_SKIP_MPICXX -DMPIPP_H -DMPI_NO_CPPBIND -DModelP -DUG_USE_NEW_DIMENSION_DEFINES -D_GLIBCXX_USE_FLOAT128=1 -D_TBB_CPP0X -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -I/usr/local/ssd/home/vonwolls/dumux/dune-phasefield -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent/include -isystem /usr/lib/x86_64-linux-gnu/openmpi/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-common -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-geometry -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-uggrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/low -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/gm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/dom -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/ui -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/algebra -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/udm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ppif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/dddif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/util -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-typetree -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-istl -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-grid -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-localfunctions -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-functions -I/usr/include/python3.5m -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-python -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-alugrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-testtools -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-common -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-grid -I/home/ians1/vonwolls/ssd_local/dumux/dune-pdelab -isystem /usr/include/eigen3 -isystem /usr/include/suitesparse -isystem /usr/include/superlu -std=c++17 -fno-strict-aliasing -fstrict-overflow -fno-finite-math-only -O3 -march=native -funroll-loops -fdiagnostics-color=always -Wall -Wno-deprecated -Wno-deprecated-declarations -Wno-reorder -Wno-sign-compare -fPIC -DHEADERCHECK -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/dune/phasefield/localoperator -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -fext-numeric-literals -o CMakeFiles/headercheck__dune_phasefield_localoperator_fem_fs_chns_r_thinplateflow.hh.dir/headercheck/dune/phasefield/localoperator/fem_fs_chns_r_thinplateflow.hh.cc.o -c /home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/headercheck/dune/phasefield/localoperator/fem_fs_chns_r_thinplateflow.hh.cc", @@ -94,6 +114,11 @@ "command": "/usr/bin/g++ -DENABLE_EIGEN=1 -DENABLE_GMP=1 -DENABLE_MPI=1 -DENABLE_QUADMATH=1 -DENABLE_SUITESPARSE=1 -DENABLE_SUPERLU=1 -DENABLE_TBB=1 -DENABLE_UG=1 -DHAVE_CONFIG_H -DMPICH_SKIP_MPICXX -DMPIPP_H -DMPI_NO_CPPBIND -DModelP -DUG_USE_NEW_DIMENSION_DEFINES -D_GLIBCXX_USE_FLOAT128=1 -D_TBB_CPP0X -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -I/usr/local/ssd/home/vonwolls/dumux/dune-phasefield -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent/include -isystem /usr/lib/x86_64-linux-gnu/openmpi/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-common -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-geometry -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-uggrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/low -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/gm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/dom -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/ui -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/algebra -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/udm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ppif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/dddif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/util -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-typetree -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-istl -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-grid -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-localfunctions -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-functions -I/usr/include/python3.5m -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-python -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-alugrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-testtools -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-common -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-grid -I/home/ians1/vonwolls/ssd_local/dumux/dune-pdelab -isystem /usr/include/eigen3 -isystem /usr/include/suitesparse -isystem /usr/include/superlu -std=c++17 -fno-strict-aliasing -fstrict-overflow -fno-finite-math-only -O3 -march=native -funroll-loops -fdiagnostics-color=always -Wall -Wno-deprecated -Wno-deprecated-declarations -Wno-reorder -Wno-sign-compare -fPIC -DHEADERCHECK -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/src/paper_thinstrip_full -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -fext-numeric-literals -o CMakeFiles/headercheck__src_paper_thinstrip_full_thinstrip_full_chns_r_cahnhilliard.hh.dir/headercheck/src/paper_thinstrip_full/thinstrip_full_chns_r_cahnhilliard.hh.cc.o -c /home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/headercheck/src/paper_thinstrip_full/thinstrip_full_chns_r_cahnhilliard.hh.cc", "file": "/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/headercheck/src/paper_thinstrip_full/thinstrip_full_chns_r_cahnhilliard.hh.cc" }, +{ + "directory": "/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield", + "command": "/usr/bin/g++ -DENABLE_EIGEN=1 -DENABLE_GMP=1 -DENABLE_MPI=1 -DENABLE_QUADMATH=1 -DENABLE_SUITESPARSE=1 -DENABLE_SUPERLU=1 -DENABLE_TBB=1 -DENABLE_UG=1 -DHAVE_CONFIG_H -DMPICH_SKIP_MPICXX -DMPIPP_H -DMPI_NO_CPPBIND -DModelP -DUG_USE_NEW_DIMENSION_DEFINES -D_GLIBCXX_USE_FLOAT128=1 -D_TBB_CPP0X -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -I/usr/local/ssd/home/vonwolls/dumux/dune-phasefield -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent/include -isystem /usr/lib/x86_64-linux-gnu/openmpi/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-common -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-geometry -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-uggrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/low -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/gm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/dom -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/ui -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/algebra -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/udm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ppif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/dddif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/util -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-typetree -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-istl -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-grid -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-localfunctions -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-functions -I/usr/include/python3.5m -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-python -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-alugrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-testtools -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-common -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-grid -I/home/ians1/vonwolls/ssd_local/dumux/dune-pdelab -isystem /usr/include/eigen3 -isystem /usr/include/suitesparse -isystem /usr/include/superlu -std=c++17 -fno-strict-aliasing -fstrict-overflow -fno-finite-math-only -O3 -march=native -funroll-loops -fdiagnostics-color=always -Wall -Wno-deprecated -Wno-deprecated-declarations -Wno-reorder -Wno-sign-compare -fPIC -DHEADERCHECK -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/src/summerschool_inflow -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -fext-numeric-literals -o CMakeFiles/headercheck__src_summerschool_inflow_summerschool_timestepmanager.hh.dir/headercheck/src/summerschool_inflow/summerschool_timestepmanager.hh.cc.o -c /home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/headercheck/src/summerschool_inflow/summerschool_timestepmanager.hh.cc", + "file": "/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/headercheck/src/summerschool_inflow/summerschool_timestepmanager.hh.cc" +}, { "directory": "/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield", "command": "/usr/bin/g++ -DENABLE_EIGEN=1 -DENABLE_GMP=1 -DENABLE_MPI=1 -DENABLE_QUADMATH=1 -DENABLE_SUITESPARSE=1 -DENABLE_SUPERLU=1 -DENABLE_TBB=1 -DENABLE_UG=1 -DHAVE_CONFIG_H -DMPICH_SKIP_MPICXX -DMPIPP_H -DMPI_NO_CPPBIND -DModelP -DUG_USE_NEW_DIMENSION_DEFINES -D_GLIBCXX_USE_FLOAT128=1 -D_TBB_CPP0X -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -I/usr/local/ssd/home/vonwolls/dumux/dune-phasefield -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent/include -isystem /usr/lib/x86_64-linux-gnu/openmpi/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-common -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-geometry -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-uggrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/low -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/gm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/dom -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/ui -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/algebra -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/udm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ppif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/dddif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/util -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-typetree -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-istl -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-grid -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-localfunctions -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-functions -I/usr/include/python3.5m -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-python -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-alugrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-testtools -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-common -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-grid -I/home/ians1/vonwolls/ssd_local/dumux/dune-pdelab -isystem /usr/include/eigen3 -isystem /usr/include/suitesparse -isystem /usr/include/superlu -std=c++17 -fno-strict-aliasing -fstrict-overflow -fno-finite-math-only -O3 -march=native -funroll-loops -fdiagnostics-color=always -Wall -Wno-deprecated -Wno-deprecated-declarations -Wno-reorder -Wno-sign-compare -fPIC -DHEADERCHECK -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/src/test_2pchns_r -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -fext-numeric-literals -o CMakeFiles/headercheck__src_test_2pchns_r_2p_driver.hh.dir/headercheck/src/test_2pchns_r/2p_driver.hh.cc.o -c /home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/headercheck/src/test_2pchns_r/2p_driver.hh.cc", @@ -154,6 +179,11 @@ "command": "/usr/bin/g++ -DENABLE_EIGEN=1 -DENABLE_GMP=1 -DENABLE_MPI=1 -DENABLE_QUADMATH=1 -DENABLE_SUITESPARSE=1 -DENABLE_SUPERLU=1 -DENABLE_TBB=1 -DENABLE_UG=1 -DHAVE_CONFIG_H -DMPICH_SKIP_MPICXX -DMPIPP_H -DMPI_NO_CPPBIND -DModelP -DUG_USE_NEW_DIMENSION_DEFINES -D_GLIBCXX_USE_FLOAT128=1 -D_TBB_CPP0X -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -I/usr/local/ssd/home/vonwolls/dumux/dune-phasefield -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent/include -isystem /usr/lib/x86_64-linux-gnu/openmpi/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-common -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-geometry -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-uggrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/low -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/gm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/dom -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/ui -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/algebra -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/udm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ppif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/dddif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/util -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-typetree -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-istl -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-grid -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-localfunctions -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-functions -I/usr/include/python3.5m -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-python -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-alugrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-testtools -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-common -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-grid -I/home/ians1/vonwolls/ssd_local/dumux/dune-pdelab -isystem /usr/include/eigen3 -isystem /usr/include/suitesparse -isystem /usr/include/superlu -std=c++17 -fno-strict-aliasing -fstrict-overflow -fno-finite-math-only -O3 -march=native -funroll-loops -fdiagnostics-color=always -Wall -Wno-deprecated -Wno-deprecated-declarations -Wno-reorder -Wno-sign-compare -fPIC -DHEADERCHECK -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/dune/phasefield -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -fext-numeric-literals -o CMakeFiles/headercheck__dune_phasefield_initial_fn.hh.dir/headercheck/dune/phasefield/initial_fn.hh.cc.o -c /home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/headercheck/dune/phasefield/initial_fn.hh.cc", "file": "/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/headercheck/dune/phasefield/initial_fn.hh.cc" }, +{ + "directory": "/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield", + "command": "/usr/bin/g++ -DENABLE_EIGEN=1 -DENABLE_GMP=1 -DENABLE_MPI=1 -DENABLE_QUADMATH=1 -DENABLE_SUITESPARSE=1 -DENABLE_SUPERLU=1 -DENABLE_TBB=1 -DENABLE_UG=1 -DHAVE_CONFIG_H -DMPICH_SKIP_MPICXX -DMPIPP_H -DMPI_NO_CPPBIND -DModelP -DUG_USE_NEW_DIMENSION_DEFINES -D_GLIBCXX_USE_FLOAT128=1 -D_TBB_CPP0X -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -I/usr/local/ssd/home/vonwolls/dumux/dune-phasefield -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent/include -isystem /usr/lib/x86_64-linux-gnu/openmpi/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-common -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-geometry -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-uggrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/low -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/gm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/dom -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/ui -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/algebra -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/udm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ppif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/dddif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/util -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-typetree -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-istl -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-grid -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-localfunctions -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-functions -I/usr/include/python3.5m -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-python -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-alugrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-testtools -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-common -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-grid -I/home/ians1/vonwolls/ssd_local/dumux/dune-pdelab -isystem /usr/include/eigen3 -isystem /usr/include/suitesparse -isystem /usr/include/superlu -std=c++17 -fno-strict-aliasing -fstrict-overflow -fno-finite-math-only -O3 -march=native -funroll-loops -fdiagnostics-color=always -Wall -Wno-deprecated -Wno-deprecated-declarations -Wno-reorder -Wno-sign-compare -fPIC -DHEADERCHECK -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/dune/phasefield/localoperator -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -fext-numeric-literals -o CMakeFiles/headercheck__dune_phasefield_localoperator_fem_3p_cahnhilliard.hh.dir/headercheck/dune/phasefield/localoperator/fem_3p_cahnhilliard.hh.cc.o -c /home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/headercheck/dune/phasefield/localoperator/fem_3p_cahnhilliard.hh.cc", + "file": "/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/headercheck/dune/phasefield/localoperator/fem_3p_cahnhilliard.hh.cc" +}, { "directory": "/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield", "command": "/usr/bin/g++ -DENABLE_EIGEN=1 -DENABLE_GMP=1 -DENABLE_MPI=1 -DENABLE_QUADMATH=1 -DENABLE_SUITESPARSE=1 -DENABLE_SUPERLU=1 -DENABLE_TBB=1 -DENABLE_UG=1 -DHAVE_CONFIG_H -DMPICH_SKIP_MPICXX -DMPIPP_H -DMPI_NO_CPPBIND -DModelP -DUG_USE_NEW_DIMENSION_DEFINES -D_GLIBCXX_USE_FLOAT128=1 -D_TBB_CPP0X -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -I/usr/local/ssd/home/vonwolls/dumux/dune-phasefield -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent/include -isystem /usr/lib/x86_64-linux-gnu/openmpi/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-common -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-geometry -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-uggrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/low -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/gm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/dom -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/ui -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/algebra -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/udm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ppif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/dddif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/util -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-typetree -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-istl -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-grid -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-localfunctions -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-functions -I/usr/include/python3.5m -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-python -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-alugrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-testtools -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-common -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-grid -I/home/ians1/vonwolls/ssd_local/dumux/dune-pdelab -isystem /usr/include/eigen3 -isystem /usr/include/suitesparse -isystem /usr/include/superlu -std=c++17 -fno-strict-aliasing -fstrict-overflow -fno-finite-math-only -O3 -march=native -funroll-loops -fdiagnostics-color=always -Wall -Wno-deprecated -Wno-deprecated-declarations -Wno-reorder -Wno-sign-compare -fPIC -DHEADERCHECK -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/dune/phasefield/localoperator -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -fext-numeric-literals -o CMakeFiles/headercheck__dune_phasefield_localoperator_fem_ff_chns_cahnhilliard.hh.dir/headercheck/dune/phasefield/localoperator/fem_ff_chns_cahnhilliard.hh.cc.o -c /home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/headercheck/dune/phasefield/localoperator/fem_ff_chns_cahnhilliard.hh.cc", @@ -204,6 +234,11 @@ "command": "/usr/bin/g++ -DENABLE_EIGEN=1 -DENABLE_GMP=1 -DENABLE_MPI=1 -DENABLE_QUADMATH=1 -DENABLE_SUITESPARSE=1 -DENABLE_SUPERLU=1 -DENABLE_TBB=1 -DENABLE_UG=1 -DHAVE_CONFIG_H -DMPICH_SKIP_MPICXX -DMPIPP_H -DMPI_NO_CPPBIND -DModelP -DUG_USE_NEW_DIMENSION_DEFINES -D_GLIBCXX_USE_FLOAT128=1 -D_TBB_CPP0X -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -I/usr/local/ssd/home/vonwolls/dumux/dune-phasefield -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent/include -isystem /usr/lib/x86_64-linux-gnu/openmpi/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-common -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-geometry -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-uggrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/low -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/gm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/dom -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/ui -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/algebra -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/udm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ppif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/dddif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/util -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-typetree -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-istl -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-grid -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-localfunctions -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-functions -I/usr/include/python3.5m -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-python -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-alugrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-testtools -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-common -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-grid -I/home/ians1/vonwolls/ssd_local/dumux/dune-pdelab -isystem /usr/include/eigen3 -isystem /usr/include/suitesparse -isystem /usr/include/superlu -std=c++17 -fno-strict-aliasing -fstrict-overflow -fno-finite-math-only -O3 -march=native -funroll-loops -fdiagnostics-color=always -Wall -Wno-deprecated -Wno-deprecated-declarations -Wno-reorder -Wno-sign-compare -fPIC -DHEADERCHECK -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/dune/phasefield -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -fext-numeric-literals -o CMakeFiles/headercheck__dune_phasefield_phasefield.hh.dir/headercheck/dune/phasefield/phasefield.hh.cc.o -c /home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/headercheck/dune/phasefield/phasefield.hh.cc", "file": "/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/headercheck/dune/phasefield/phasefield.hh.cc" }, +{ + "directory": "/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield", + "command": "/usr/bin/g++ -DENABLE_EIGEN=1 -DENABLE_GMP=1 -DENABLE_MPI=1 -DENABLE_QUADMATH=1 -DENABLE_SUITESPARSE=1 -DENABLE_SUPERLU=1 -DENABLE_TBB=1 -DENABLE_UG=1 -DHAVE_CONFIG_H -DMPICH_SKIP_MPICXX -DMPIPP_H -DMPI_NO_CPPBIND -DModelP -DUG_USE_NEW_DIMENSION_DEFINES -D_GLIBCXX_USE_FLOAT128=1 -D_TBB_CPP0X -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -I/usr/local/ssd/home/vonwolls/dumux/dune-phasefield -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent/include -isystem /usr/lib/x86_64-linux-gnu/openmpi/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-common -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-geometry -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-uggrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/low -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/gm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/dom -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/ui -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/algebra -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/udm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ppif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/dddif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/util -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-typetree -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-istl -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-grid -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-localfunctions -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-functions -I/usr/include/python3.5m -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-python -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-alugrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-testtools -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-common -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-grid -I/home/ians1/vonwolls/ssd_local/dumux/dune-pdelab -isystem /usr/include/eigen3 -isystem /usr/include/suitesparse -isystem /usr/include/superlu -std=c++17 -fno-strict-aliasing -fstrict-overflow -fno-finite-math-only -O3 -march=native -funroll-loops -fdiagnostics-color=always -Wall -Wno-deprecated -Wno-deprecated-declarations -Wno-reorder -Wno-sign-compare -fPIC -DHEADERCHECK -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/src/summerschool_inflow -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -fext-numeric-literals -o CMakeFiles/headercheck__src_summerschool_inflow_2p_driver.hh.dir/headercheck/src/summerschool_inflow/2p_driver.hh.cc.o -c /home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/headercheck/src/summerschool_inflow/2p_driver.hh.cc", + "file": "/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/headercheck/src/summerschool_inflow/2p_driver.hh.cc" +}, { "directory": "/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield", "command": "/usr/bin/g++ -DENABLE_EIGEN=1 -DENABLE_GMP=1 -DENABLE_MPI=1 -DENABLE_QUADMATH=1 -DENABLE_SUITESPARSE=1 -DENABLE_SUPERLU=1 -DENABLE_TBB=1 -DENABLE_UG=1 -DHAVE_CONFIG_H -DMPICH_SKIP_MPICXX -DMPIPP_H -DMPI_NO_CPPBIND -DModelP -DUG_USE_NEW_DIMENSION_DEFINES -D_GLIBCXX_USE_FLOAT128=1 -D_TBB_CPP0X -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -I/usr/local/ssd/home/vonwolls/dumux/dune-phasefield -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent/include -isystem /usr/lib/x86_64-linux-gnu/openmpi/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-common -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-geometry -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-uggrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/low -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/gm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/dom -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/ui -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/algebra -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/udm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ppif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/dddif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/util -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-typetree -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-istl -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-grid -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-localfunctions -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-functions -I/usr/include/python3.5m -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-python -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-alugrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-testtools -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-common -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-grid -I/home/ians1/vonwolls/ssd_local/dumux/dune-pdelab -isystem /usr/include/eigen3 -isystem /usr/include/suitesparse -isystem /usr/include/superlu -std=c++17 -fno-strict-aliasing -fstrict-overflow -fno-finite-math-only -O3 -march=native -funroll-loops -fdiagnostics-color=always -Wall -Wno-deprecated -Wno-deprecated-declarations -Wno-reorder -Wno-sign-compare -fPIC -DHEADERCHECK -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/dune/phasefield/utility -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -fext-numeric-literals -o CMakeFiles/headercheck__dune_phasefield_utility_pf_3p_color_dgf.hh.dir/headercheck/dune/phasefield/utility/pf_3p_color_dgf.hh.cc.o -c /home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/headercheck/dune/phasefield/utility/pf_3p_color_dgf.hh.cc", @@ -241,39 +276,19 @@ }, { "directory": "/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield", - "command": "/usr/bin/g++ -DENABLE_EIGEN=1 -DENABLE_GMP=1 -DENABLE_MPI=1 -DENABLE_QUADMATH=1 -DENABLE_SUITESPARSE=1 -DENABLE_SUPERLU=1 -DENABLE_TBB=1 -DENABLE_UG=1 -DHAVE_CONFIG_H -DMPICH_SKIP_MPICXX -DMPIPP_H -DMPI_NO_CPPBIND -DModelP -DUG_USE_NEW_DIMENSION_DEFINES -D_GLIBCXX_USE_FLOAT128=1 -D_TBB_CPP0X -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -I/usr/local/ssd/home/vonwolls/dumux/dune-phasefield -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent/include -isystem /usr/lib/x86_64-linux-gnu/openmpi/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-common -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-geometry -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-uggrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/low -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/gm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/dom -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/ui -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/algebra -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/udm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ppif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/dddif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/util -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-typetree -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-istl -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-grid -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-localfunctions -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-functions -I/usr/include/python3.5m -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-python -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-alugrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-testtools -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-common -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-grid -I/home/ians1/vonwolls/ssd_local/dumux/dune-pdelab -isystem /usr/include/eigen3 -isystem /usr/include/suitesparse -isystem /usr/include/superlu -std=c++17 -fno-strict-aliasing -fstrict-overflow -fno-finite-math-only -O3 -march=native -funroll-loops -fdiagnostics-color=always -Wall -Wno-deprecated -Wno-deprecated-declarations -Wno-reorder -Wno-sign-compare -fPIC -DHEADERCHECK -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/src/paper_thinstrip_mixed -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -fext-numeric-literals -o CMakeFiles/headercheck__src_paper_thinstrip_mixed_3p_driver.hh.dir/headercheck/src/paper_thinstrip_mixed/3p_driver.hh.cc.o -c /home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/headercheck/src/paper_thinstrip_mixed/3p_driver.hh.cc", - "file": "/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/headercheck/src/paper_thinstrip_mixed/3p_driver.hh.cc" + "command": "/usr/bin/g++ -DENABLE_EIGEN=1 -DENABLE_GMP=1 -DENABLE_MPI=1 -DENABLE_QUADMATH=1 -DENABLE_SUITESPARSE=1 -DENABLE_SUPERLU=1 -DENABLE_TBB=1 -DENABLE_UG=1 -DHAVE_CONFIG_H -DMPICH_SKIP_MPICXX -DMPIPP_H -DMPI_NO_CPPBIND -DModelP -DUG_USE_NEW_DIMENSION_DEFINES -D_GLIBCXX_USE_FLOAT128=1 -D_TBB_CPP0X -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -I/usr/local/ssd/home/vonwolls/dumux/dune-phasefield -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent/include -isystem /usr/lib/x86_64-linux-gnu/openmpi/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-common -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-geometry -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-uggrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/low -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/gm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/dom -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/ui -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/algebra -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/udm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ppif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/dddif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/util -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-typetree -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-istl -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-grid -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-localfunctions -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-functions -I/usr/include/python3.5m -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-python -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-alugrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-testtools -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-common -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-grid -I/home/ians1/vonwolls/ssd_local/dumux/dune-pdelab -isystem /usr/include/eigen3 -isystem /usr/include/suitesparse -isystem /usr/include/superlu -std=c++17 -fno-strict-aliasing -fstrict-overflow -fno-finite-math-only -O3 -march=native -funroll-loops -fdiagnostics-color=always -Wall -Wno-deprecated -Wno-deprecated-declarations -Wno-reorder -Wno-sign-compare -fPIC -DHEADERCHECK -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/src/paper_thinstrip_mixed -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -fext-numeric-literals -o CMakeFiles/headercheck__src_paper_thinstrip_mixed_driver_mixed.hh.dir/headercheck/src/paper_thinstrip_mixed/driver_mixed.hh.cc.o -c /home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/headercheck/src/paper_thinstrip_mixed/driver_mixed.hh.cc", + "file": "/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/headercheck/src/paper_thinstrip_mixed/driver_mixed.hh.cc" }, { "directory": "/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield", - "command": "/usr/bin/g++ -DENABLE_EIGEN=1 -DENABLE_GMP=1 -DENABLE_MPI=1 -DENABLE_QUADMATH=1 -DENABLE_SUITESPARSE=1 -DENABLE_SUPERLU=1 -DENABLE_TBB=1 -DENABLE_UG=1 -DHAVE_CONFIG_H -DMPICH_SKIP_MPICXX -DMPIPP_H -DMPI_NO_CPPBIND -DModelP -DUG_USE_NEW_DIMENSION_DEFINES -D_GLIBCXX_USE_FLOAT128=1 -D_TBB_CPP0X -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -I/usr/local/ssd/home/vonwolls/dumux/dune-phasefield -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent/include -isystem /usr/lib/x86_64-linux-gnu/openmpi/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-common -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-geometry -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-uggrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/low -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/gm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/dom -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/ui -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/algebra -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/udm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ppif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/dddif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/util -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-typetree -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-istl -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-grid -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-localfunctions -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-functions -I/usr/include/python3.5m -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-python -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-alugrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-testtools -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-common -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-grid -I/home/ians1/vonwolls/ssd_local/dumux/dune-pdelab -isystem /usr/include/eigen3 -isystem /usr/include/suitesparse -isystem /usr/include/superlu -std=c++17 -fno-strict-aliasing -fstrict-overflow -fno-finite-math-only -O3 -march=native -funroll-loops -fdiagnostics-color=always -Wall -Wno-deprecated -Wno-deprecated-declarations -Wno-reorder -Wno-sign-compare -fPIC -DHEADERCHECK -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/dune/phasefield/localoperator -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -fext-numeric-literals -o CMakeFiles/headercheck__dune_phasefield_localoperator_fem_3p_cahnhilliard.hh.dir/headercheck/dune/phasefield/localoperator/fem_3p_cahnhilliard.hh.cc.o -c /home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/headercheck/dune/phasefield/localoperator/fem_3p_cahnhilliard.hh.cc", - "file": "/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/headercheck/dune/phasefield/localoperator/fem_3p_cahnhilliard.hh.cc" -}, -{ - "directory": "/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield", - "command": "/usr/bin/g++ -DENABLE_EIGEN=1 -DENABLE_GMP=1 -DENABLE_MPI=1 -DENABLE_QUADMATH=1 -DENABLE_SUITESPARSE=1 -DENABLE_SUPERLU=1 -DENABLE_TBB=1 -DENABLE_UG=1 -DHAVE_CONFIG_H -DMPICH_SKIP_MPICXX -DMPIPP_H -DMPI_NO_CPPBIND -DModelP -DUG_USE_NEW_DIMENSION_DEFINES -D_GLIBCXX_USE_FLOAT128=1 -D_TBB_CPP0X -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -I/usr/local/ssd/home/vonwolls/dumux/dune-phasefield -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent/include -isystem /usr/lib/x86_64-linux-gnu/openmpi/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-common -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-geometry -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-uggrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/low -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/gm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/dom -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/ui -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/algebra -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/udm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ppif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/dddif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/util -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-typetree -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-istl -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-grid -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-localfunctions -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-functions -I/usr/include/python3.5m -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-python -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-alugrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-testtools -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-common -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-grid -I/home/ians1/vonwolls/ssd_local/dumux/dune-pdelab -isystem /usr/include/eigen3 -isystem /usr/include/suitesparse -isystem /usr/include/superlu -std=c++17 -fno-strict-aliasing -fstrict-overflow -fno-finite-math-only -O3 -march=native -funroll-loops -fdiagnostics-color=always -Wall -Wno-deprecated -Wno-deprecated-declarations -Wno-reorder -Wno-sign-compare -fPIC -DHEADERCHECK -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/src/paper_thinstrip_mixed -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -fext-numeric-literals -o CMakeFiles/headercheck__src_paper_thinstrip_mixed_thinstrip_boundary.hh.dir/headercheck/src/paper_thinstrip_mixed/thinstrip_boundary.hh.cc.o -c /home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/headercheck/src/paper_thinstrip_mixed/thinstrip_boundary.hh.cc", - "file": "/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/headercheck/src/paper_thinstrip_mixed/thinstrip_boundary.hh.cc" + "command": "/usr/bin/g++ -DENABLE_EIGEN=1 -DENABLE_GMP=1 -DENABLE_MPI=1 -DENABLE_QUADMATH=1 -DENABLE_SUITESPARSE=1 -DENABLE_SUPERLU=1 -DENABLE_TBB=1 -DENABLE_UG=1 -DHAVE_CONFIG_H -DMPICH_SKIP_MPICXX -DMPIPP_H -DMPI_NO_CPPBIND -DModelP -DUG_USE_NEW_DIMENSION_DEFINES -D_GLIBCXX_USE_FLOAT128=1 -D_TBB_CPP0X -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -I/usr/local/ssd/home/vonwolls/dumux/dune-phasefield -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent/include -isystem /usr/lib/x86_64-linux-gnu/openmpi/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-common -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-geometry -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-uggrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/low -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/gm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/dom -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/ui -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/algebra -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/udm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ppif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/dddif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/util -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-typetree -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-istl -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-grid -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-localfunctions -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-functions -I/usr/include/python3.5m -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-python -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-alugrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-testtools -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-common -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-grid -I/home/ians1/vonwolls/ssd_local/dumux/dune-pdelab -isystem /usr/include/eigen3 -isystem /usr/include/suitesparse -isystem /usr/include/superlu -std=c++17 -fno-strict-aliasing -fstrict-overflow -fno-finite-math-only -O3 -march=native -funroll-loops -fdiagnostics-color=always -Wall -Wno-deprecated -Wno-deprecated-declarations -Wno-reorder -Wno-sign-compare -fPIC -DHEADERCHECK -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/src/paper_thinstrip_mixed -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -fext-numeric-literals -o CMakeFiles/headercheck__src_paper_thinstrip_mixed_tmixed_boundary.hh.dir/headercheck/src/paper_thinstrip_mixed/tmixed_boundary.hh.cc.o -c /home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/headercheck/src/paper_thinstrip_mixed/tmixed_boundary.hh.cc", + "file": "/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/headercheck/src/paper_thinstrip_mixed/tmixed_boundary.hh.cc" }, { "directory": "/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield", "command": "/usr/bin/g++ -DENABLE_EIGEN=1 -DENABLE_GMP=1 -DENABLE_MPI=1 -DENABLE_QUADMATH=1 -DENABLE_SUITESPARSE=1 -DENABLE_SUPERLU=1 -DENABLE_TBB=1 -DENABLE_UG=1 -DHAVE_CONFIG_H -DMPICH_SKIP_MPICXX -DMPIPP_H -DMPI_NO_CPPBIND -DModelP -DUG_USE_NEW_DIMENSION_DEFINES -D_GLIBCXX_USE_FLOAT128=1 -D_TBB_CPP0X -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -I/usr/local/ssd/home/vonwolls/dumux/dune-phasefield -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent/include -isystem /usr/lib/x86_64-linux-gnu/openmpi/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-common -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-geometry -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-uggrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/low -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/gm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/dom -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/ui -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/algebra -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/udm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ppif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/dddif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/util -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-typetree -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-istl -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-grid -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-localfunctions -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-functions -I/usr/include/python3.5m -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-python -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-alugrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-testtools -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-common -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-grid -I/home/ians1/vonwolls/ssd_local/dumux/dune-pdelab -isystem /usr/include/eigen3 -isystem /usr/include/suitesparse -isystem /usr/include/superlu -std=c++17 -fno-strict-aliasing -fstrict-overflow -fno-finite-math-only -O3 -march=native -funroll-loops -fdiagnostics-color=always -Wall -Wno-deprecated -Wno-deprecated-declarations -Wno-reorder -Wno-sign-compare -fPIC -DHEADERCHECK -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/src/test_3pchns_r -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -fext-numeric-literals -o CMakeFiles/headercheck__src_test_3pchns_r_3p_driver.hh.dir/headercheck/src/test_3pchns_r/3p_driver.hh.cc.o -c /home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/headercheck/src/test_3pchns_r/3p_driver.hh.cc", "file": "/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/headercheck/src/test_3pchns_r/3p_driver.hh.cc" }, -{ - "directory": "/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield", - "command": "/usr/bin/g++ -DENABLE_EIGEN=1 -DENABLE_GMP=1 -DENABLE_MPI=1 -DENABLE_QUADMATH=1 -DENABLE_SUITESPARSE=1 -DENABLE_SUPERLU=1 -DENABLE_TBB=1 -DENABLE_UG=1 -DHAVE_CONFIG_H -DMPICH_SKIP_MPICXX -DMPIPP_H -DMPI_NO_CPPBIND -DModelP -DUG_USE_NEW_DIMENSION_DEFINES -D_GLIBCXX_USE_FLOAT128=1 -D_TBB_CPP0X -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -I/usr/local/ssd/home/vonwolls/dumux/dune-phasefield -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent/include -isystem /usr/lib/x86_64-linux-gnu/openmpi/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-common -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-geometry -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-uggrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/low -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/gm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/dom -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/ui -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/algebra -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/udm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ppif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/dddif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/util -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-typetree -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-istl -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-grid -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-localfunctions -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-functions -I/usr/include/python3.5m -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-python -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-alugrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-testtools -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-common -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-grid -I/home/ians1/vonwolls/ssd_local/dumux/dune-pdelab -isystem /usr/include/eigen3 -isystem /usr/include/suitesparse -isystem /usr/include/superlu -std=c++17 -fno-strict-aliasing -fstrict-overflow -fno-finite-math-only -O3 -march=native -funroll-loops -fdiagnostics-color=always -Wall -Wno-deprecated -Wno-deprecated-declarations -Wno-reorder -Wno-sign-compare -fPIC -DHEADERCHECK -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/src/test_contactpointdynamics -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -fext-numeric-literals -o CMakeFiles/headercheck__src_test_contactpointdynamics_3p_driver.hh.dir/headercheck/src/test_contactpointdynamics/3p_driver.hh.cc.o -c /home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/headercheck/src/test_contactpointdynamics/3p_driver.hh.cc", - "file": "/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/headercheck/src/test_contactpointdynamics/3p_driver.hh.cc" -}, -{ - "directory": "/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield", - "command": "/usr/bin/g++ -DENABLE_EIGEN=1 -DENABLE_GMP=1 -DENABLE_MPI=1 -DENABLE_QUADMATH=1 -DENABLE_SUITESPARSE=1 -DENABLE_SUPERLU=1 -DENABLE_TBB=1 -DENABLE_UG=1 -DHAVE_CONFIG_H -DMPICH_SKIP_MPICXX -DMPIPP_H -DMPI_NO_CPPBIND -DModelP -DUG_USE_NEW_DIMENSION_DEFINES -D_GLIBCXX_USE_FLOAT128=1 -D_TBB_CPP0X -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -I/usr/local/ssd/home/vonwolls/dumux/dune-phasefield -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent/include -isystem /usr/lib/x86_64-linux-gnu/openmpi/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-common -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-geometry -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-uggrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/low -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/gm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/dom -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/ui -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/algebra -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/udm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ppif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/dddif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/util -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-typetree -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-istl -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-grid -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-localfunctions -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-functions -I/usr/include/python3.5m -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-python -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-alugrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-testtools -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-common -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-grid -I/home/ians1/vonwolls/ssd_local/dumux/dune-pdelab -isystem /usr/include/eigen3 -isystem /usr/include/suitesparse -isystem /usr/include/superlu -std=c++17 -fno-strict-aliasing -fstrict-overflow -fno-finite-math-only -O3 -march=native -funroll-loops -fdiagnostics-color=always -Wall -Wno-deprecated -Wno-deprecated-declarations -Wno-reorder -Wno-sign-compare -fPIC -DHEADERCHECK -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/src/test_hainesjump -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -fext-numeric-literals -o CMakeFiles/headercheck__src_test_hainesjump_3p_driver.hh.dir/headercheck/src/test_hainesjump/3p_driver.hh.cc.o -c /home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/headercheck/src/test_hainesjump/3p_driver.hh.cc", - "file": "/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/headercheck/src/test_hainesjump/3p_driver.hh.cc" -}, -{ - "directory": "/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield", - "command": "/usr/bin/g++ -DENABLE_EIGEN=1 -DENABLE_GMP=1 -DENABLE_MPI=1 -DENABLE_QUADMATH=1 -DENABLE_SUITESPARSE=1 -DENABLE_SUPERLU=1 -DENABLE_TBB=1 -DENABLE_UG=1 -DHAVE_CONFIG_H -DMPICH_SKIP_MPICXX -DMPIPP_H -DMPI_NO_CPPBIND -DModelP -DUG_USE_NEW_DIMENSION_DEFINES -D_GLIBCXX_USE_FLOAT128=1 -D_TBB_CPP0X -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -I/usr/local/ssd/home/vonwolls/dumux/dune-phasefield -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent/include -isystem /usr/lib/x86_64-linux-gnu/openmpi/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-common -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-geometry -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-uggrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/low -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/gm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/dom -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/ui -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/algebra -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/udm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ppif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/dddif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/util -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-typetree -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-istl -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-grid -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-localfunctions -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-functions -I/usr/include/python3.5m -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-python -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-alugrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-testtools -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-common -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-grid -I/home/ians1/vonwolls/ssd_local/dumux/dune-pdelab -isystem /usr/include/eigen3 -isystem /usr/include/suitesparse -isystem /usr/include/superlu -std=c++17 -fno-strict-aliasing -fstrict-overflow -fno-finite-math-only -O3 -march=native -funroll-loops -fdiagnostics-color=always -Wall -Wno-deprecated -Wno-deprecated-declarations -Wno-reorder -Wno-sign-compare -fPIC -DHEADERCHECK -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/src/test_periodic -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -fext-numeric-literals -o CMakeFiles/headercheck__src_test_periodic_3p_driver.hh.dir/headercheck/src/test_periodic/3p_driver.hh.cc.o -c /home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/headercheck/src/test_periodic/3p_driver.hh.cc", - "file": "/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/headercheck/src/test_periodic/3p_driver.hh.cc" -}, { "directory": "/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/src", "command": "/usr/bin/g++ -DENABLE_EIGEN=1 -DENABLE_GMP=1 -DENABLE_MPI=1 -DENABLE_QUADMATH=1 -DENABLE_SUITESPARSE=1 -DENABLE_SUPERLU=1 -DENABLE_TBB=1 -DENABLE_UG=1 -DHAVE_CONFIG_H -DMPICH_SKIP_MPICXX -DMPIPP_H -DMPI_NO_CPPBIND -DModelP -DUG_USE_NEW_DIMENSION_DEFINES -D_GLIBCXX_USE_FLOAT128=1 -D_TBB_CPP0X -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -I/usr/local/ssd/home/vonwolls/dumux/dune-phasefield -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent/include -isystem /usr/lib/x86_64-linux-gnu/openmpi/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-common -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-geometry -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-uggrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/low -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/gm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/dom -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/ui -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/algebra -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/udm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ppif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/dddif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/util -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-typetree -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-istl -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-grid -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-localfunctions -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-functions -I/usr/include/python3.5m -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-python -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-alugrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-testtools -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-common -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-grid -I/home/ians1/vonwolls/ssd_local/dumux/dune-pdelab -isystem /usr/include/eigen3 -isystem /usr/include/suitesparse -isystem /usr/include/superlu -std=c++17 -fno-strict-aliasing -fstrict-overflow -fno-finite-math-only -O3 -march=native -funroll-loops -fdiagnostics-color=always -Wall -Wno-deprecated -Wno-deprecated-declarations -Wno-reorder -Wno-sign-compare -fPIE -fext-numeric-literals -o CMakeFiles/dune-phasefield.dir/dune-phasefield.cc.o -c /home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/src/dune-phasefield.cc", @@ -348,5 +363,10 @@ "directory": "/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/src/paper_thinstrip_mixed", "command": "/usr/bin/g++ -DENABLE_EIGEN=1 -DENABLE_GMP=1 -DENABLE_MPI=1 -DENABLE_QUADMATH=1 -DENABLE_SUITESPARSE=1 -DENABLE_SUPERLU=1 -DENABLE_TBB=1 -DENABLE_UG=1 -DHAVE_CONFIG_H -DMPICH_SKIP_MPICXX -DMPIPP_H -DMPI_NO_CPPBIND -DModelP -DUG_USE_NEW_DIMENSION_DEFINES -D_GLIBCXX_USE_FLOAT128=1 -D_TBB_CPP0X -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -I/usr/local/ssd/home/vonwolls/dumux/dune-phasefield -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent/include -isystem /usr/lib/x86_64-linux-gnu/openmpi/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-common -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-geometry -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-uggrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/low -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/gm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/dom -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/ui -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/algebra -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/udm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ppif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/dddif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/util -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-typetree -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-istl -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-grid -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-localfunctions -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-functions -I/usr/include/python3.5m -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-python -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-alugrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-testtools -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-common -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-grid -I/home/ians1/vonwolls/ssd_local/dumux/dune-pdelab -isystem /usr/include/eigen3 -isystem /usr/include/suitesparse -isystem /usr/include/superlu -std=c++17 -fno-strict-aliasing -fstrict-overflow -fno-finite-math-only -O3 -march=native -funroll-loops -fdiagnostics-color=always -Wall -Wno-deprecated -Wno-deprecated-declarations -Wno-reorder -Wno-sign-compare -fPIE -fext-numeric-literals -o CMakeFiles/tmixed_equation.dir/tmixed_equation.cc.o -c /home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/src/paper_thinstrip_mixed/tmixed_equation.cc", "file": "/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/src/paper_thinstrip_mixed/tmixed_equation.cc" +}, +{ + "directory": "/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/src/summerschool_inflow", + "command": "/usr/bin/g++ -DENABLE_EIGEN=1 -DENABLE_GMP=1 -DENABLE_MPI=1 -DENABLE_QUADMATH=1 -DENABLE_SUITESPARSE=1 -DENABLE_SUPERLU=1 -DENABLE_TBB=1 -DENABLE_UG=1 -DHAVE_CONFIG_H -DMPICH_SKIP_MPICXX -DMPIPP_H -DMPI_NO_CPPBIND -DModelP -DUG_USE_NEW_DIMENSION_DEFINES -D_GLIBCXX_USE_FLOAT128=1 -D_TBB_CPP0X -I/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield -I/usr/local/ssd/home/vonwolls/dumux/dune-phasefield -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi/opal/mca/event/libevent2022/libevent/include -isystem /usr/lib/x86_64-linux-gnu/openmpi/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-common -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-geometry -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-uggrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/low -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/gm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/dom -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/ui -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/algebra -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/np/udm -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ppif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/dddif -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/util -I/home/ians1/vonwolls/ssd_local/dumux/dune-uggrid/parallel/ddd/include -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-typetree -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-istl -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-grid -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-localfunctions -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-functions -I/usr/include/python3.5m -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-python -isystem /home/ians1/vonwolls/ssd_local/dumux/dune-alugrid -I/home/ians1/vonwolls/ssd_local/dumux/dune-testtools -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-common -I/home/ians1/vonwolls/ssd_local/dumux/dune-xt-grid -I/home/ians1/vonwolls/ssd_local/dumux/dune-pdelab -isystem /usr/include/eigen3 -isystem /usr/include/suitesparse -isystem /usr/include/superlu -std=c++17 -fno-strict-aliasing -fstrict-overflow -fno-finite-math-only -O3 -march=native -funroll-loops -fdiagnostics-color=always -Wall -Wno-deprecated -Wno-deprecated-declarations -Wno-reorder -Wno-sign-compare -fPIE -fext-numeric-literals -o CMakeFiles/inflow.dir/inflow.cc.o -c /home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/src/summerschool_inflow/inflow.cc", + "file": "/home/ians1/vonwolls/ssd_local/dumux/dune-phasefield/src/summerschool_inflow/inflow.cc" } ] \ No newline at end of file diff --git a/dune/phasefield/chns_base.hh b/dune/phasefield/chns_base.hh index abecb545ecdee6f94773bd4dea1f16e60d756248..923aeace08a00384a044326105fe629aa0111fb6 100644 --- a/dune/phasefield/chns_base.hh +++ b/dune/phasefield/chns_base.hh @@ -160,6 +160,16 @@ public: template<typename VTKWRITER> void applyTimestep(VTKWRITER& vtkwriter) + { + applyTimestep(); + if( time.t < saveintervallstart || time.t>lastsave+saveintervall ) + { + lastsave = time.t; + vtkwriter.write(time.t,Dune::VTK::ascii); + } + } + + void applyTimestep() { time.t += time.dt; if(time.dt < dtMax) @@ -167,12 +177,6 @@ public: time.dt = std::min(time.dt*dtIncreaseFactor, dtMax); if (verb > 0) std::cout << "New Timestep "<< time.dt << std::endl; } - - if( time.t < saveintervallstart || time.t>lastsave+saveintervall ) - { - lastsave = time.t; - vtkwriter.write(time.t,Dune::VTK::ascii); - } } int rejectTimestep() diff --git a/dune/phasefield/initial_fn.hh b/dune/phasefield/initial_fn.hh index 36ded598b90f12a4dc01302ef67fee6e3080ceef..be95900e191e1cadcef80b33d86a538e41c63209 100644 --- a/dune/phasefield/initial_fn.hh +++ b/dune/phasefield/initial_fn.hh @@ -341,12 +341,14 @@ class PhiInitial_SummerSchoolFull : public Dune::PDELab::AnalyticGridFunctionBase< Dune::PDELab::AnalyticGridFunctionTraits<GV,RF,1>, PhiInitial_SummerSchoolFull<GV,RF,Params> > { + +public: RF eps; RF radius; std::vector<RF> xValues; std::vector<RF> yValues; -public: + typedef Dune::PDELab::AnalyticGridFunctionTraits<GV,RF,1> Traits; PhiInitial_SummerSchoolFull(const GV & gv, const Params & params) : @@ -390,13 +392,15 @@ class PhiInitial_SummerSchoolPaper : public Dune::PDELab::AnalyticGridFunctionBase< Dune::PDELab::AnalyticGridFunctionTraits<GV,RF,1>, PhiInitial_SummerSchoolPaper<GV,RF,Params> > { +public: RF eps; RF radius; std::vector<RF> xValues; std::vector<RF> yValues; +private: inline static RF PxToCoord_x(const RF px_x) { - return (px_x - 150)/((RF)299); + return 0.5+(px_x - 150)/((RF)299); } inline static RF PxToCoord_y(const RF px_y) { @@ -411,6 +415,16 @@ class PhiInitial_SummerSchoolPaper : { return (107 - px_y)/((RF)314); } + + inline static RF PxToCoord_x3(const RF px_x) + { + return (px_x - 391)/((RF)224/1.5); + } + inline static RF PxToCoord_y3(const RF px_y) + { + return (749 - px_y)/((RF)224/1.5); + } + public: typedef Dune::PDELab::AnalyticGridFunctionTraits<GV,RF,1> Traits; @@ -423,34 +437,49 @@ public: //Experiment 1 -/* + xValues.push_back(PxToCoord_x(154)); yValues.push_back(PxToCoord_y(75)); xValues.push_back(PxToCoord_x(317)); yValues.push_back(PxToCoord_y(85)); xValues.push_back(PxToCoord_x(364)); yValues.push_back(PxToCoord_y(110)); xValues.push_back(PxToCoord_x(556)); yValues.push_back(PxToCoord_y(65)); - xValues.push_back(PxToCoord_x(668)); yValues.push_back(PxToCoord_y(63)); + //xValues.push_back(PxToCoord_x(668)); yValues.push_back(PxToCoord_y(63)); xValues.push_back(PxToCoord_x(759)); yValues.push_back(PxToCoord_y(85)); - xValues.push_back(PxToCoord_x(775)); yValues.push_back(PxToCoord_y(143)); + //xValues.push_back(PxToCoord_x(775)); yValues.push_back(PxToCoord_y(143)); xValues.push_back(PxToCoord_x(832)); yValues.push_back(PxToCoord_y(159)); - xValues.push_back(PxToCoord_x(874)); yValues.push_back(PxToCoord_y(139)); + //xValues.push_back(PxToCoord_x(874)); yValues.push_back(PxToCoord_y(139)); //xValues.push_back(PxToCoord_x(815)); yValues.push_back(PxToCoord_y(36)); //xValues.push_back(PxToCoord_x(848)); yValues.push_back(PxToCoord_y(53)); xValues.push_back(PxToCoord_x(938)); yValues.push_back(PxToCoord_y(101)); xValues.push_back(PxToCoord_x(1100)); yValues.push_back(PxToCoord_y(62)); - xValues.push_back(PxToCoord_x(1226)); yValues.push_back(PxToCoord_y(15)); - xValues.push_back(PxToCoord_x(1257)); yValues.push_back(PxToCoord_y(29)); + xValues.push_back(PxToCoord_x(1229)); yValues.push_back(PxToCoord_y(20)); + xValues.push_back(PxToCoord_x(1258)); yValues.push_back(PxToCoord_y(29)); xValues.push_back(PxToCoord_x(1340)); yValues.push_back(PxToCoord_y(57)); xValues.push_back(PxToCoord_x(1346)); yValues.push_back(PxToCoord_y(77)); xValues.push_back(PxToCoord_x(1354)); yValues.push_back(PxToCoord_y(103)); - xValues.push_back(PxToCoord_x(1432)); yValues.push_back(PxToCoord_y(101)); + //xValues.push_back(PxToCoord_x(1432)); yValues.push_back(PxToCoord_y(101)); xValues.push_back(PxToCoord_x(1731)); yValues.push_back(PxToCoord_y(115)); - //xValues.push_back(PxToCoord_x(1915)); yValues.push_back(PxToCoord_y(77)); -*/ + xValues.push_back(PxToCoord_x(1915)); yValues.push_back(PxToCoord_y(77)); +/* //Experiment 7 xValues.push_back(PxToCoord_x2(423)); yValues.push_back(PxToCoord_y2(129)); xValues.push_back(PxToCoord_x2(1636)); yValues.push_back(PxToCoord_y2(98)); +*/ - +/* +//Inflow + xValues.push_back(PxToCoord_x3(402)); yValues.push_back(PxToCoord_y3(642)); + xValues.push_back(PxToCoord_x3(406)); yValues.push_back(PxToCoord_y3(689)); + xValues.push_back(PxToCoord_x3(416)); yValues.push_back(PxToCoord_y3(696)); + xValues.push_back(PxToCoord_x3(425)); yValues.push_back(PxToCoord_y3(709)); + xValues.push_back(PxToCoord_x3(441)); yValues.push_back(PxToCoord_y3(709)); + xValues.push_back(PxToCoord_x3(468)); yValues.push_back(PxToCoord_y3(719)); + xValues.push_back(PxToCoord_x3(435)); yValues.push_back(PxToCoord_y3(681)); + xValues.push_back(PxToCoord_x3(460)); yValues.push_back(PxToCoord_y3(673)); + xValues.push_back(PxToCoord_x3(476)); yValues.push_back(PxToCoord_y3(672)); + xValues.push_back(PxToCoord_x3(497)); yValues.push_back(PxToCoord_y3(693)); + xValues.push_back(PxToCoord_x3(548)); yValues.push_back(PxToCoord_y3(687)); + xValues.push_back(PxToCoord_x3(594)); yValues.push_back(PxToCoord_y3(680)); +*/ } inline void evaluateGlobal(const typename Traits::DomainType & x, typename Traits::RangeType & y) const diff --git a/dune/phasefield/localoperator/fem_fs_chns_driven_thinplateflow.hh b/dune/phasefield/localoperator/fem_fs_chns_driven_thinplateflow.hh new file mode 100644 index 0000000000000000000000000000000000000000..ef04bc23e3351dda23097398a1d1996964daeba9 --- /dev/null +++ b/dune/phasefield/localoperator/fem_fs_chns_driven_thinplateflow.hh @@ -0,0 +1,130 @@ +#pragma once + +#include<dune/pdelab/common/quadraturerules.hh> +#include<dune/pdelab/finiteelement/localbasiscache.hh> +//#include<dune/pdelab/localoperator/idefault.hh> +#include<dune/pdelab/localoperator/defaultimp.hh> +#include<dune/pdelab/localoperator/pattern.hh> +#include<dune/pdelab/localoperator/flags.hh> +#include<dune/pdelab/localoperator/variablefactories.hh> +#include<dune/pdelab/gridfunctionspace/gridfunctionspace.hh> + +#include<dune/phasefield/localoperator/fem_base_chns.hh> + + + +template<typename Param, typename CHGFS, typename CHContainer, typename NSGFS, typename NSContainer> + class FEM_FS_CHNS_Driven_ThinPlateFlow : + public Dune::PDELab::FullVolumePattern, + public Dune::PDELab::LocalOperatorDefaultFlags, + public Dune::PDELab::NumericalJacobianVolume<FEM_FS_CHNS_Driven_ThinPlateFlow<Param, CHGFS, CHContainer, NSGFS, NSContainer> >, + public Dune::PDELab::NumericalJacobianApplyVolume<FEM_FS_CHNS_Driven_ThinPlateFlow<Param, CHGFS, CHContainer, NSGFS, NSContainer> > + { + private: + typedef typename CHContainer::field_type RF; + typedef typename NSGFS::Traits::GridViewType::template Codim<0>::Entity ENTITY; + + CHLocalBasisCache<CHGFS> chCache; + VLocalBasisCache<NSGFS> vCache; + PLocalBasisCache<NSGFS> pCache; + + typedef GFS_LocalViewer<CHGFS, CHContainer, ENTITY, RF> CHLView; + mutable CHLView chLocal; + //mutable CHLView chOldLocal; + + typedef GFS_LocalViewer<NSGFS, NSContainer, ENTITY, RF> NSLView; + mutable NSLView nsOldLocal; + + Param& param; // parameter functions + + + public: + //! Boundary condition indicator type + // using BC = StokesBoundaryCondition; // ?? + + +// static const bool navier = P::assemble_navier; +// static const bool full_tensor = P::assemble_full_tensor; + + // pattern assembly flags + enum { doPatternVolume = true }; + + // residual assembly flags + enum { doAlphaVolume = true }; + //enum { doLambdaVolume = true }; + + //TODO enum { doLambdaBoundary = true }; + + + FEM_FS_CHNS_Driven_ThinPlateFlow (Param& param_, CHGFS& chGfs_, CHContainer& chV_, + NSGFS& nsGfs_, NSContainer& nsVOld_) : + chLocal(chGfs_,chV_), + //chOldLocal(chGfs_,chVOld_), + nsOldLocal(nsGfs_,nsVOld_), + param(param_) + { + } + + + template<typename EG, typename LFSU, typename X, typename LFSV, typename R> + void alpha_volume (const EG& eg, const LFSU& lfsu, const X& x, const LFSV& lfsv, R& r) const + { + //Quadrature Rule + const int dim = EG::Entity::dimension; + const int order = 5; //TODO: Choose more educated + auto rule = Dune::PDELab::quadratureRule(eg.geometry(), order); + + chLocal.DoEvaluation(eg); + //chOldLocal.DoEvaluation(eg); + nsOldLocal.DoSubEvaluation(eg,child(nsOldLocal.lfs,Dune::Indices::_0)); + + for(const auto& ip : rule) + { + const auto S = eg.geometry().jacobianInverseTransposed(ip.position()); + auto factor = ip.weight()*eg.geometry().integrationElement(ip.position()); + + CHVariables<RF,dim,decltype(chLocal.lfs)> ch(chCache, ip.position(), chLocal.lfs, chLocal.lv, S); + NSVariables_P_VOld_Extension<RF,dim,LFSV> ns(vCache, pCache, ip.position(), lfsv, x.base(), nsOldLocal.lv, S); + + Dune::FieldVector<RF, dim> xgradient(0.0); + xgradient[0] = 1000*0.353/0.684; + + RF rho_f=param.phys.rho_1*ch.pf; + RF rho_f_reg= rho_f + param.delta; + + RF pf_f = ch.pf + 2*param.delta*(1-ch.pf) ; + Dune::FieldVector<RF,dim> gradpf_f(0.0); + gradpf_f.axpy((1-2*param.delta),ch.gradpf); + + RF mu_reg = pf_f*param.phys.mu; + + for (size_t i=0; i<ns.pspace.size(); i++) + { + //r.accumulate(pspace,i, -1.0* pf_f*(v*gradphi[i][0])*factor); + r.accumulate(ns.pspace,i, -1.0 * (pf_f*ns.div_v + (gradpf_f*ns.v) )* ns.pbasis.phi[i] * factor); + } + + for (size_t i=0; i<ns.vfemspace.size(); i++) + { + for(int k=0; k<dim; k++) + { + //SIMPLIFY S=0, TODO: Implement this correctly + r.accumulate(child(ns.vspace,k),i, ( rho_f_reg*(ns.v[k]-ns.vOld[k])*ns.vbasis.phi[i]/param.time.dt //TimeEvolution + //- ns.p * (pf_f*ns.vbasis.gradphi[i][0][k] + ns.vbasis.phi[i]*gradpf_f[k]) //Pressure in weak form + + pf_f * ((ns.gradp[k] -xgradient[k])* ns.vbasis.phi[i]) //Pressure in strong form + + mu_reg * (ns.jacv[k]*ns.vbasis.gradphi[i][0]) //Viscosity + + param.vDis.eval(pf_f)*ns.v[k]*ns.vbasis.phi[i] //Velocity Dissipation in Solid + //- rho*g[k]*vphi[i] //Gravitation + //+ S //Surface Tension + //+ Reaction TODO + + mu_reg * 8 / (param.CellHeight * param.CellHeight) * ns.v[k]*ns.vbasis.phi[i] //Drag from bottom and top plate + )*factor); + // integrate (grad u)^T * grad phi_i //Transpose for Viscosity + for(int dd=0; dd<dim; ++dd) + r.accumulate(child(ns.vspace,k),i, param.phys.mu * (ns.jacv[dd][k] * (ns.vbasis.gradphi[i][0][dd])) * factor); + } + } + } + } + + }; diff --git a/dune/phasefield/localoperator/fem_fs_chns_u_only.hh b/dune/phasefield/localoperator/fem_fs_chns_u_only.hh new file mode 100644 index 0000000000000000000000000000000000000000..c1fca5a1f23068004682037b02ad9cef123ed6ba --- /dev/null +++ b/dune/phasefield/localoperator/fem_fs_chns_u_only.hh @@ -0,0 +1,110 @@ +#pragma once + +#include<dune/pdelab/common/quadraturerules.hh> +#include<dune/pdelab/finiteelement/localbasiscache.hh> +#include<dune/pdelab/localoperator/defaultimp.hh> +#include<dune/pdelab/localoperator/pattern.hh> +#include<dune/pdelab/localoperator/flags.hh> +#include<dune/pdelab/localoperator/variablefactories.hh> +#include<dune/pdelab/gridfunctionspace/gridfunctionspace.hh> + +#include<dune/phasefield/localoperator/fem_base_chns.hh> + + +//Parameter class (for functions), FEM space and RangeField +template<typename Param, typename CHGFS, typename CHContainer, typename NSGFS, typename NSContainer> +class FEM_FS_CHNS_U_Only : + public Dune::PDELab::FullVolumePattern, + public Dune::PDELab::LocalOperatorDefaultFlags, + public Dune::PDELab::NumericalJacobianVolume<FEM_FS_CHNS_U_Only<Param, CHGFS, CHContainer, NSGFS, NSContainer> >, + public Dune::PDELab::NumericalJacobianApplyVolume<FEM_FS_CHNS_U_Only<Param, CHGFS, CHContainer, NSGFS, NSContainer> > + { +private: + typedef typename CHContainer::field_type RF; + typedef typename CHGFS::Traits::GridViewType::template Codim<0>::Entity ENTITY; + + CHLocalBasisCache<CHGFS> chCache; + VLocalBasisCache<NSGFS> vCache; + + typedef GFS_LocalViewer<CHGFS, CHContainer, ENTITY, RF> CHLView; + mutable CHLView chOldLocal; + + typedef GFS_LocalViewer<NSGFS, NSContainer, ENTITY, RF> NSLView; + mutable NSLView nsLocal; + + + Param& param; // parameter functions + +public: + enum {doPatternVolume=true}; + enum {doAlphaVolume=true}; + + //constructor + FEM_FS_CHNS_U_Only(Param& param_, CHGFS& chGfs_, CHContainer& chVOld_, NSGFS& nsGfs_, NSContainer& nsV) : + chOldLocal(chGfs_,chVOld_), + nsLocal(nsGfs_,nsV), + param(param_) + { + } + + + template<typename EG, typename LFSU, typename X, typename LFSV, typename R> + void alpha_volume (const EG& eg, const LFSU& lfsu, const X& x, const LFSV& lfsv, R& r) const + { + //Quadrature Rule + const int dim = EG::Entity::dimension; + const int order = 5; //TODO: Choose more educated + auto rule = Dune::PDELab::quadratureRule(eg.geometry(), order); + + chOldLocal.DoEvaluation(eg); + //chOldLocal.DoEvaluation(eg); + nsLocal.DoSubEvaluation(eg,child(nsLocal.lfs,Dune::Indices::_0)); + + for(const auto& ip : rule) + { + const auto S = eg.geometry().jacobianInverseTransposed(ip.position()); + auto factor = ip.weight()*eg.geometry().integrationElement(ip.position()); + + CHVariables_U_PFOld_Extension<RF,dim,LFSV> ch(chCache, ip.position(), lfsv, x.base(),chOldLocal.lv, S); + NSVariables<RF,dim,decltype(nsLocal.lfs)> ns(vCache, ip.position(), nsLocal.lfs, nsLocal.lv, S); + + RF pf_c = ch.pf; + RF pf_f = ch.pf + 2*param.delta*(1-ch.pf); + Dune::FieldVector<RF,dim> gradpf_f(0.0); + gradpf_f.axpy((1-2*param.delta),ch.gradpf); + + RF pf_c_Old = ch.pfOld; + RF pf_c_reg = pf_c+param.delta; + RF pf_c_reg_Old = pf_c_Old + param.delta; + + for (size_t i=0; i<ch.pfspace.size(); i++) + { + RF Rspeed = param.dw.eval_q((ch.pfOld-0.05)/0.7)/0.7; + RF R1 = -Rspeed/param.eps* + (param.reaction.eval(ch.u)+param.phys.curvatureAlpha*ch.xi)*ch.basis.phi[i]; //TODO Scale with sigma13 + + // integrate: (pf-pfold)*phi_i/delta_t + gradpf * grad phi_i + ... + r.accumulate(ch.pfspace,i,factor*( + (ch.pf-ch.pfOld)*ch.basis.phi[i]/param.time.dt + )); + + r.accumulate(ch.xispace,i,factor*( + (ch.xi-0)*ch.basis.phi[i] + )); + + + // integrate (pf-pfold)*(u-uast)*phi_i/delta_t + pfold*(u-uold)*phi_i/delta_t + D*pf*gradu*grad phi_i = 0 + r.accumulate(ch.uspace,i,factor*( + + //(u-param.uAst)*phi[i]/param.dt //For Testing + + R1 *(ch.u-param.phys.uAst) + + pf_c_reg_Old*(ch.u-ch.uOld)*ch.basis.phi[i]/param.time.dt + + param.phys.D*pf_c_reg_Old*(ch.gradu*ch.basis.gradphi[i][0]) + + ( pf_f*(ns.v*ch.gradu) )*ch.basis.phi[i] + - pf_c_reg*param.reaction.eval_bulkreaction()*ch.basis.phi[i]//Bulk reaction + )); + } + } + } +}; diff --git a/headercheck/src/paper_thinstrip_mixed/driver_mixed.hh.cc b/headercheck/src/paper_thinstrip_mixed/driver_mixed.hh.cc new file mode 100644 index 0000000000000000000000000000000000000000..80b3fb6d27750537153485b266bc41f5872f115b --- /dev/null +++ b/headercheck/src/paper_thinstrip_mixed/driver_mixed.hh.cc @@ -0,0 +1,6 @@ +#ifdef HAVE_CONFIG_H +#include<config.h> +#endif +#include<driver_mixed.hh> +#include<driver_mixed.hh> +int main(){return 0;} \ No newline at end of file diff --git a/headercheck/src/paper_thinstrip_mixed/tmixed_boundary.hh.cc b/headercheck/src/paper_thinstrip_mixed/tmixed_boundary.hh.cc new file mode 100644 index 0000000000000000000000000000000000000000..71573143410230dfcfc450697bab9afd01a22d3e --- /dev/null +++ b/headercheck/src/paper_thinstrip_mixed/tmixed_boundary.hh.cc @@ -0,0 +1,6 @@ +#ifdef HAVE_CONFIG_H +#include<config.h> +#endif +#include<tmixed_boundary.hh> +#include<tmixed_boundary.hh> +int main(){return 0;} \ No newline at end of file diff --git a/headercheck/src/summerschool_inflow/2p_driver.hh.cc b/headercheck/src/summerschool_inflow/2p_driver.hh.cc new file mode 100644 index 0000000000000000000000000000000000000000..9df9ac7e090479252e4a55ae9ef820dc3ab4532c --- /dev/null +++ b/headercheck/src/summerschool_inflow/2p_driver.hh.cc @@ -0,0 +1,6 @@ +#ifdef HAVE_CONFIG_H +#include<config.h> +#endif +#include<2p_driver.hh> +#include<2p_driver.hh> +int main(){return 0;} \ No newline at end of file diff --git a/headercheck/src/summerschool_inflow/boundary_summerschool.hh.cc b/headercheck/src/summerschool_inflow/boundary_summerschool.hh.cc new file mode 100644 index 0000000000000000000000000000000000000000..ac476be3228647200ce70449b64378cc0c50e560 --- /dev/null +++ b/headercheck/src/summerschool_inflow/boundary_summerschool.hh.cc @@ -0,0 +1,6 @@ +#ifdef HAVE_CONFIG_H +#include<config.h> +#endif +#include<boundary_summerschool.hh> +#include<boundary_summerschool.hh> +int main(){return 0;} \ No newline at end of file diff --git a/headercheck/src/summerschool_inflow/summerschool_timestepmanager.hh.cc b/headercheck/src/summerschool_inflow/summerschool_timestepmanager.hh.cc new file mode 100644 index 0000000000000000000000000000000000000000..0b6da15aec314a88c2251e5e898eb942387acce3 --- /dev/null +++ b/headercheck/src/summerschool_inflow/summerschool_timestepmanager.hh.cc @@ -0,0 +1,6 @@ +#ifdef HAVE_CONFIG_H +#include<config.h> +#endif +#include<summerschool_timestepmanager.hh> +#include<summerschool_timestepmanager.hh> +int main(){return 0;} \ No newline at end of file diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 759c3bbb7242f8fef36a494b381b3f362265c3d3..2fce0700447e78837b550cfd06e1a5912c2ef776 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -13,3 +13,4 @@ add_subdirectory(example_cahnhilliard) add_subdirectory(example_nucleus) add_subdirectory(paper_thinstrip_full) add_subdirectory(paper_thinstrip_mixed) +add_subdirectory(summerschool_inflow) diff --git a/src/paper_thinstrip_mixed/chns.ini b/src/paper_thinstrip_mixed/chns.ini index c24a05141789bd577e53ae91f682263171147a84..b46a925ae4b6588c92bab0b16a75138119b1b500 100644 --- a/src/paper_thinstrip_mixed/chns.ini +++ b/src/paper_thinstrip_mixed/chns.ini @@ -12,7 +12,7 @@ CurvatureAlpha=0.001 [domain] level = 0 -#filename = grids/rectangle_periodic_coarse.msh +filename = grids/rectangle_periodic_coarse.msh #YScalingFactor = 0.5 YScaling = 0.5 YResolution = 100 @@ -31,7 +31,7 @@ Sigma2=1 Sigma3=1 [Time] -tMax = 30 +tMax = 1 dt = 0.015 dtMax = 0.15 dtMin = 0.0015 diff --git a/src/paper_thinstrip_mixed/driver_mixed.hh b/src/paper_thinstrip_mixed/driver_mixed.hh index f97951e52bc41bb17c8657357db5676e718a28a3..4c2c685c489f3fa3b6d662cb6d2a97b4b7ec8df4 100644 --- a/src/paper_thinstrip_mixed/driver_mixed.hh +++ b/src/paper_thinstrip_mixed/driver_mixed.hh @@ -4,12 +4,13 @@ #include<sys/stat.h> // C++ includes #include<iostream> +#include<vector> // Dune includes #include<dune/grid/io/file/vtk.hh> #include<dune/pdelab/newton/newton.hh> -//#include "thinstrip_full_chns_r_cahnhilliard.hh" -//#include "thinstrip_full_chns_navierstokes.hh" +#include "tmixed_chns_r_cahnhilliard.hh" +#include "tmixed_chns_navierstokes.hh" #include <dune/phasefield/localoperator/pf_3p_diff_estimator.hh> #include <dune/phasefield/utility/ISTLBackend_NOVLP_BASE_PREC_FOR_GMRES.hh> @@ -17,23 +18,127 @@ #include "tmixed_parameters.hh" #include "tmixed_boundary.hh" #include <dune/phasefield/chns_base.hh> -#include <dune/phasefield/ffs_chns_r.hh> +#include "micro_space.hh" #include <dune/phasefield/initial_fn.hh> #include <dune/phasefield/debug/vector_debug.hh> +template<typename GV, typename GFS, typename Parameters> +class YSlice{ +public: + typedef double RF; + + + typedef typename GFS::NS NS_GFS; + typedef typename GFS::CH CH_GFS; + typedef Dune::PDELab::Backend::Vector<CH_GFS, RF> CH_V; + typedef Dune::PDELab::Backend::Vector<NS_GFS, RF> NS_V; + + typedef Ini_micro< ZeroInitial<GV,RF,Parameters>, //VX + ZeroInitial<GV,RF,Parameters>, //VY + PhiInitial_Thinstrip_Layers<GV,RF,Parameters,0>, + ZeroInitial<GV,RF,Parameters>, + PhiInitial_Thinstrip_Layers<GV,RF,Parameters,1>, + ZeroInitial<GV,RF,Parameters>> Initial; + + typedef TMIXED_CHNS_NavierStokes<Parameters, CH_GFS, CH_V, NS_GFS, NS_V> NS_LOP; + typedef TMIXED_CHNS_R_CahnHilliard<Parameters, CH_GFS, CH_V, NS_GFS, NS_V> CH_LOP; + typedef Dune::PDELab::ISTL::BCRSMatrixBackend<> MBE; + + typedef DGF_micro<GFS, NS_V, CH_V> DgfMicro; + + typedef Dune::PDELab::GridOperator<NS_GFS,NS_GFS,NS_LOP,MBE,RF,RF,RF,typename GFS::NS_CC,typename GFS::NS_CC> NS_GO; + typedef Dune::PDELab::GridOperator<CH_GFS,CH_GFS,CH_LOP,MBE,RF,RF,RF,typename GFS::CH_CC,typename GFS::CH_CC> CH_GO; + + typedef ISTLBackend_NOVLP_BASE_PREC_FOR_GMRES<CH_GO, Dune::SeqILU0, Dune::RestartedGMResSolver> CH_LS; + typedef ISTLBackend_NOVLP_BASE_PREC_FOR_GMRES<NS_GO, Dune::SeqILU0, Dune::RestartedGMResSolver> NS_LS; + + typedef Dune::PDELab::Newton<NS_GO,NS_LS,NS_V> NS_Newton; + typedef Dune::PDELab::Newton<CH_GO,CH_LS,CH_V> CH_Newton; + + CH_V chV, chVOld, chVUpwind; + NS_V nsV, nsVOld, nsVUpwind; + Initial initial; + + RF xpos; + RF dxp = 1; + RF dxpUpwind = 1; + MBE mbe; + + std::unique_ptr<NS_LOP> nsLop; + std::unique_ptr<CH_LOP> chLop; + std::unique_ptr<DgfMicro> dgfMicro; + std::unique_ptr<NS_GO> nsGo; + std::unique_ptr<CH_GO> chGo; + std::unique_ptr<NS_LS> nsLs; + std::unique_ptr<CH_LS> chLs; + std::unique_ptr<NS_Newton> nsNewton; + std::unique_ptr<CH_Newton> chNewton; + + YSlice(GV& gv, GFS& gfs, Parameters& param, RF xpos_) : + chV(gfs.ch), nsV(gfs.ns), chVOld(gfs.ch), nsVOld(gfs.ns), chVUpwind(gfs.ch), nsVUpwind(gfs.ns), + initial(gv,param), xpos(xpos_), mbe(10) + { + param.TempXpos = xpos; + Dune::PDELab::interpolate(initial.iniCH , gfs.ch, chV); + Dune::PDELab::interpolate(initial.iniNS , gfs.ns, nsV); + + chVOld = chV; + nsVOld = nsV; + chVUpwind = chV; + nsVUpwind = nsV; + + //Local Operator + nsLop = std::make_unique<NS_LOP>(param, gfs.ch, chV, gfs.ns); + chLop = std::make_unique<CH_LOP>(param, gfs.ch, chVOld, chVUpwind, gfs.ns, nsV, nsVUpwind, dxp, dxpUpwind); + + dgfMicro = std::make_unique<DgfMicro>(gfs,nsV,chV); + +// From here on each timestep (if grid changes) + //Grid Operator + nsGo = std::make_unique<NS_GO>(gfs.ns,gfs.nsCC,gfs.ns,gfs.nsCC,*nsLop,mbe); + chGo = std::make_unique<CH_GO>(gfs.ch,gfs.chCC,gfs.ch,gfs.chCC,*chLop,mbe); + // Linear solver + chLs = std::make_unique<CH_LS>(*chGo,500,100,3,1); + nsLs = std::make_unique<NS_LS>(*nsGo,1000,200,3,1); + // Nonlinear solver + + nsNewton = std::make_unique<NS_Newton>(*nsGo,nsV,*nsLs); + nsNewton->setParameters(param.nsNewtonTree); + + chNewton = std::make_unique<CH_Newton>(*chGo,chV,*chLs); + chNewton->setParameters(param.chNewtonTree); + + printVector(chV,10,"chV"); + printVector(nsV,10,"nsV"); + } + + void applyTimestep() + { + int verb = 2; + if (verb > 1) std::cout << "= Begin newtonapply NS:" << std::endl; + nsNewton->apply(); + + if (verb > 1) std::cout << "= Begin newtonapply CH:" << std::endl; + chNewton->apply(); + + chVOld = chV; + nsVOld = nsV; + } +}; + //_________________________________________________________________________________________________________________________ -template<typename GV, typename ES, typename V_FEM, typename P_FEM, typename PHI_FEM> -void driver_mixed(GV& xgv, GV& ygv, ES& y_es, const V_FEM& vFem, const P_FEM pFem, const PHI_FEM& phiFem, Dune::ParameterTree& ptree, Dune::MPIHelper& helper) +template<typename GV, typename ES, typename TGV, typename T_FEM, typename V_FEM, typename P_FEM, typename PHI_FEM> +void driver_mixed(GV& xgv, int xsize, GV& ygv, ES& y_es, TGV& tgv, const T_FEM& tFem, const V_FEM& vFem, const P_FEM pFem, const PHI_FEM& phiFem, Dune::ParameterTree& ptree, Dune::MPIHelper& helper) { const int dim = GV::dimension; typedef double RF; - typedef Params_thinstrip< RF, + typedef Params_tmixed< RF, //TripleWell<RF,DoubleWell_limited< RF, DoubleWell_poly<RF>, Limiter_FakeDiverging<RF> > >, TripleWell<RF,DoubleWell_limited< RF, DoubleWell_8th_order_poly<RF>, Limiter_FakeDiverging<RF> > >, Mobility_Const<RF>, @@ -47,15 +152,56 @@ void driver_mixed(GV& xgv, GV& ygv, ES& y_es, const V_FEM& vFem, const P_FEM pFe // Make grid function spaces - typedef GFS_ffs_chns_r<RF, ES, V_FEM, P_FEM, PHI_FEM, PHI_FEM> GFS; - GFS gfs(es,vFem,pFem,phiFem,phiFem); - typedef typename GFS::NS NS_GFS; - typedef typename GFS::CH CH_GFS; + typedef GFS_micro<RF, ES, V_FEM, PHI_FEM> GFS; + GFS gfs(y_es,vFem,phiFem); + + typedef YSlice<GV, GFS, Parameters> YSim; + typedef std::vector<YSim> YSimS; + YSimS ySimS; + ySimS.reserve(xsize); + for(int i=0; i<xsize; i++) + { + ySimS.emplace_back(ygv, gfs, param, ((RF)i)/xsize); + } + //_________________________________________________________________________________________________________________________ + // prepare VTK writer + std::string filename=ptree.get("output.filename","output"); + struct stat st; + if( stat( filename.c_str(), &st ) != 0 ) + { + int stat = 0; + stat = mkdir(filename.c_str(),S_IRWXU|S_IRWXG|S_IRWXO); + if( stat != 0 && stat != -1) + std::cout << "Error: Cannot create directory " << filename << std::endl; + } + auto stationaryvtkwriter = std::make_shared<Dune::SubsamplingVTKWriter<TGV> >(tgv,0); + Dune::VTKSequenceWriter<TGV> vtkwriter(stationaryvtkwriter,filename.c_str(),filename.c_str(),""); + + DGF_macro<RF, GV, TGV, YSimS, Dune::VTKSequenceWriter<TGV>> dgfMacro(ygv, xsize,tgv,ySimS,vtkwriter); + + + + + + while (!timestepManager.isFinished()) + { + for(int i=1; i<xsize; i++) + { + ySimS[i].chVUpwind = ySimS[i-1].chV; + ySimS[i].nsVUpwind = ySimS[i-1].nsV; + } + for(int i=0; i<3; i++) + { + ySimS[i].applyTimestep(); + } + timestepManager.applyTimestep(); + } + //_________________________________________________________________________________________________________________________ //Constraints - + /*typedef DomainSize<RF> DS; DS dS(0,param.YScaling,0,2,1e-8); typedef Bdry_ffs_chns_r_compositeV_2d_Explicit_Domain< @@ -74,14 +220,25 @@ void driver_mixed(GV& xgv, GV& ygv, ES& y_es, const V_FEM& vFem, const P_FEM pFe //_________________________________________________________________________________________________________________________ //Coefficient vectors - using CH_V = Dune::PDELab::Backend::Vector<CH_GFS, RF>; + /*using CH_V = Dune::PDELab::Backend::Vector<CH_GFS, RF>; using NS_V = Dune::PDELab::Backend::Vector<NS_GFS, RF>; - CH_V chV(gfs.ch); - NS_V nsV(gfs.ns); + using CH_VS = std::vector<CH_V*>; + using NS_VS = std::vector<NS_V*>; + CH_VS chVS(xsize,NULL); + NS_VS nsVS(xsize,NULL); + for(int i=0; i<xsize; i++) + { + chVS[i] = new CH_V(gfs.ch); + nsVS[i] = new NS_V(gfs.ns); + }*/ + + //CH_V chV(gfs.ch); + //NS_V nsV(gfs.ns); //_________________________________________________________________________________________________________________________ //Initial Values +/* typedef Ini_ffs_chns_r< VelocityInitial_InOutFlow<GV,RF,Parameters,dim>, PInitial_InOutFlow<GV,RF,Parameters>, PhiInitial_Thinstrip_Layers<GV,RF,Parameters,0>, @@ -89,13 +246,16 @@ void driver_mixed(GV& xgv, GV& ygv, ES& y_es, const V_FEM& vFem, const P_FEM pFe PhiInitial_Thinstrip_Layers<GV,RF,Parameters,1>, ZeroInitial<GV,RF,Parameters>, UInitial_Inflow<GV,RF,Parameters> > Initial; - Initial initial(gv,param); - Dune::PDELab::interpolate(initial.iniCH , gfs.ch, chV); - Dune::PDELab::interpolate(initial.iniNS , gfs.ns, nsV); - + Initial initial(ygv,param); + for(int i=0; i<xsize; i++) + { + Dune::PDELab::interpolate(initial.iniCH , gfs.ch, *chVS[i]); + Dune::PDELab::interpolate(initial.iniNS , gfs.ns, *nsVS[i]); + } +*/ //_________________________________________________________________________________________________________________________ // Refine Intial Values - for(int i=0; i<ptree.get("Refinement.maxRefineLevel",2); i++) +/* for(int i=0; i<ptree.get("Refinement.maxRefineLevel",2); i++) { // mark elements for refinement typedef RefinementIndicator<GV,RF,PF_3P_DIFF_ESTIMATOR<CH_GFS>,CH_GFS> RIND0; @@ -110,23 +270,45 @@ void driver_mixed(GV& xgv, GV& ygv, ES& y_es, const V_FEM& vFem, const P_FEM pFe gfs.updateConstraintsContainer(bdry); interpolateToBdry(gfs,initial.iniNS,initial.iniCH,nsV,chV); +*/ - CH_V chVOld = chV; - NS_V nsVOld = nsV; - +/* CH_VS chVSOld(xsize,NULL); + NS_VS nsVSOld(xsize,NULL); + for(int i=0; i<xsize; i++) + { + chVSOld[i] = new CH_V(gfs.ch); + *chVSOld[i] = *chVS[i]; + nsVSOld[i] = new NS_V(gfs.ns); + *nsVSOld[i] = *nsVS[i]; + } +*/ //_________________________________________________________________________________________________________________________ // LocalOperators - typedef THINSTRIP_FULL_CHNS_NavierStokes<Parameters, CH_GFS, CH_V, NS_GFS, NS_V> NS_LOP; +/* typedef THINSTRIP_FULL_CHNS_NavierStokes<Parameters, CH_GFS, CH_V, NS_GFS, NS_V> NS_LOP; + //typedef NS_LOP_S std::vector<NS_LOP*>; NS_LOP nsLop(param, gfs.ch, chV, chVOld, gfs.ns, nsVOld); + //NS_LOP_S nsLopS(xsize,NULL); typedef THINSTRIP_FULL_CHNS_R_CahnHilliard<Parameters, CH_GFS, CH_V, NS_GFS, NS_V> CH_LOP; + //typedef ch_LOP_S std::vector<ch_LOP*>; CH_LOP chLop(param, gfs.ch, chVOld, gfs.ns, nsV); + //CH_LOP_S chLopS(xsize,NULL); + + for(int i=0; i<xsize; i++) + { + chVSOld[i] = new CH_V(gfs.ch); + *chVSOld[i] = *chVS[i]; + nsVSOld[i] = new NS_V(gfs.ns); + *nsVSOld[i] = *nsVS[i]; + } typedef Dune::PDELab::ISTL::BCRSMatrixBackend<> MBE; MBE mbe(10);// Maximal number of nonzeroes per row can be cross-checked by patternStatistics(). +*/ +/* //_________________________________________________________________________________________________________________________ // Construct discrete Grid Functions typedef DGF_ffs_chns_r<GFS, NS_V, CH_V> DGF; @@ -152,16 +334,16 @@ void driver_mixed(GV& xgv, GV& ygv, ES& y_es, const V_FEM& vFem, const P_FEM pFe //_________________________________________________________________________________________________________________________ printVector(chV,10,"chV"); printVector(nsV,10,"nsV"); - +*/ //____________________________________________________________________________________________________________________ //int i_it=0; - chVOld = chV; - nsVOld = nsV; - while (!timestepManager.isFinished()) - { +// chVOld = chV; +// nsVOld = nsV; +// while (!timestepManager.isFinished()) +// { - // Grid Operators +/* // Grid Operators typedef Dune::PDELab::GridOperator<NS_GFS,NS_GFS,NS_LOP,MBE,RF,RF,RF,typename GFS::NS_CC,typename GFS::NS_CC> NS_GO; NS_GO nsGo(gfs.ns,gfs.nsCC,gfs.ns,gfs.nsCC,nsLop,mbe); @@ -183,11 +365,11 @@ void driver_mixed(GV& xgv, GV& ygv, ES& y_es, const V_FEM& vFem, const P_FEM pFe typedef Dune::PDELab::Newton<CH_GO,CH_LS,CH_V> PDESolver2; PDESolver2 ch_newton(chGo,chV,ls_ch); ch_newton.setParameters(ptree.sub("Phasefield_Newton")); - +*/ //_________________________________________________________________________________________________________________________ // do time step - +/* interpolateToBdry(gfs,initial.iniNS,initial.iniCH, nsV, chV); int result = timestepManager.doTimestep(ns_newton,ch_newton,vtkwriter); @@ -225,5 +407,8 @@ void driver_mixed(GV& xgv, GV& ygv, ES& y_es, const V_FEM& vFem, const P_FEM pFe //vtkwriter.write(timestepManager.t+2e-6,Dune::VTK::ascii); - } + +*/ + +// } } diff --git a/src/paper_thinstrip_mixed/fem_base_micro.hh b/src/paper_thinstrip_mixed/fem_base_micro.hh new file mode 100644 index 0000000000000000000000000000000000000000..c2ad7c5bca604b3e8c6eaf8e623c9151454dcc5b --- /dev/null +++ b/src/paper_thinstrip_mixed/fem_base_micro.hh @@ -0,0 +1,63 @@ +#pragma once + +#include<dune/phasefield/localoperator/fem_base_chns.hh> + +template<typename RF, const int dim, typename CHLFS> +class CHVariables_Threephase_Micro_Extension : public CHVariables_Threephase_Extension<RF,dim,CHLFS> +{ +public: + + const typename CHLFS::template Child<4>::Type& vyspace; + + RF vy; + Dune::FieldVector<RF,dim> gradvy; + + + template<typename Pos, typename Cache, typename LV, typename S> + CHVariables_Threephase_Micro_Extension(const Cache& cache, + const Pos& position, const CHLFS& chLfs, const LV& lv, S& s) : + CHVariables_Threephase_Extension<RF,dim,CHLFS>(cache, position, chLfs, lv, s), + vyspace(child(chLfs,Dune::Indices::_4)), + vy(0.0), + gradvy(0.0) + { + for (size_t i=0; i<this->pfspace.size(); i++) + { + vy += lv[vyspace.localIndex(i)]*this->basis.phi[i]; + gradvy.axpy(lv[vyspace.localIndex(i)],this->basis.gradphi[i][0]); + } + } +}; + + +//_________________________________________________________________________________________________________________________ + +template<typename RF, const int dim, typename NSLFS> +class NSMicroVariables +{ +public: + const typename NSLFS::template Child<0>::Type& vxspace; + BasisFN<typename NSLFS::template Child<0>::Type> vbasis; + + RF vx; + Dune::FieldVector<RF,dim> gradvx; + + template<typename Pos, typename vCache, typename LV, typename S> + NSMicroVariables(const vCache& vcache, const Pos& position, const NSLFS& nsLfs, const LV& lv, S& s) : + vxspace(child(nsLfs,Dune::Indices::_0)), + vbasis(vcache, position, vxspace, s), + vx(0.0), + gradvx(0.0) + { + for (size_t i=0; i<this->vxspace.size(); i++) + { + vx += lv[vxspace.localIndex(i)]*vbasis.phi[i]; + gradvx.axpy(lv[vxspace.localIndex(i)],vbasis.gradphi[i][0]); + } + } +}; + + +template<typename NSGFS> +using Micro_VXLocalBasisCache = + Dune::PDELab::LocalBasisCache<typename NSGFS::template Child<0>::Type::Traits::FiniteElementType::Traits::LocalBasisType>; diff --git a/src/paper_thinstrip_mixed/micro_space.hh b/src/paper_thinstrip_mixed/micro_space.hh new file mode 100644 index 0000000000000000000000000000000000000000..a0dca7f31418d8eaef114d09d68ee218b93ab261 --- /dev/null +++ b/src/paper_thinstrip_mixed/micro_space.hh @@ -0,0 +1,339 @@ +#pragma once + +#include<dune/pdelab/constraints/common/constraints.hh> +#include<dune/pdelab/constraints/conforming.hh> + +#include<dune/pdelab/gridfunctionspace/gridfunctionspace.hh> +#include<dune/pdelab/gridfunctionspace/subspace.hh> +#include<dune/pdelab/gridfunctionspace/vectorgridfunctionspace.hh> +#include<dune/phasefield/utility/pf_3p_color_dgf.hh> + +#include<dune/pdelab/function/callableadapter.hh> +#include <dune/pdelab/common/functionutilities.hh> + + +//_________________________________________________________________________________________________________________________ + + +template<typename RF, typename ES, typename V_FEM, typename PHI_FEM> +class GFS_micro +{ +public: + typedef Dune::PDELab::ConformingDirichletConstraints ConstraintsAssembler; + typedef Dune::PDELab::ISTL::VectorBackend<> VectorBackend; + typedef Dune::PDELab::ISTL::VectorBackend<Dune::PDELab::ISTL::Blocking::fixed> VB_Block; + typedef Dune::PDELab::LexicographicOrderingTag OrderingTagL; + typedef Dune::PDELab::EntityBlockedOrderingTag OrderingTagB; + + ConstraintsAssembler conphi, conmu; + + typedef Dune::PDELab::GridFunctionSpace<ES, V_FEM, ConstraintsAssembler, VectorBackend> VX_GFS; + VX_GFS vxGfs; + + typedef Dune::PDELab::GridFunctionSpace<ES, V_FEM, ConstraintsAssembler, VectorBackend> VY_GFS; + VY_GFS vyGfs; + + typedef Dune::PDELab::GridFunctionSpace<ES, PHI_FEM, ConstraintsAssembler, VectorBackend> PHI_GFS; + PHI_GFS phiGfs; + + typedef Dune::PDELab::GridFunctionSpace<ES, PHI_FEM, ConstraintsAssembler, VectorBackend> MU_GFS; + MU_GFS muGfs; + + typedef Dune::PDELab::CompositeGridFunctionSpace<VectorBackend, OrderingTagL, VX_GFS> NS; + NS ns; + + typedef Dune::PDELab::CompositeGridFunctionSpace<VB_Block, OrderingTagB, PHI_GFS, MU_GFS, PHI_GFS, MU_GFS, VY_GFS> CH; + CH ch; + + typedef typename NS::template ConstraintsContainer<RF>::Type NS_CC; + NS_CC nsCC; + + typedef typename CH::template ConstraintsContainer<RF>::Type CH_CC; + CH_CC chCC; + + GFS_micro(const ES& es, const V_FEM& vFem, const PHI_FEM& phiFem) : + conphi(),conmu(), + vxGfs(es,vFem), + vyGfs(es,vFem), + phiGfs(es,phiFem, conphi), + muGfs(es,phiFem, conmu), + ns(vxGfs), + ch(phiGfs, muGfs, phiGfs, muGfs, vyGfs), + nsCC(), + chCC() + { + vxGfs.name("Xvelocity"); + vyGfs.name("Yvelocity"); + phiGfs.name("phasefield"); + muGfs.name("potential"); + } + + template<typename Bdry> + void updateConstraintsContainer(const Bdry& bdry) + { + Dune::PDELab::constraints(bdry.bdryNS,ns,nsCC, 0); + Dune::PDELab::constraints(bdry.bdryCH,ch,chCC, 0); + } +}; + +//_________________________________________________________________________________________________________________________ + +template<typename GFS, typename NS_V, typename CH_V> +class DGF_micro +{ +public: + + typedef Dune::PDELab::GridFunctionSubSpace<typename GFS::NS,Dune::TypeTree::TreePath<0> > VXSubGFS; + VXSubGFS vxSubGfs; + typedef Dune::PDELab::DiscreteGridFunction<VXSubGFS,NS_V> VXDGF; + VXDGF vxDgf; + + typedef Dune::PDELab::GridFunctionSubSpace<typename GFS::CH,Dune::TypeTree::TreePath<0> > PhiSubGFS; + PhiSubGFS phiSubGfs; + typedef Dune::PDELab::DiscreteGridFunction<PhiSubGFS,CH_V> PhiDGF; + PhiDGF phiDgf; + + typedef Dune::PDELab::GridFunctionSubSpace<typename GFS::CH,Dune::TypeTree::TreePath<1> > MuSubGFS; + MuSubGFS muSubGfs; + typedef Dune::PDELab::DiscreteGridFunction<MuSubGFS,CH_V> MuDGF; + MuDGF muDgf; + + typedef Dune::PDELab::GridFunctionSubSpace<typename GFS::CH,Dune::TypeTree::TreePath<2> > Phi2SubGFS; + Phi2SubGFS phi2SubGfs; + typedef Dune::PDELab::DiscreteGridFunction<Phi2SubGFS,CH_V> Phi2DGF; + Phi2DGF phi2Dgf; + + typedef Dune::PDELab::GridFunctionSubSpace<typename GFS::CH,Dune::TypeTree::TreePath<3> > Mu2SubGFS; + Mu2SubGFS mu2SubGfs; + typedef Dune::PDELab::DiscreteGridFunction<Mu2SubGFS,CH_V> Mu2DGF; + Mu2DGF mu2Dgf; + + typedef Dune::PDELab::GridFunctionSubSpace<typename GFS::CH,Dune::TypeTree::TreePath<4> > VYSubGFS; + VYSubGFS vySubGfs; + typedef Dune::PDELab::DiscreteGridFunction<VYSubGFS,CH_V> VYDGF; + VYDGF vyDgf; + + typedef PF_3P_Color_DGF<typename GFS::CH,CH_V,3> ColorDGF; + ColorDGF colorDgf; + + + DGF_micro(const GFS& gfs, const NS_V& nsV, const CH_V& chV) : + vxSubGfs(gfs.ns), + vxDgf(vxSubGfs,nsV), + + phiSubGfs(gfs.ch), + phiDgf(phiSubGfs,chV), + muSubGfs(gfs.ch), + muDgf(muSubGfs,chV), + phi2SubGfs(gfs.ch), + phi2Dgf(phi2SubGfs,chV), + mu2SubGfs(gfs.ch), + mu2Dgf(mu2SubGfs,chV), + + vySubGfs(gfs.ch), + vyDgf(vySubGfs,chV), + + colorDgf(gfs.ch,chV) + { + } + +/* template<typename VTKWRITER> + void addToVTKWriter(VTKWRITER& vtkwriter) + { + vtkwriter.addVertexData(std::make_shared<Dune::PDELab::VTKGridFunctionAdapter<VDGF> >(vDgf,"v")); + vtkwriter.addVertexData(std::make_shared<Dune::PDELab::VTKGridFunctionAdapter<PDGF> >(pDgf,"p")); + vtkwriter.addVertexData(std::make_shared<Dune::PDELab::VTKGridFunctionAdapter<PhiDGF> >(phiDgf,"phi")); + vtkwriter.addVertexData(std::make_shared<Dune::PDELab::VTKGridFunctionAdapter<MuDGF> >(muDgf,"mu")); + vtkwriter.addVertexData(std::make_shared<Dune::PDELab::VTKGridFunctionAdapter<Phi2DGF> >(phi2Dgf,"phi2")); + vtkwriter.addVertexData(std::make_shared<Dune::PDELab::VTKGridFunctionAdapter<Mu2DGF> >(mu2Dgf,"mu2")); + vtkwriter.addVertexData(std::make_shared<Dune::PDELab::VTKGridFunctionAdapter<UDGF> >(uDgf,"u")); + vtkwriter.addVertexData(std::make_shared<Dune::PDELab::VTKGridFunctionAdapter<ColorDGF> >(colorDgf,"_coloring_")); + }*/ +}; + +template<typename RF, typename GV, typename TGV, typename YSimS, typename VTKWRITER> +class DGF_macro +{ +public: + //const int xsize; + //int getSimSIndex(RF xglobal) + //{ + // return std::max(0, std::min(1, (int)(xsize*xglobal) )); + //} + const GV& ygv; + const int xs; + YSimS& ySimS; + const TGV& tgv; + + struct Pos{ + int i; + Dune::FieldVector<RF,1> localCoord; + typename GV::Traits::template Codim<0> :: Iterator it; + }; + + Pos FindPosition(const auto& xyglobal) + { + int i = std::max(0, std::min(1, (int)(xs*xyglobal[0]) )); + int j = (int)(xs*xyglobal[1]); + auto it = elements(ygv).begin(); + for(int k=0; k<j; k++){ ++it; } + Dune::FieldVector<RF,1> yglob(xyglobal[1]); + Dune::FieldVector<RF,1> localCoord = it->geometry().local(yglob); + return Pos{i,localCoord,it}; + } + + Dune::FieldVector<RF,1> EvalPhi(const auto& xyglobal) + { + Pos p = FindPosition(xyglobal); + Dune::FieldVector<RF,1> result(0); + ySimS[p.i].dgfMicro->phiDgf.evaluate(*(p.it),p.localCoord,result); + return result; + } + + DGF_macro(const GV& ygv_, const int xs_, const TGV& tgv_, YSimS& ySimS_, VTKWRITER& vtkwriter) + : ygv(ygv_), xs(xs_), ySimS(ySimS_), tgv(tgv_) + { + auto PhiFunction = Dune::PDELab::makeGridFunctionFromCallable (tgv, [&](const auto& xyglobal){ + int i = std::max(0, std::min(1, (int)(xs*xyglobal[0]) )); + int j = (int)(xs*xyglobal[1]); + auto it = elements(ygv).begin(); + for(int k=0; k<j; k++){ ++it; } + Dune::FieldVector<RF,1> yglob(xyglobal[1]); + Dune::FieldVector<RF,1> result(0); + Dune::FieldVector<RF,1> localCoord = it->geometry().local(yglob); + ySimS[i].dgfMicro->phiDgf.evaluate(*it,localCoord,result); + return result; + }); + vtkwriter.addVertexData( + std::make_shared<Dune::PDELab::VTKGridFunctionAdapter<decltype(PhiFunction)> >(PhiFunction,"v")); + vtkwriter.write(0,Dune::VTK::ascii); + } + +/* template<typename VTKWRITER> + void addToVTKWriter(VTKWRITER& vtkwriter) + { + vtkwriter.addVertexData(std::make_shared<Dune::PDELab::VTKGridFunctionAdapter<VDGF> >(vDgf,"v")); + vtkwriter.addVertexData(std::make_shared<Dune::PDELab::VTKGridFunctionAdapter<PDGF> >(pDgf,"p")); + vtkwriter.addVertexData(std::make_shared<Dune::PDELab::VTKGridFunctionAdapter<PhiDGF> >(phiDgf,"phi")); + vtkwriter.addVertexData(std::make_shared<Dune::PDELab::VTKGridFunctionAdapter<MuDGF> >(muDgf,"mu")); + vtkwriter.addVertexData(std::make_shared<Dune::PDELab::VTKGridFunctionAdapter<Phi2DGF> >(phi2Dgf,"phi2")); + vtkwriter.addVertexData(std::make_shared<Dune::PDELab::VTKGridFunctionAdapter<Mu2DGF> >(mu2Dgf,"mu2")); + vtkwriter.addVertexData(std::make_shared<Dune::PDELab::VTKGridFunctionAdapter<UDGF> >(uDgf,"u")); + vtkwriter.addVertexData(std::make_shared<Dune::PDELab::VTKGridFunctionAdapter<ColorDGF> >(colorDgf,"_coloring_")); + }*/ +}; + +//_________________________________________________________________________________________________________________________ + +template<typename IniVX, typename IniVY, typename IniPhi, typename IniMu, typename IniPhi2, typename IniMu2> +class Ini_micro +{ +public: + IniVX iniVx; + IniVY iniVy; + IniPhi iniPhi; + IniMu iniMu; + IniPhi2 iniPhi2; + IniMu2 iniMu2; + typedef Dune::PDELab::CompositeGridFunction<IniVX> IniNS; + typedef Dune::PDELab::CompositeGridFunction<IniPhi,IniMu,IniPhi2,IniMu2,IniVY> IniCH; + IniNS iniNS; + IniCH iniCH; + + template<typename GV, typename Params> + Ini_micro(const GV& gv, const Params& params) : + iniVx(gv, params), + iniVy(gv, params), + iniPhi(gv, params), + iniMu(gv, params), + iniPhi2(gv, params), + iniMu2(gv, params), + iniNS(iniVx), + iniCH(iniPhi,iniMu,iniPhi2,iniMu2,iniVy) + { + } +}; + +//_________________________________________________________________________________________________________________________ + +template<typename BdryVX, typename BdryVY, typename BdryPhi, typename BdryMu, typename BdryPhi2, typename BdryMu2> +class Bdry_micro +{ +public: + BdryVX bdryVx; + BdryVY bdryVy; + BdryPhi bdryPhi; + BdryMu bdryMu; + BdryPhi2 bdryPhi2; + BdryMu2 bdryMu2; + typedef Dune::PDELab::CompositeConstraintsParameters<BdryVX> BdryNS; + typedef Dune::PDELab::CompositeConstraintsParameters<BdryPhi, BdryMu, BdryPhi2, BdryMu2, BdryVY> BdryCH; + BdryNS bdryNS; + BdryCH bdryCH; + + Bdry_micro() : + bdryVx(), + bdryVy(), + bdryPhi(), + bdryMu(), + bdryPhi2(), + bdryMu2(), + bdryNS(bdryVx), + bdryCH(bdryPhi,bdryMu,bdryPhi2,bdryMu2,bdryVy) + { + } +}; + +/*template<typename BdryV1, typename BdryV2, typename BdryP, + typename BdryPhi, typename BdryMu, typename BdryPhi2, typename BdryMu2, typename BdryU> +class Bdry_ffs_chns_r_compositeV_2d_Explicit_Domain +{ +public: + BdryV1 bdryV1; + BdryV2 bdryV2; + BdryP bdryP; + BdryPhi bdryPhi; + BdryMu bdryMu; + BdryPhi2 bdryPhi2; + BdryMu2 bdryMu2; + BdryU bdryU; + typedef Dune::PDELab::CompositeConstraintsParameters<BdryV1,BdryV2> BdryV; + typedef Dune::PDELab::CompositeConstraintsParameters<BdryV, BdryP> BdryNS; + typedef Dune::PDELab::CompositeConstraintsParameters<BdryPhi, BdryMu, BdryPhi2, BdryMu2, BdryU> BdryCH; + BdryV bdryV; + BdryNS bdryNS; + BdryCH bdryCH; + + template<typename DomainSize> + Bdry_ffs_chns_r_compositeV_2d_Explicit_Domain(DomainSize ds) : + bdryV1(ds), + bdryV2(ds), + bdryP(ds), + bdryPhi(ds), + bdryMu(ds), + bdryPhi2(ds), + bdryMu2(ds), + bdryU(ds), + bdryV(bdryV1,bdryV2), + bdryNS(bdryV,bdryP), + bdryCH(bdryPhi,bdryMu,bdryPhi2,bdryMu2,bdryU) + { + } +}; + +template<typename RF> +class DomainSize +{ +public: + const RF bottom; + const RF top; + const RF left; + const RF right; + const RF domainEps; + + DomainSize(RF b, RF t, RF l, RF r, RF eps): + bottom(b), top(t), left(l), right(r), domainEps(eps) + { + } +}; +*/ diff --git a/src/paper_thinstrip_mixed/tmixed_boundary.hh b/src/paper_thinstrip_mixed/tmixed_boundary.hh index e7f453d3d149bc5a8d64ccf7253ce0a156bd93a9..46813392d165f333bcfba405ea2ec9f570183e55 100644 --- a/src/paper_thinstrip_mixed/tmixed_boundary.hh +++ b/src/paper_thinstrip_mixed/tmixed_boundary.hh @@ -148,33 +148,6 @@ public: } }; -template<typename GV, typename RF, typename Params> -class PInitial_InOutFlow : - public Dune::PDELab::AnalyticGridFunctionBase< - Dune::PDELab::AnalyticGridFunctionTraits<GV,RF,1>, PInitial_InOutFlow<GV,RF,Params> > -{ - RF pConst; - RF yS; -public: - typedef Dune::PDELab::AnalyticGridFunctionTraits<GV,RF,1> Traits; - - PInitial_InOutFlow(const GV & gv, const Params & params) : - Dune::PDELab::AnalyticGridFunctionBase<Traits,PInitial_InOutFlow<GV,RF,Params> > (gv) - { - pConst = params.initial.ptree.get("pConst",(RF)0.01); - yS = params.YScaling; - } - - inline void evaluateGlobal(const typename Traits::DomainType & x, typename Traits::RangeType & y) const - { - y = 0; - if(x[0]<1e-7) - { - y=pConst/(yS*yS); - } - } -}; - template<typename GV, typename RF, typename Params, const int Phase> class PhiInitial_Thinstrip_Layers : public Dune::PDELab::AnalyticGridFunctionBase< diff --git a/src/paper_thinstrip_mixed/tmixed_chns_navierstokes.hh b/src/paper_thinstrip_mixed/tmixed_chns_navierstokes.hh new file mode 100644 index 0000000000000000000000000000000000000000..70a03da71b07c4dd46f11db60ce19f8de13e8643 --- /dev/null +++ b/src/paper_thinstrip_mixed/tmixed_chns_navierstokes.hh @@ -0,0 +1,100 @@ +#pragma once + +#include<dune/pdelab/common/quadraturerules.hh> +#include<dune/pdelab/finiteelement/localbasiscache.hh> +#include<dune/pdelab/localoperator/defaultimp.hh> +#include<dune/pdelab/localoperator/pattern.hh> +#include<dune/pdelab/localoperator/flags.hh> +#include<dune/pdelab/localoperator/variablefactories.hh> +#include<dune/pdelab/gridfunctionspace/gridfunctionspace.hh> + +#include"fem_base_micro.hh" + + + + +template<typename Param, typename CHGFS, typename CHContainer, typename NSGFS, typename NSContainer> + class TMIXED_CHNS_NavierStokes : + public Dune::PDELab::FullVolumePattern, + public Dune::PDELab::LocalOperatorDefaultFlags, + public Dune::PDELab::NumericalJacobianVolume<TMIXED_CHNS_NavierStokes<Param, CHGFS, CHContainer, NSGFS, NSContainer> >, + public Dune::PDELab::NumericalJacobianApplyVolume<TMIXED_CHNS_NavierStokes<Param, CHGFS, CHContainer, NSGFS, NSContainer> > + { + private: + typedef typename CHContainer::field_type RF; + typedef typename NSGFS::Traits::GridViewType::template Codim<0>::Entity ENTITY; + + CHLocalBasisCache<CHGFS> chCache; + Micro_VXLocalBasisCache<NSGFS> vCache; + + typedef GFS_LocalViewer<CHGFS, CHContainer, ENTITY, RF> CHLView; + mutable CHLView chLocal; + //mutable CHLView chOldLocal; + + //typedef GFS_LocalViewer<NSGFS, NSContainer, ENTITY, RF> NSLView; + //mutable NSLView nsOldLocal; + + Param& param; // parameter functions + + //FOR DETECTING ENTITY changes + typedef typename NSGFS::Traits::GridViewType::template Codim<0>::Entity ENT; + mutable ENT OldEnt; + + public: + + + // pattern assembly flags + enum { doPatternVolume = true }; + + // residual assembly flags + enum { doAlphaVolume = true }; + //enum { doLambdaVolume = true }; + + + + TMIXED_CHNS_NavierStokes (Param& param_, CHGFS& chGfs_, CHContainer& chV_, + NSGFS& nsGfs_) : + chLocal(chGfs_,chV_), + //chOldLocal(chGfs_,chVOld_), + //nsOldLocal(nsGfs_,nsVOld_), + param(param_) + { + } + + + template<typename EG, typename LFSU, typename X, typename LFSV, typename R> + void alpha_volume (const EG& eg, const LFSU& lfsu, const X& x, const LFSV& lfsv, R& r) const + { +// std::cout << "hi_alpha" << std::endl; + //Quadrature Rule + const int dim = EG::Entity::dimension; + const int order = 5; //TODO: Choose more educated + auto rule = Dune::PDELab::quadratureRule(eg.geometry(), order); + + chLocal.DoEvaluation(eg); + //chOldLocal.DoEvaluation(eg); + //nsOldLocal.DoSubEvaluation(eg,child(nsOldLocal.lfs,Dune::Indices::_0)); + + for(const auto& ip : rule) + { + const auto S = eg.geometry().jacobianInverseTransposed(ip.position()); + auto factor = ip.weight()*eg.geometry().integrationElement(ip.position()); + + CHVariables_Threephase_Micro_Extension<RF,dim,decltype(chLocal.lfs)> ch(chCache, ip.position(), chLocal.lfs, chLocal.lv, S); + NSMicroVariables<RF,dim,LFSV> ns(vCache, ip.position(), lfsv, x.base(), S); + RF pf3 = 1-ch.pf - ch.pf2; + RF pf_f=ch.pf+ch.pf2+2*param.delta*pf3; + + for (size_t i=0; i<ns.vxspace.size(); i++) + { + r.accumulate(ns.vxspace, i, factor*( + param.vDis.eval(pf_f)*ns.vx*ns.vbasis.phi[i] + + param.phys.eval_mu(pf_f) * (ns.gradvx * ns.vbasis.gradphi[i][0]) + - pf_f * ns.vbasis.phi[i] + )); + } // for i + } // for ip +// std::cout << "bye_alpha" << std::endl; + } //alpha volume + + }; diff --git a/src/paper_thinstrip_mixed/tmixed_chns_r_cahnhilliard.hh b/src/paper_thinstrip_mixed/tmixed_chns_r_cahnhilliard.hh new file mode 100644 index 0000000000000000000000000000000000000000..5dcf3e026d1864e69ca85b6f075d1d74045c8743 --- /dev/null +++ b/src/paper_thinstrip_mixed/tmixed_chns_r_cahnhilliard.hh @@ -0,0 +1,156 @@ +#pragma once + +#include<dune/pdelab/common/quadraturerules.hh> +#include<dune/pdelab/finiteelement/localbasiscache.hh> +#include<dune/pdelab/localoperator/defaultimp.hh> +#include<dune/pdelab/localoperator/pattern.hh> +#include<dune/pdelab/localoperator/flags.hh> +#include<dune/pdelab/localoperator/variablefactories.hh> +#include<dune/pdelab/gridfunctionspace/gridfunctionspace.hh> + +#include"fem_base_micro.hh" + +//Parameter class (for functions), FEM space and RangeField +template<typename Param, typename CHGFS, typename CHContainer, typename NSGFS, typename NSContainer> +class TMIXED_CHNS_R_CahnHilliard : + public Dune::PDELab::FullVolumePattern, + public Dune::PDELab::LocalOperatorDefaultFlags, + public Dune::PDELab::NumericalJacobianVolume<TMIXED_CHNS_R_CahnHilliard<Param, CHGFS, CHContainer, NSGFS, NSContainer> >, + public Dune::PDELab::NumericalJacobianApplyVolume<TMIXED_CHNS_R_CahnHilliard<Param, CHGFS, CHContainer, NSGFS, NSContainer> > +{ +private: + typedef typename CHContainer::field_type RF; + typedef typename CHGFS::Traits::GridViewType::template Codim<0>::Entity ENTITY; + + CHLocalBasisCache<CHGFS> chCache; + Micro_VXLocalBasisCache<NSGFS> vCache; + + typedef GFS_LocalViewer<CHGFS, CHContainer, ENTITY, RF> CHLView; + mutable CHLView chOldLocal; + mutable CHLView chUpwindLocal; + + typedef GFS_LocalViewer<NSGFS, NSContainer, ENTITY, RF> NSLView; + mutable NSLView nsLocal; + mutable NSLView nsUpwindLocal; + + Param& param; // parameter functions + RF& dxp; + RF& dxpUpwind; + +public: + enum {doPatternVolume=true}; + //enum {doLambdaVolume=true}; + enum {doAlphaVolume=true}; + + //constructor + TMIXED_CHNS_R_CahnHilliard(Param& param_, CHGFS& chGfs_, CHContainer& chVOld_, CHContainer& chVUpwind_, + NSGFS& nsGfs_, NSContainer& nsV, NSContainer& nsVUpwind_, RF& dxp_, RF& dxpUpwind_) : + chOldLocal(chGfs_,chVOld_), + chUpwindLocal(chGfs_,chVUpwind_), + nsLocal(nsGfs_,nsV), + nsUpwindLocal(nsGfs_,nsVUpwind_), + param(param_), + dxp(dxp_), + dxpUpwind(dxpUpwind_) + { + } + + + template<typename EG, typename LFSU, typename X, typename LFSV, typename R> + void alpha_volume (const EG& eg, const LFSU& lfsu, const X& x, const LFSV& lfsv, R& r) const + { + //Quadrature Rule + const int dim = EG::Entity::dimension; + const int order = 2; //TODO: Choose more educated + auto rule = Dune::PDELab::quadratureRule(eg.geometry(), order); + + chOldLocal.DoEvaluation(eg); + chUpwindLocal.DoEvaluation(eg); + nsLocal.DoEvaluation(eg); + nsUpwindLocal.DoEvaluation(eg); + + for(const auto& ip : rule) + { + const auto S = eg.geometry().jacobianInverseTransposed(ip.position()); + auto factor = ip.weight()*eg.geometry().integrationElement(ip.position()); + + CHVariables_Threephase_Micro_Extension<RF,dim,LFSV> + ch(chCache, ip.position(), lfsv, x.base(), S); + CHVariables_Threephase_Micro_Extension<RF,dim,decltype(chOldLocal.lfs)> + chOld(chCache, ip.position(),chOldLocal.lfs, chOldLocal.lv, S); + CHVariables_Threephase_Micro_Extension<RF,dim,decltype(chUpwindLocal.lfs)> + chUpwind(chCache, ip.position(),chUpwindLocal.lfs, chUpwindLocal.lv, S); + + NSMicroVariables<RF,dim,decltype(nsLocal.lfs)> + ns(vCache, ip.position(), nsLocal.lfs, nsLocal.lv, S); + NSMicroVariables<RF,dim,decltype(nsUpwindLocal.lfs)> + nsUpwind(vCache, ip.position(), nsUpwindLocal.lfs, nsUpwindLocal.lv, S); + +//TODO + + +/* + RF pf3 = 1-ch.pf-ch.pf2; + RF xi3 = -param.tw.Sigma3*(ch.xi/param.tw.Sigma1 + ch.xi2/param.tw.Sigma2); + + RF pf_c = ch.pf; + RF pf_c_Old = ch.pfOld; + RF pf_c_reg = pf_c+param.delta; + RF pf_c_reg_Old = pf_c_Old + param.delta; + + for (size_t i=0; i<ch.pfspace.size(); i++) + { + //RF Rspeed = std::max(param.tw.eval_q(ch.pf,ch.pf2,pf3) - 0.1, 0.0); + RF Rspeed = param.tw.eval_q(ch.pf,ch.pf2,pf3); + RF R1 = -Rspeed/param.eps* + (param.reaction.eval(ch.u)+param.phys.curvatureAlpha*(ch.xi-xi3))*ch.basis.phi[i]; + RF J1 = param.mobility.eval(ch.pf,ch.pf2,pf3)*param.eps/param.tw.Sigma1 * (ch.gradxi*ch.basis.gradphi[i][0]); + + // integrate: (pf-pfold)*phi_i/delta_t + gradpf * grad phi_i + ... + r.accumulate(ch.pfspace,i,factor*( + (ch.pf-ch.pfOld)*ch.basis.phi[i]/param.time.dt + +J1 + +(ch.pf*ns.div_v + (ch.gradpf*ns.v))*ch.basis.phi[i] + //-pf1*(v*gradphi[i][0]) weak transport + -R1 + )); + + r.accumulate(ch.pf2space,i,factor*( + (ch.pf2-ch.pf2Old)*ch.basis.phi[i]/param.time.dt + +param.mobility.eval(ch.pf,ch.pf2,pf3)*param.eps/param.tw.Sigma2 * (ch.gradxi2*ch.basis.gradphi[i][0]) + +(ch.pf2*ns.div_v + (ch.gradpf2*ns.v))*ch.basis.phi[i] + //-pf2*(v*gradphi[i][0]) + )); + + r.accumulate(ch.xispace,i,factor*( + ch.xi*ch.basis.phi[i] + - 1/param.eps* param.tw.eval_dpf1(ch.pf,ch.pf2,pf3) *ch.basis.phi[i] + - param.eps * param.tw.Sigma1* (ch.gradpf*ch.basis.gradphi[i][0]) + )); + + r.accumulate(ch.xi2space,i,factor*( + ch.xi2*ch.basis.phi[i] + - 1/param.eps* param.tw.eval_dpf2(ch.pf,ch.pf2,pf3) *ch.basis.phi[i] + - param.eps * param.tw.Sigma2* (ch.gradpf2*ch.basis.gradphi[i][0]) + )); + + // integrate (pf-pfold)*(u-uast)*phi_i/delta_t + pfold*(u-uold)*phi_i/delta_t + D*pf*gradu*grad phi_i = 0 + + //Dune::FieldVector<RF, dim> xg = eg.geometry().global( ip.position() ); + r.accumulate(ch.uspace,i,factor*( + + //(u-param.uAst)*phi[i]/param.dt //For Testing + + (pf_c_reg-pf_c_reg_Old)*(ch.u-param.phys.uAst)*ch.basis.phi[i]/param.time.dt + + pf_c_reg_Old*(ch.u-ch.uOld)*ch.basis.phi[i]/param.time.dt + + param.phys.D*pf_c_reg_Old*(ch.gradu*ch.basis.gradphi[i][0]) + + J1*(ch.u-param.phys.uAst) + //- pf_c*(u-param.phys.uAst)*(v*gradphi[i][0]) + + (pf_c*(ch.u-param.phys.uAst)*ns.div_v + (ch.u-param.phys.uAst)*(ch.gradpf*ns.v) + pf_c*(ch.gradu*ns.v) )*ch.basis.phi[i] + )); + } +*/ + } + } + +}; diff --git a/src/paper_thinstrip_mixed/tmixed_equation.cc b/src/paper_thinstrip_mixed/tmixed_equation.cc index 8119f17ceecc5e6926f2d29de15d80d536be69bd..2c38b537de4a4db40e1ccbc1eb423efb5bb43e83 100644 --- a/src/paper_thinstrip_mixed/tmixed_equation.cc +++ b/src/paper_thinstrip_mixed/tmixed_equation.cc @@ -18,8 +18,9 @@ #include <dune/grid/geometrygrid/grid.hh> // pdelab includes #include<dune/pdelab/finiteelementmap/pkfem.hh> +#include<dune/pdelab/finiteelementmap/qkfem.hh> #include <dune/xt/grid/view/periodic.hh> -#include "3p_driver.hh" +#include "driver_mixed.hh" //=============================================================== // Main program with grid setup @@ -59,24 +60,41 @@ int main(int argc, char** argv) if (true/*dim==2*/) { - //typedef Dune::ALUGrid<2,2,Dune::simplex,Dune::conforming> Grid; - //typedef Dune::UGGrid<2> Grid; - - typedef Dune::OneDGrid Grid; - typedef Grid::ctype DF; - +/* typedef Dune::ALUGrid<2,2,Dune::simplex,Dune::conforming> Grid; + std::string filename = ptree.get("domain.filename", + "turbtube2d.msh"); + Dune::GridFactory<Grid> factory; std::vector<int> boundary_index_map; std::vector<int> element_index_map; + if (helper.rank()==0) + Dune::GmshReader<Grid>::read(factory,filename,boundary_index_map,element_index_map,true,false); + //std::shared_ptr<Grid> xgridp(factory.createGrid()); + std::shared_ptr<Grid> ygridp(factory.createGrid()); +*/ + //typedef Dune::UGGrid<2> Grid; + + //typedef Dune::OneDGrid Grid; + + typedef Dune::YaspGrid<1> Grid; + typedef Dune::YaspGrid<2> TensorGrid; + typedef Grid::ctype DF; int A = ptree.get("domain.XResolution", 10); int B = ptree.get("domain.YResolution", 10); - std::shared_ptr<Grid> xgridp(new Grid(A,0,1)); - std::shared_ptr<Grid> ygridp(new Grid(B,0,1)); + + A=B; //Same resolution for now is easier + Dune::FieldVector<DF,1> L(1); + Dune::FieldVector<DF,2> LL(1); + std::shared_ptr<Grid> xgridp(new Grid(L,std::array<int,1>{A})); + std::shared_ptr<Grid> ygridp(new Grid(L,std::array<int,1>{B},std::bitset<1>(false),0)); + std::shared_ptr<TensorGrid> tensorgridp(new TensorGrid(LL,std::array<int,2>{A,B})); typedef Grid::LeafGridView GV; + typedef TensorGrid::LeafGridView TGV; GV xgv = xgridp->leafGridView(); GV ygv = ygridp->leafGridView(); + TGV tgv = tensorgridp->leafGridView(); std::cout << "OK" << std::endl; @@ -84,16 +102,18 @@ int main(int argc, char** argv) ES y_es(ygv); const int k = 2; - typedef Dune::PDELab::PkLocalFiniteElementMap<ES,DF,double,k> V_FEM; - typedef Dune::PDELab::PkLocalFiniteElementMap<ES,DF,double,k-1> P_FEM; + typedef Dune::PDELab::PkLocalFiniteElementMap<ES,DF,double,1> V_FEM; + typedef Dune::PDELab::PkLocalFiniteElementMap<ES,DF,double,1> P_FEM; const int l = 2; - typedef Dune::PDELab::PkLocalFiniteElementMap<ES,DF,double,l> PHI_FEM; + typedef Dune::PDELab::PkLocalFiniteElementMap<ES,DF,double,1> PHI_FEM; - V_FEM vFem(es); - P_FEM pFem(es); - PHI_FEM phiFem(es); + typedef Dune::PDELab::PkLocalFiniteElementMap<TGV,DF,double,1> Tensor_FEM; + V_FEM vFem(y_es); + P_FEM pFem(y_es); + PHI_FEM phiFem(y_es); + Tensor_FEM tensorFem(tgv); - driver_mixed(xgv, ygv, y_es,vFem,pFem,phiFem, ptree, helper); + driver_mixed(xgv, A, ygv, y_es, tgv, tensorFem,vFem,pFem,phiFem, ptree, helper); } } catch (Dune::Exception &e){ diff --git a/src/paper_thinstrip_mixed/tmixed_parameters.hh b/src/paper_thinstrip_mixed/tmixed_parameters.hh index 1a820a024cb506b6e49dcf2e37229b9a5c564d3c..535347e8fbf3d89b3a45786f24cb4a62fadba95b 100644 --- a/src/paper_thinstrip_mixed/tmixed_parameters.hh +++ b/src/paper_thinstrip_mixed/tmixed_parameters.hh @@ -5,14 +5,19 @@ template <typename Number, typename TW, typename Mobility, typename Reaction, typename VelDissipation> -class Params_thinstrip : public Params_ffs_r<Number, TW, Mobility, Reaction, VelDissipation> +class Params_tmixed : public Params_ffs_r<Number, TW, Mobility, Reaction, VelDissipation> { public: const Number YScaling; + const Dune::ParameterTree& nsNewtonTree; + const Dune::ParameterTree& chNewtonTree; + Number TempXpos = 0; - Params_thinstrip(const Dune::ParameterTree& ptree) : + Params_tmixed(const Dune::ParameterTree& ptree) : Params_ffs_r<Number, TW, Mobility, Reaction, VelDissipation>(ptree), - YScaling(ptree.get("domain.YScaling",1.0)) + YScaling(ptree.get("domain.YScaling",1.0)), + nsNewtonTree(ptree.sub("NS_Newton")), + chNewtonTree(ptree.sub("Phasefield_Newton")) { ModifyParameters(); std::cout << "YScaling " << YScaling << " Eps " << this->eps << std::endl; diff --git a/src/rectangle_periodic.geo b/src/rectangle_periodic.geo index 8039dad3b96730ed8e32831a2a1257bb008ea212..9e9fc8dafda432c4a62fcd7bdf544a66fa70236e 100644 --- a/src/rectangle_periodic.geo +++ b/src/rectangle_periodic.geo @@ -1,10 +1,10 @@ // mesh width associated with points -lc = 0.03; +lc = 0.015; Point(1) = {0, 0, 0, lc}; -Point(2) = {2, 0, 0, lc}; -Point(3) = {2, 1, 0, lc}; -Point(4) = {0, 1, 0, lc}; +Point(2) = {1.5, 0, 0, lc}; +Point(3) = {1.5, 0.75, 0, lc}; +Point(4) = {0, 0.75, 0, lc}; Line(1) = {2,1}; Line(2) = {3,2}; diff --git a/src/summerschool/2p_driver.hh b/src/summerschool/2p_driver.hh index c2464b3331aa9a0a93a2ea5606d60e1c8ab4d415..b1a6e706f6601c6aa3de2b2151378e725cc77ddc 100644 --- a/src/summerschool/2p_driver.hh +++ b/src/summerschool/2p_driver.hh @@ -4,10 +4,14 @@ #include<sys/stat.h> // C++ includes #include<iostream> +#include<fstream> // Dune includes #include<dune/grid/io/file/vtk.hh> #include<dune/pdelab/newton/newton.hh> +#include<dune/pdelab/function/callableadapter.hh> +#include <dune/pdelab/common/functionutilities.hh> + #include <dune/phasefield/localoperator/fem_fs_chns_r_cahnhilliard.hh> #include <dune/phasefield/localoperator/fem_fs_chns_r_thinplateflow.hh> #include <dune/phasefield/localoperator/fem_fs_r_only.hh> @@ -26,6 +30,7 @@ + //_________________________________________________________________________________________________________________________ template<typename Grid, typename ES, typename V_FEM, typename P_FEM, typename PHI_FEM> @@ -153,10 +158,11 @@ void driver_fs (Grid& grid, const ES& es, const V_FEM& vFem, const P_FEM pFem, c auto stationaryvtkwriter = std::make_shared<Dune::SubsamplingVTKWriter<GV> >(gv,1); Dune::VTKSequenceWriter<GV> vtkwriter(stationaryvtkwriter,filename.c_str(),filename.c_str(),""); dgf.addToVTKWriter(vtkwriter); + vtkwriter.write(param.time.t,Dune::VTK::base64); + - vtkwriter.write(param.time.t,Dune::VTK::base64); //_________________________________________________________________________________________________________________________ printVector(chV,10,"chV"); @@ -237,6 +243,50 @@ void driver_fs (Grid& grid, const ES& es, const V_FEM& vFem, const P_FEM pFem, c continue; } + //_________________________________________________________________________________________________________________________ + // WRITE CSV OUTPUT + std::string csvname=ptree.get("output.csvname","centers"); + for( int radiusFactor = 3; radiusFactor<9; radiusFactor++) + { + try + { + std::ofstream myfile; + myfile.open(csvname + std::to_string(radiusFactor) + ".csv",std::ofstream::app); + for( int i=0; i<initial.iniPhi.xValues.size(); i++) + { + auto analyticFunction = Dune::PDELab::makeGridFunctionFromCallable (gv, [&](const auto& x){ + return ( (x[0]-initial.iniPhi.xValues[i])*(x[0]-initial.iniPhi.xValues[i]) + + (x[1]-initial.iniPhi.yValues[i])*(x[1]-initial.iniPhi.yValues[i]) ) + < radiusFactor/2.0*radiusFactor/2.0*initial.iniPhi.radius*initial.iniPhi.radius? + 1.0:0.0; + }); + auto productFunction = Dune::PDELab::makeGridFunctionFromCallable (gv, [&](const auto& element, const auto& xlocal){ + Dune::FieldVector<double,1> y1; + analyticFunction.evaluate(element, xlocal, y1); + Dune::FieldVector<double,1> y2; + dgf.phiDgf.evaluate(element, xlocal, y2); + Dune::FieldVector<double, dim> xg = element.geometry().global( xlocal ); + Dune::FieldVector<double,3> result; + result[0] = (1-y2[0])*y1[0]; + result[1] = result[0]*xg[0]; + result[2] = result[0]*xg[1]; + return result; + }); + + Dune::FieldVector<double,3> integral; + Dune::PDELab::integrateGridFunction(productFunction,integral,2); + std::cout << "Integral: " << integral[0] << ", " << integral[1]/integral[0] << ", " << integral[2]/integral[0]<< std::endl; + myfile << integral[0] << ", " << integral[1]/integral[0] << ", " << integral[2]/integral[0] << ", "; + } + myfile << param.time.t << std::endl; + myfile.close(); + } + catch(...) + { + std::cout << "Error in integration or CSV Files" << std::endl; + } + } + chVOld = chV; nsVOld = nsV; diff --git a/src/summerschool/boundary_summerschool.hh b/src/summerschool/boundary_summerschool.hh index e5a33a203d546db3d9a20283848fc9df573248d1..88fadea977e044c28693e9c069332c4303aa5282 100644 --- a/src/summerschool/boundary_summerschool.hh +++ b/src/summerschool/boundary_summerschool.hh @@ -6,7 +6,7 @@ #include <dune/phasefield/initial_fn.hh> #define GRID_EPS_SS 1e-7 -#define GRID_WIDTH_SS 6 // 1.5 for summer school //2 for contactpointtest //6 for full summer school +#define GRID_WIDTH_SS 7 // 1.5 for summer school //2 for contactpointtest //6 for full summer school, 7 for v2 #define GRID_BOTTOM_SS 0 //0 For summer school //0.35 for contactpointtest //0.35 for hainesjump #define GRID_TOP_SS 0.125 //0.125 for summer school //1 for contactpointtest //0.65 for hainesjump diff --git a/src/summerschool/ss_calcite.ini b/src/summerschool/ss_calcite.ini index 0c0a6c44d80b66768184db0364fac57b04328735..0440d734580f8fd81e4a0c5d3a61fc3e149e86cc 100644 --- a/src/summerschool/ss_calcite.ini +++ b/src/summerschool/ss_calcite.ini @@ -2,7 +2,7 @@ uAst = 27.1 #Molar density of CaCO3, in mol/l uEquilibrium = 0.00014 #Solubility of CaCO3 in water, in mol/l ReactionRate = 10 -BulkRate = 0.00001796 #Urease reaction rate, depending un urea concentration and experimentally matched, in mol/(l*s) +BulkRate = 0.00001141 #0.00005716 #Urease reaction rate, depending un urea concentration and experimentally matched, in mol/(l*s) # Was 0.00001796 D = 0.000804 #of CO3^2- in Water see Zeebe,2011, in mm^2/s rho1 = 0.997 #Water, in 10^-6 kg/mm^3 rho2 = 2.71 #Kalcite, in 10^-6 kg/mm^3 @@ -11,9 +11,12 @@ VelDissipationRate = 1000000 CurvatureAlpha=0 [domain] -filename = grids/summerschool_full_coarse.msh +filename = grids/summerschool_full_v2.msh CellHeight=0.085 +[output] +filename = centertest + [Phasefield] eps=0.002 @@ -29,15 +32,15 @@ dtMax = 0.1 dtMin = 0.0001 saveintervallstart = 100 saveintervall = 119.99 -reactionOnlyDt = 10 #NEW +reactionOnlyDt = 20 #NEW reactionOnlyStart = 20 #NEW #dtIncreaseFactor=1.2 #dtDecreaseFactor=0.5 [Initial] -MeanInflow=2 #mm/s (in mean-> *1.5 for max velocity) -uConst=0.00020 -uInflow=0.00050 #TODO: Make a parameter study +MeanInflow=1.882 #mm/s (in mean-> *1.5 for max velocity) +uConst=0.000367667 #FROM INFLOW SIMULATION +uInflow=0.000367667 #FROM INFLOW SIMULATION Radius=0.02 Radius1=0.015 diff --git a/src/summerschool_full_v2.geo b/src/summerschool_full_v2.geo new file mode 100644 index 0000000000000000000000000000000000000000..753596e62158e95e8d6704ee7050085c0cbde9ad --- /dev/null +++ b/src/summerschool_full_v2.geo @@ -0,0 +1,80 @@ +// mesh width associated with points +lc = 0.015; + +R = 1/4; // Radius of pore +h = 1/8; // Height of inlet +ix = 1/2; // Inlet length +dx = R - Sqrt(R*R - h*h/4); // Additional x-distance to the edge of the circle +Wp = ix*2+R*2; // Unit cell length + +Point(1) = {0, 0, 0, lc}; +Point(2) = {ix+ix+dx, 0, 0, lc}; +Point(3) = {ix+ix+R+R-dx, 0, 0, lc}; + +Point(12) = {ix+Wp+ix+dx, 0, 0, lc}; +Point(13) = {ix+Wp+ix+R+R-dx, 0, 0, lc}; + +Point(22) = {ix+Wp+Wp+ix+dx, 0, 0, lc}; +Point(23) = {ix+Wp+Wp+ix+R+R-dx, 0, 0, lc}; + +Point(32) = {ix+Wp+Wp+Wp+ix+dx, 0, 0, lc}; +Point(33) = {ix+Wp+Wp+Wp+ix+R+R-dx, 0, 0, lc}; +Point(34) = {ix+Wp+Wp+Wp+ix+R+R+ix+ix, 0, 0, lc}; + +Point(35) = {ix+Wp+Wp+Wp+ix+R+R+ix+ix, h, 0, lc}; +Point(36) = {ix+Wp+Wp+Wp+ix+R+R-dx, h, 0, lc}; +Point(37) = {ix+Wp+Wp+Wp+ix+dx, h, 0, lc}; + +Point(26) = {ix+Wp+Wp+ix+R+R-dx, h, 0, lc}; +Point(27) = {ix+Wp+Wp+ix+dx, h, 0, lc}; + +Point(16) = {ix+Wp+ix+R+R-dx, h, 0, lc}; +Point(17) = {ix+Wp+ix+dx, h, 0, lc}; + +Point(6) = {ix+ix+R+R-dx, h, 0, lc}; +Point(7) = {ix+ix+dx, h, 0, lc}; +Point(8) = {0, h, 0, lc}; + +Point(9) = {ix+ix+R, h/2, 0, lc}; +Point(19) = {ix+Wp+ix+R, h/2, 0, lc}; +Point(29) = {ix+Wp+Wp+ix+R, h/2, 0, lc}; +Point(39) = {ix+Wp+Wp+Wp+ix+R, h/2, 0, lc}; + + +Line(1) = {1,2}; +Circle(2) = {2,9,3}; +Line(3) = {3,12}; + +Circle(12) = {12,19,13}; +Line(13) = {13,22}; + +Circle(22) = {22,29,23}; +Line(23) = {23,32}; + +Circle(32) = {32,39,33}; +Line(33) = {33,34}; + +Line(4) = {34,35}; + +Line(35) = {35,36}; +Circle(36) = {36,39,37}; +Line(37) = {37,26}; + +Circle(26) = {26,29,27}; +Line(27) = {27,16}; + +Circle(16) = {16,19,17}; +Line(17) = {17,6}; + +Circle(6) = {6,9,7}; +Line(7) = {7,8}; + +Line(8) = {1,8}; + +Periodic Line {4} = {8}; + +Line Loop(100) = {1,2,3,12,13,22,23,32,33,4,35,36,37,26,27,16,17,6,7,-8}; +Plane Surface(200) = {100}; +Physical Surface(300) = {200}; + +Mesh.Algorithm = 5; diff --git a/src/summerschool_inflow/CMakeLists.txt b/src/summerschool_inflow/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..ccce38993187715ecb9a8c219e778d53cd72bcf2 --- /dev/null +++ b/src/summerschool_inflow/CMakeLists.txt @@ -0,0 +1,2 @@ +add_executable(inflow inflow.cc) +dune_symlink_to_source_files(FILES grids ss_calcite.ini) diff --git a/src/summerschool_inflow/boundary_summerschool.hh b/src/summerschool_inflow/boundary_summerschool.hh new file mode 100644 index 0000000000000000000000000000000000000000..580396b84eee3f2f9b56694deac304744dbb1246 --- /dev/null +++ b/src/summerschool_inflow/boundary_summerschool.hh @@ -0,0 +1,118 @@ + +#pragma once +#include <cmath> +#include <dune/pdelab/common/function.hh> +#include <dune/pdelab/constraints/common/constraintsparameters.hh> +#include <dune/phasefield/initial_fn.hh> + +#define GRID_EPS_SS 1e-7 +#define GRID_WIDTH_SS 1.5 // 1.5 for summer school //2 for contactpointtest //6 for full summer school + +#define GRID_BOTTOM_SS 0 //0 For summer school //0.35 for contactpointtest //0.35 for hainesjump +#define GRID_TOP_SS 0.75 //0.125 for summer school //1 for contactpointtest //0.65 for hainesjump + + +class v_per : public Dune::PDELab::DirichletConstraintsParameters +{ +public: + template<typename I> + bool isDirichlet(const I & intersection, const Dune::FieldVector<typename I::ctype, I::mydimension> & coord) const + { + Dune::FieldVector<typename I::ctype, I::coorddimension> + xg = intersection.geometry().global( coord ); + if ( xg[1]>GRID_BOTTOM_SS +GRID_EPS_SS && xg[1]<GRID_TOP_SS -GRID_EPS_SS ) + { + return false; + } + return true; + } +}; + + + +class p_per : public Dune::PDELab::DirichletConstraintsParameters +{ +public: + template<typename I> + bool isDirichlet(const I & intersection, const Dune::FieldVector<typename I::ctype, I::mydimension> & coord) const + { + Dune::FieldVector<typename I::ctype, I::coorddimension> + xg = intersection.geometry().global( coord ); + if ((xg[0]> GRID_WIDTH_SS -GRID_EPS_SS /*|| xg[0] < GRID_EPS*/) && xg[1]>GRID_BOTTOM_SS +GRID_EPS_SS && xg[1]<GRID_TOP_SS -GRID_EPS_SS ) + { + return true; + } + return false; + } +}; + +class InflowOutflow_u_ss : public Dune::PDELab::DirichletConstraintsParameters +{ +public: + template<typename I> + bool isDirichlet(const I & intersection, const Dune::FieldVector<typename I::ctype, I::mydimension> & coord) const + { + Dune::FieldVector<typename I::ctype, I::coorddimension> + xg = intersection.geometry().global( coord ); + if (xg[0]< GRID_EPS_SS ) + { + return true; + } + return false; + } +}; + +class InflowOutflow_phi_ss : public Dune::PDELab::DirichletConstraintsParameters +{ +public: + template<typename I> + bool isDirichlet(const I & intersection, const Dune::FieldVector<typename I::ctype, I::mydimension> & coord) const + { + Dune::FieldVector<typename I::ctype, I::coorddimension> + xg = intersection.geometry().global( coord ); + if ( (xg[0]< GRID_EPS_SS || xg[0] >GRID_WIDTH_SS -GRID_EPS_SS ) && xg[1]>GRID_BOTTOM_SS +GRID_EPS_SS && xg[1]<GRID_TOP_SS -GRID_EPS_SS ) + { + return true; + } + return false; + } +}; + +template<typename GV, typename RF, typename Params, int dim> +class VelocityInitial_Inflow_ss : + public Dune::PDELab::AnalyticGridFunctionBase< + Dune::PDELab::AnalyticGridFunctionTraits<GV,RF,dim>, + VelocityInitial_Inflow_ss<GV,RF,Params,dim> > +{ + const Params_Time& time; + RF meanflow; + + +public: + typedef Dune::PDELab::AnalyticGridFunctionTraits<GV,RF,dim> Traits; + + typedef typename Traits::DomainType DomainType; + typedef typename Traits::RangeType RangeType; + + VelocityInitial_Inflow_ss(const GV & gv, const Params & params) : + Dune::PDELab::AnalyticGridFunctionBase<Traits,VelocityInitial_Inflow_ss<GV,RF,Params,dim> > (gv) + , time(params.time) + { + meanflow = params.initial.ptree.get("MeanInflow",(RF)0.1); + } + + template <typename T> + void setTime(T t){ + time = t; + } + + inline void evaluateGlobal(const DomainType & x, RangeType & y) const + { + y = 0.0; + if(x[0]<GRID_EPS) //Inflow boundary + { + RF factor = meanflow * 6/( (GRID_TOP_SS-GRID_BOTTOM_SS)*(GRID_TOP_SS-GRID_BOTTOM_SS) ); + y[0] = std::max((RF)0, factor * (x[1]-GRID_BOTTOM_SS)*(GRID_TOP_SS-x[1])); + } + } +}; diff --git a/src/summerschool_inflow/inflow.cc b/src/summerschool_inflow/inflow.cc new file mode 100644 index 0000000000000000000000000000000000000000..476b4ba7a4b9a2e36ef10d29ba4e2793278adf9a --- /dev/null +++ b/src/summerschool_inflow/inflow.cc @@ -0,0 +1,117 @@ +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include<iostream> +// dune includes +#include<dune/common/parallel/mpihelper.hh> +#include<dune/common/parametertreeparser.hh> +#include<dune/common/timer.hh> +//#if HAVE_UG +//#include<dune/grid/uggrid.hh> +//#endif +#if HAVE_DUNE_ALUGRID +#include<dune/alugrid/grid.hh> +#include<dune/alugrid/dgf.hh> +#include<dune/grid/io/file/dgfparser/dgfparser.hh> +#endif +// pdelab includes +#include<dune/pdelab/finiteelementmap/pkfem.hh> + +#include <dune/xt/grid/view/periodic.hh> +#include "inflow_driver.hh" + +//=============================================================== +// Main program with grid setup +//=============================================================== + + + + +int main(int argc, char** argv) +{ + #if !HAVE_SUPERLU + std::cout << "Error: These examples work only if SuperLU is available." << std::endl; + exit(1); + #endif + + #if HAVE_UG + try{ + // Maybe initialize Mpi + Dune::MPIHelper& + helper = Dune::MPIHelper::instance(argc, argv); + if(Dune::MPIHelper::isFake) + std::cout<< "This is a sequential program." << std::endl; + else + std::cout << "Parallel code run on " + << helper.size() << " process(es)" << std::endl; + + // open ini file + Dune::ParameterTree ptree; + Dune::ParameterTreeParser ptreeparser; + ptreeparser.readINITree("ss_calcite.ini",ptree); + ptreeparser.readOptions(argc,argv,ptree); + std::string filename = ptree.get("domain.filename", + "turbtube2d.msh"); + + typedef Dune::ALUGrid<2,2,Dune::simplex,Dune::conforming> Grid; + //typedef Dune::UGGrid<2> Grid; + typedef Grid::ctype DF; + + Dune::GridFactory<Grid> factory; + Dune::GmshReader<Grid>::read(factory,filename,true,true); + Dune::GridFactory<Grid>::WorldMatrix matrix; + std::cout << "a" << std::endl; + matrix[0][0] = 1; + matrix[0][1] = 0; + matrix[1][1] = 1; + matrix[1][0] = 0; + std::cout << "b" << std::endl; + Dune::GridFactory<Grid>::WorldVector shift; + shift[0] = 1; + shift[1] = 0; + std::cout << "c" << std::endl; + factory.insertFaceTransformation(matrix,shift ); + + + + std::cout << "d" << std::endl; + + std::shared_ptr<Grid> gridp(factory.createGrid()); + + std::cout << "i" << std::endl; + + typedef Grid::LeafGridView LGV; + std::bitset<2> periodic_directions(ptree.get("domain.periodic","01")); + typedef Dune::XT::Grid::PeriodicGridView<LGV> GV; + GV gv(gridp->leafGridView(),periodic_directions); + + std::cout << "OK" << std::endl; + + using ES = Dune::PDELab::NonOverlappingEntitySet<GV>; + ES es(gv); + + const int k = 2; + typedef Dune::PDELab::PkLocalFiniteElementMap<ES,DF,double,k> V_FEM; + typedef Dune::PDELab::PkLocalFiniteElementMap<ES,DF,double,k-1> P_FEM; + const int l = 2; + typedef Dune::PDELab::PkLocalFiniteElementMap<ES,DF,double,l> PHI_FEM; + + V_FEM vFem(es); + P_FEM pFem(es); + PHI_FEM phiFem(es); + + driver_fs(*gridp,gv, es,vFem,pFem,phiFem, ptree, helper); + + + } + catch (Dune::Exception &e){ + std::cerr << "Dune reported error: " << e << std::endl; + return 1; + } + catch (...){ + std::cerr << "Unknown exception thrown!" << std::endl; + return 1; + } + #endif +} diff --git a/src/summerschool_inflow/inflow_driver.hh b/src/summerschool_inflow/inflow_driver.hh new file mode 100644 index 0000000000000000000000000000000000000000..a8a12be4c90f95a0ddb92c7c56e07c2d73c14caf --- /dev/null +++ b/src/summerschool_inflow/inflow_driver.hh @@ -0,0 +1,273 @@ +#pragma once + +// C includes +#include<sys/stat.h> +// C++ includes +#include<iostream> +// Dune includes +#include<dune/grid/io/file/vtk.hh> +#include<dune/pdelab/newton/newton.hh> + +#include<dune/pdelab/function/callableadapter.hh> +#include <dune/pdelab/common/functionutilities.hh> + +#include <dune/phasefield/localoperator/fem_fs_chns_u_only.hh> +#include <dune/phasefield/localoperator/fem_fs_chns_driven_thinplateflow.hh> +#include <dune/phasefield/localoperator/fem_fs_r_only.hh> +#include <dune/phasefield/localoperator/pf_diff_estimator.hh> + +#include <dune/phasefield/utility/ISTLBackend_NOVLP_BASE_PREC_FOR_GMRES.hh> + +#include <dune/phasefield/chns_base.hh> +#include <dune/phasefield/fs_chns_r.hh> +#include <dune/phasefield/initial_fn.hh> +#include <dune/phasefield/boundary_fn.hh> +#include <dune/phasefield/debug/vector_debug.hh> + +#include "summerschool_timestepmanager.hh" +#include "boundary_summerschool.hh" + + + +//_________________________________________________________________________________________________________________________ + +template<typename Grid, typename GV,typename ES, typename V_FEM, typename P_FEM, typename PHI_FEM> +void driver_fs (Grid& grid, GV& gv, const ES& es, const V_FEM& vFem, const P_FEM pFem, const PHI_FEM& phiFem, Dune::ParameterTree& ptree, Dune::MPIHelper& helper) +{ + + + const int dim = GV::dimension; + typedef double RF; + + + typedef Params_summerschool< RF, + DoubleWell_limited< RF, DoubleWell_poly<RF>, Limiter_FakeDiverging<RF> >,//DoubleWell_poly<RF>, + Mobility_Const<RF>, + Reaction_Calcite_Precipitation<RF>, + VelDissipation_Quadratic<RF> > Parameters; + Parameters param(ptree); + SummerschoolTimestepManager timestepManager(ptree.sub("Time"),param.time,2); + + +//_________________________________________________________________________________________________________________________ +// Make grid function spaces + + + typedef GFS_fs_chns_r<RF, ES, V_FEM, P_FEM, PHI_FEM, PHI_FEM> GFS; + GFS gfs(es,vFem,pFem,phiFem,phiFem); + typedef typename GFS::NS NS_GFS; + typedef typename GFS::CH CH_GFS; + + + //_________________________________________________________________________________________________________________________ + //Constraints + + typedef Bdry_fs_chns_r_compositeV_2d<v_per, + Dune::PDELab::DirichletConstraintsParameters, + p_per, + InflowOutflow_phi_ss, + Dune::PDELab::NoDirichletConstraintsParameters, + InflowOutflow_u_ss> Bdry; + Bdry bdry; + gfs.updateConstraintsContainer(bdry); + + //_________________________________________________________________________________________________________________________ + //Coefficient vectors + + using CH_V = Dune::PDELab::Backend::Vector<CH_GFS, RF>; + using NS_V = Dune::PDELab::Backend::Vector<NS_GFS, RF>; + CH_V chV(gfs.ch); + NS_V nsV(gfs.ns); + + //_________________________________________________________________________________________________________________________ + //Initial Values + + typedef Ini_fs_chns_r< VelocityInitial_Inflow_ss<GV,RF,Parameters,dim>, + PInitial_Inflow<GV,RF,Parameters>, + PhiInitial_SummerSchoolPaper<GV,RF,Parameters>, + ZeroInitial<GV,RF,Parameters>, + UInitial_Inflow<GV,RF,Parameters> > Initial; + Initial initial(gv,param); + Dune::PDELab::interpolate(initial.iniCH , gfs.ch, chV); + Dune::PDELab::interpolate(initial.iniNS , gfs.ns, nsV); + + //____________________________________________________________________________________________________________________ + // Refine Initial Data + + for(int i=0; i<ptree.get("Refinement.maxRefineLevel",2); i++) + { + // mark elements for refinement + typedef RefinementIndicator<GV,RF,PF_DIFF_ESTIMATOR<CH_GFS>,CH_GFS> RIND0; + RIND0 rInd0(gv,gfs.ch,ptree.sub("Refinement")); + rInd0.calculateIndicator(gv,chV,false); + rInd0.markGrid(grid,2); + //rInd0.refineGrid(grid,gv,chV,nsV,gfs.ch,gfs.ns,1); + rInd0.myRefineGrid(grid,gv,chV,nsV,gfs.ch,gfs.ns,1); + Dune::PDELab::interpolate(initial.iniCH , gfs.ch, chV); + Dune::PDELab::interpolate(initial.iniNS , gfs.ns, nsV); + + //vtkwriter.write(param.time.t + i,Dune::VTK::ascii); + } + + gfs.updateConstraintsContainer(bdry); + interpolateToBdry(gfs,initial.iniNS,initial.iniCH,nsV,chV); + + CH_V chVOld = chV; + NS_V nsVOld = nsV; + + + + + //_________________________________________________________________________________________________________________________ + // LocalOperators + + typedef FEM_FS_CHNS_Driven_ThinPlateFlow<Parameters, CH_GFS, CH_V, NS_GFS, NS_V> NS_LOP; + NS_LOP nsLop(param, gfs.ch, chV, gfs.ns, nsVOld); + + typedef FEM_FS_CHNS_U_Only<Parameters, CH_GFS, CH_V, NS_GFS, NS_V> CH_LOP; + CH_LOP chLop(param, gfs.ch, chVOld, gfs.ns, nsV); + + + typedef Dune::PDELab::ISTL::BCRSMatrixBackend<> MBE; + MBE mbe(10);// Maximal number of nonzeroes per row can be cross-checked by patternStatistics(). + + + //_________________________________________________________________________________________________________________________ + // Construct discrete Grid Functions + typedef DGF_fs_chns_r<GFS, NS_V, CH_V> DGF; + DGF dgf(gfs, nsV, chV); + + //_________________________________________________________________________________________________________________________ + // prepare VTK writer + std::string filename=ptree.get("output.filename","output"); + struct stat st; + if( stat( filename.c_str(), &st ) != 0 ) + { + int stat = 0; + stat = mkdir(filename.c_str(),S_IRWXU|S_IRWXG|S_IRWXO); + if( stat != 0 && stat != -1) + std::cout << "Error: Cannot create directory " << filename << std::endl; + } + auto stationaryvtkwriter = std::make_shared<Dune::SubsamplingVTKWriter<GV> >(gv,1); + Dune::VTKSequenceWriter<GV> vtkwriter(stationaryvtkwriter,filename.c_str(),filename.c_str(),""); + dgf.addToVTKWriter(vtkwriter); + + + + vtkwriter.write(param.time.t,Dune::VTK::base64); + + //_________________________________________________________________________________________________________________________ + printVector(chV,10,"chV"); + printVector(nsV,10,"nsV"); + + + //____________________________________________________________________________________________________________________ + //int i_it=0; + + bool FirstReactionStep = true; + + while (!timestepManager.isFinished()) + { + + // Grid Operators + typedef Dune::PDELab::GridOperator<NS_GFS,NS_GFS,NS_LOP,MBE,RF,RF,RF,typename GFS::NS_CC,typename GFS::NS_CC> NS_GO; + NS_GO nsGo(gfs.ns,gfs.nsCC,gfs.ns,gfs.nsCC,nsLop,mbe); + + typedef Dune::PDELab::GridOperator<CH_GFS,CH_GFS,CH_LOP,MBE,RF,RF,RF,typename GFS::CH_CC,typename GFS::CH_CC> CH_GO; + CH_GO chGo(gfs.ch,gfs.chCC,gfs.ch,gfs.chCC,chLop,mbe); + + // Linear solver + typedef ISTLBackend_NOVLP_BASE_PREC_FOR_GMRES + <CH_GO, Dune::SeqILU0, Dune::RestartedGMResSolver> CH_LS; CH_LS ls_ch(chGo,1000,200,3,1); + + typedef ISTLBackend_NOVLP_BASE_PREC_FOR_GMRES + <NS_GO, Dune::SeqILU0, Dune::RestartedGMResSolver> NS_LS; NS_LS ls_ns(nsGo,4000,400,3,1); + + + // Nonlinear solver + typedef Dune::PDELab::Newton<NS_GO,NS_LS,NS_V> PDESolver1; + PDESolver1 ns_newton(nsGo,nsV,ls_ns); + ns_newton.setParameters(ptree.sub("NS_Newton")); + + typedef Dune::PDELab::Newton<CH_GO,CH_LS,CH_V> PDESolver2; + PDESolver2 ch_newton(chGo,chV,ls_ch); + ch_newton.setParameters(ptree.sub("Phasefield_Newton")); + + //_________________________________________________________________________________________________________________________ + // do time step + + + interpolateToBdry(gfs,initial.iniNS,initial.iniCH, nsV, chV); + + int result; + if((param.time.t > ptree.get("Time.flowUntilStable",(double)5) ) + ) + { + if(FirstReactionStep) + { + auto velocityFunction = Dune::PDELab::makeGridFunctionFromCallable (gv, [&](const auto& element, const auto& xlocal){ + Dune::FieldVector<double,1> y1; + dgf.phiDgf.evaluate(element, xlocal, y1); + Dune::FieldVector<double,dim> y2; + dgf.vDgf.evaluate(element, xlocal, y2); + Dune::FieldVector<double,1> result; + result[0] = y1[0]*y2[0]; + return result; + }); + Dune::FieldVector<double,1> integral; + Dune::PDELab::integrateGridFunction(velocityFunction,integral,2); + std::cout << std::endl<< std::endl <<"Velocity Integral: " << integral[0]<< std::endl<< std::endl<< std::endl; + + nsV *= 0.353/integral[0]; + nsVOld *= 0.353/integral[0]; + + FirstReactionStep = false; + } + + result = timestepManager.doOnlyCHTimestep(ch_newton,vtkwriter); + + auto cfluxFunction = Dune::PDELab::makeGridFunctionFromCallable (gv, [&](const auto& element, const auto& xlocal){ + Dune::FieldVector<double,1> y0; + dgf.uDgf.evaluate(element, xlocal, y0); + Dune::FieldVector<double,1> y1; + dgf.phiDgf.evaluate(element, xlocal, y1); + Dune::FieldVector<double,dim> y2; + dgf.vDgf.evaluate(element, xlocal, y2); + Dune::FieldVector<double,1> result; + result[0] = y0[0]*y1[0]*y2[0]; + return result; + }); + Dune::FieldVector<double,1> cfintegral; + Dune::PDELab::integrateGridFunction(cfluxFunction,cfintegral,2); + std::cout << "CFlux Integral: " << cfintegral[0]<< " CFlux/Velocity :" << cfintegral[0]/0.353 << std::endl; + } + else + { + result = timestepManager.doOnlyNSTimestep(ns_newton,vtkwriter); + } + + if(result <0) + { + return; + } + else if(result == 0) + { + nsV = nsVOld; + chV = chVOld; + continue; + } + + chVOld = chV; + nsVOld = nsV; + + //_________________________________________________________________________________________________________________________ + + // recompute constraints + gfs.updateConstraintsContainer(bdry); + interpolateToBdry(gfs,initial.iniNS,initial.iniCH,nsV,chV); + interpolateToBdry(gfs,initial.iniNS,initial.iniCH,nsVOld,chVOld); + + + //vtkwriter.write(timestepManager.t+2e-6,Dune::VTK::ascii); + } +} diff --git a/src/summerschool_inflow/ss_calcite.ini b/src/summerschool_inflow/ss_calcite.ini new file mode 100644 index 0000000000000000000000000000000000000000..d6d5aad3ff40ce09ba96cb8435fcd937caaaf2e1 --- /dev/null +++ b/src/summerschool_inflow/ss_calcite.ini @@ -0,0 +1,73 @@ +[Physics] +uAst = 27.1 #Molar density of CaCO3, in mol/l +uEquilibrium = 0.00014 #Solubility of CaCO3 in water, in mol/l +ReactionRate = 10 +BulkRate = 0.00001141 # 0.00001796 #Urease reaction rate, depending un urea concentration and experimentally matched, in mol/(l*s) +D = 0.000804 #of CO3^2- in Water see Zeebe,2011, in mm^2/s +rho1 = 0.997 #Water, in 10^-6 kg/mm^3 +rho2 = 2.71 #Kalcite, in 10^-6 kg/mm^3 +mu=1.01 #Viscosity of Water, in mPa*s = 10^-6 kg/mm +VelDissipationRate = 1000000 +CurvatureAlpha=0 + +[domain] +filename = grids/inflow_periodic.msh +CellHeight=0.085 +periodic=01 + + +[Phasefield] +eps=0.002 +delta=0.01 +Mobility=0.00002#0.001 * 0.1 #New *0.2 +DoubleWellDelta=0.08 +DoubleWellGamma=0.06 + +[Time] +tMax = 100000 #25000 * 4 +dt = 0.05 +dtMax = 100 +dtMin = 0.0001 +saveintervallstart = 1000000 +saveintervall = 119.99 +reactionOnlyDt = 10 #NEW +reactionOnlyStart = 20 #NEW +flowUntilStable = 0.5 +dtIncreaseFactor=2.0 +#dtDecreaseFactor=0.5 + +[Initial] +MeanInflow=2 #mm/s (in mean-> *1.5 for max velocity) +uConst=0.00020 +uInflow=0.00050 #TODO: Make a parameter study +Radius=0.03 # OLD: 0.02 + +Radius1=0.015 +x1Center=0.8 +y1Center=-0.1 +Radius2=0.015 +x2Center=0.6 +y2Center=0.11 +Radius3=0.015 +x3Center=0.8 +y3Center=0.225 + +[Refinement] +etaRefine = 0.30 +etaCoarsen = 0.15 +maxRefineLevel = 7 +minRefineLevel = 0 + +[NS_Newton] +ReassembleThreshold = 0.0 +LineSearchMaxIterations = 30 +MaxIterations = 30 +AbsoluteLimit = 1e-9 +Reduction = 1e-7 +VerbosityLevel = 1 + +[Phasefield_Newton] +ReassembleThreshold = 0.0 +LineSearchMaxIterations = 30 +MaxIterations = 30 +VerbosityLevel = 1 diff --git a/src/summerschool_inflow/summerschool_timestepmanager.hh b/src/summerschool_inflow/summerschool_timestepmanager.hh new file mode 100644 index 0000000000000000000000000000000000000000..cb751f7b501c06a7788b4a3bfa96d4aa723e8e84 --- /dev/null +++ b/src/summerschool_inflow/summerschool_timestepmanager.hh @@ -0,0 +1,59 @@ +#pragma once + +#include<dune/common/parametertreeparser.hh> + +#include<dune/pdelab/finiteelementmap/p0fem.hh> +#include <dune/pdelab/adaptivity/adaptivity.hh> +#include<dune/pdelab/gridoperator/gridoperator.hh> +#include<dune/pdelab/backend/istl.hh> + +#include <dune/phasefield/base_parameters.hh> +#include <dune/phasefield/chns_base.hh> + +//_________________________________________________________________________________________________________________________ + +class SummerschoolTimestepManager : +public TimestepManager +{ +public: + double reactionOnlyDt; + bool lastTimestepReactionOnly; + SummerschoolTimestepManager(const Dune::ParameterTree & param, Params_Time& time_, int verbosity) : + TimestepManager(param, time_, verbosity) + { + reactionOnlyDt = param.get("reactionOnlyDt",(double)30); + lastTimestepReactionOnly = false; + } + + template<typename REACTION_NEWTON, typename VTKWRITER> + int doReactionOnlyTimestep(REACTION_NEWTON& reaction_newton, VTKWRITER& vtkwriter) + { + try + { + if (verb > 1) std::cout << "= Begin newtonapply REACTION:" << std::endl; + + double tmpdt = time.dt; + time.dt = reactionOnlyDt; + reaction_newton.apply(); + time.dt = tmpdt; + } + catch(...) + { + std::cout << "===============================" << std::endl; + std::cout << "Problem with Newton Solver, aborting :(" << std::endl; + std::cout << "===============================" << std::endl; + return -1; + } + + lastTimestepReactionOnly = true; + time.t += reactionOnlyDt; + + if( time.t < saveintervallstart || time.t>lastsave+2*saveintervall ) // Write reaction steps only if there are no other steps inbetween + { + lastsave = time.t; + vtkwriter.write(time.t,Dune::VTK::ascii); + } + return 1; + } + +};