diff --git a/dune/tectonic/frictionpotential.hh b/dune/tectonic/frictionpotential.hh
index 272419c0fbdb189cf230c2125bf51aad45d158af..e3f1d27c92caec76d4d0065fac194e3d9f0614e1 100644
--- a/dune/tectonic/frictionpotential.hh
+++ b/dune/tectonic/frictionpotential.hh
@@ -9,7 +9,7 @@
 #include <dune/common/exceptions.hh>
 #include <dune/common/function.hh>
 
-#include "frictiondata.hh"
+#include <dune/tectonic/frictiondata.hh>
 
 class FrictionPotential {
 public:
diff --git a/dune/tectonic/globalfriction.hh b/dune/tectonic/globalfriction.hh
index 418a9b49a30538f9e91a73c7175834f133faff6b..579134e1073d5ca68369c2c2a72c97365ca7ad7d 100644
--- a/dune/tectonic/globalfriction.hh
+++ b/dune/tectonic/globalfriction.hh
@@ -9,7 +9,7 @@
 
 #include <dune/solvers/common/interval.hh>
 
-#include "localfriction.hh"
+#include <dune/tectonic/localfriction.hh>
 
 template <class Matrix, class Vector> class GlobalFriction {
 protected:
diff --git a/dune/tectonic/globalratestatefriction.hh b/dune/tectonic/globalratestatefriction.hh
index 1ec0701797e3e1da2e681b0e563f365dc63cf67c..0e30a7ba195ddb540e28e36a05ea084ed11e46e7 100644
--- a/dune/tectonic/globalratestatefriction.hh
+++ b/dune/tectonic/globalratestatefriction.hh
@@ -11,8 +11,8 @@
 #include <dune/istl/bvector.hh>
 
 #include <dune/tectonic/globalfrictiondata.hh>
+#include <dune/tectonic/globalfriction.hh>
 
-#include "globalfriction.hh"
 #include "frictionpotential.hh"
 
 template <class Matrix, class Vector, class GridView>
diff --git a/dune/tectonic/localfriction.hh b/dune/tectonic/localfriction.hh
index d780bf354352be5a945bb39d35d48a197efb6b2b..5cda30a6bca5ad82baf149dacb42782d45728bc5 100644
--- a/dune/tectonic/localfriction.hh
+++ b/dune/tectonic/localfriction.hh
@@ -10,7 +10,7 @@
 #include <dune/fufem/arithmetic.hh>
 #include <dune/solvers/common/interval.hh>
 
-#include "frictionpotential.hh"
+#include <dune/tectonic/frictionpotential.hh>
 
 template <size_t dimension> class LocalFriction {
 public:
diff --git a/dune/tectonic/minimisation.hh b/dune/tectonic/minimisation.hh
index 4d4b172b9d70b7c14a8aa9b3daeaf3b7df96fc47..fcb9106e658851cfd99e959d839426571b37fc05 100644
--- a/dune/tectonic/minimisation.hh
+++ b/dune/tectonic/minimisation.hh
@@ -9,7 +9,7 @@
 #include <dune/fufem/interval.hh>
 #include <dune/tnnmg/problem-classes/bisection.hh>
 
-#include "mydirectionalconvexfunction.hh"
+#include <dune/tectonic/mydirectionalconvexfunction.hh>
 
 // Warning: this exploits the property v*x = 0
 template <class Functional>
diff --git a/dune/tectonic/myblockproblem.hh b/dune/tectonic/myblockproblem.hh
index f4b17972e319ffd0731078a1528beebdc3105a00..177c6fba69bfae6b64361993f1b4326592544f94 100644
--- a/dune/tectonic/myblockproblem.hh
+++ b/dune/tectonic/myblockproblem.hh
@@ -14,10 +14,10 @@
 #include <dune/tnnmg/problem-classes/bisection.hh>
 #include <dune/tnnmg/problem-classes/blocknonlineargsproblem.hh>
 
-#include "globalfriction.hh"
-#include "minimisation.hh"
-#include "mydirectionalconvexfunction.hh"
-#include "quadraticenergy.hh"
+#include <dune/tectonic/globalfriction.hh>
+#include <dune/tectonic/minimisation.hh>
+#include <dune/tectonic/mydirectionalconvexfunction.hh>
+#include <dune/tectonic/quadraticenergy.hh>
 
 /** \brief Base class for problems where each block can be solved with a
  * modified gradient method */
@@ -105,8 +105,7 @@ class MyBlockProblem : /* NOT PUBLIC */ BlockNonlinearGSProblem<ConvexProblem> {
 
     v /= vnorm; // Rescale for numerical stability
 
-    MyDirectionalConvexFunction<
-        GlobalFriction<MatrixType, VectorType>> const
+    MyDirectionalConvexFunction<GlobalFriction<MatrixType, VectorType>> const
     psi(computeDirectionalA(problem_.A, v),
         computeDirectionalb(problem_.A, problem_.f, u, v), problem_.phi, u, v);
 
diff --git a/src/sand-wedge-data/special_writer.hh b/src/sand-wedge-data/special_writer.hh
index dfaa2243d93295b91e81ecb745fa8d6fefdab31f..07dfacf737fa8485afd4ba6726582efdf542ffe9 100644
--- a/src/sand-wedge-data/special_writer.hh
+++ b/src/sand-wedge-data/special_writer.hh
@@ -6,6 +6,7 @@
 
 #include <dune/common/fvector.hh>
 #include <dune/grid/utility/hierarchicsearch.hh>
+#include <dune/fufem/functions/virtualgridfunction.hh>
 
 #include "mygeometry.hh"
 
diff --git a/src/sand-wedge.cc b/src/sand-wedge.cc
index 7dd1555a41238d2a4a190def1decea308bd1755a..8c562f87413ec94e0c2ab062d3d71c5470d083df 100644
--- a/src/sand-wedge.cc
+++ b/src/sand-wedge.cc
@@ -43,7 +43,6 @@
 #pragma clang diagnostic pop
 
 #include <dune/grid/common/mcmgmapper.hh>
-#include <dune/grid/utility/structuredgridfactory.hh>
 #include <dune/istl/bcrsmatrix.hh>
 #include <dune/istl/bvector.hh>
 
@@ -54,7 +53,6 @@
 
 #include <dune/fufem/dunepython.hh>
 #include <dune/fufem/functions/basisgridfunction.hh>
-#include <dune/fufem/functionspacebases/p1nodalbasis.hh>
 #include <dune/fufem/sharedpointermap.hh>
 #include <dune/solvers/norms/energynorm.hh>
 #include <dune/solvers/norms/sumnorm.hh>
diff --git a/src/state.hh b/src/state.hh
index 1aed2528914cd7f11d9826b7f8dcee2b9a6105e1..cfa60f94021780f9394d218bf036ad540e910925 100644
--- a/src/state.hh
+++ b/src/state.hh
@@ -1,6 +1,8 @@
 #ifndef SRC_STATE_HH
 #define SRC_STATE_HH
 
+#include <memory>
+
 #include <dune/common/bitsetvector.hh>
 
 #include "enums.hh"
diff --git a/src/state/ageinglawstateupdater.hh b/src/state/ageinglawstateupdater.hh
index da2ed02da74f8b86a8a3b380d24faba0c86f74ad..abdb39f2bd712ff7269237ec5ebf133f2db99652 100644
--- a/src/state/ageinglawstateupdater.hh
+++ b/src/state/ageinglawstateupdater.hh
@@ -1,7 +1,7 @@
 #ifndef SRC_STATE_AGEINGLAWSTATEUPDATER_HH
 #define SRC_STATE_AGEINGLAWSTATEUPDATER_HH
 
-#include "tobool.hh"
+#include "../tobool.hh"
 #include "stateupdater.hh"
 
 template <class ScalarVector, class Vector>
diff --git a/src/state/sliplawstateupdater.hh b/src/state/sliplawstateupdater.hh
index 8f07fce69f25677d31ee0cdf1a30fdf307d82dc1..fa03bf700f06c0d707e7fad56470268fea555714 100644
--- a/src/state/sliplawstateupdater.hh
+++ b/src/state/sliplawstateupdater.hh
@@ -1,7 +1,7 @@
 #ifndef SRC_STATE_SLIPLAWSTATEUPDATER_HH
 #define SRC_STATE_SLIPLAWSTATEUPDATER_HH
 
-#include "tobool.hh"
+#include "../tobool.hh"
 #include "stateupdater.hh"
 
 template <class ScalarVector, class Vector>
diff --git a/src/timestepping.hh b/src/timestepping.hh
index b95dff8457b9fbb659c4cf8c6173c18f2a76dd25..71d99b69de6ee66fa8c2aae9f8299737941af5ba 100644
--- a/src/timestepping.hh
+++ b/src/timestepping.hh
@@ -1,6 +1,8 @@
 #ifndef SRC_TIMESTEPPING_HH
 #define SRC_TIMESTEPPING_HH
 
+#include <memory>
+
 #include "enums.hh"
 #include <dune/common/bitsetvector.hh>
 
diff --git a/src/tobool.hh b/src/tobool.hh
index da60e905cc36e8e9a92255ce1b68ca3653ced6b9..6f6996016a52a6666cd5de1f6bd3eee1cee8f246 100644
--- a/src/tobool.hh
+++ b/src/tobool.hh
@@ -1,6 +1,8 @@
 #ifndef SRC_TOBOOL_HH
 #define SRC_TOBOOL_HH
 
+#include <dune/common/bitsetvector.hh>
+
 template <class Alloc>
 bool toBool(Dune::BitSetVectorConstReference<1, Alloc> x) {
   return x[0];