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;
+  }
+
+};