diff --git a/dune/tectonic/globalnonlinearity.hh b/dune/tectonic/globalfriction.hh
similarity index 94%
rename from dune/tectonic/globalnonlinearity.hh
rename to dune/tectonic/globalfriction.hh
index 60dde9b4bb1ed1501d7c4fba27069bf11656e6b2..418a9b49a30538f9e91a73c7175834f133faff6b 100644
--- a/dune/tectonic/globalnonlinearity.hh
+++ b/dune/tectonic/globalfriction.hh
@@ -1,5 +1,5 @@
-#ifndef DUNE_TECTONIC_GLOBALNONLINEARITY_HH
-#define DUNE_TECTONIC_GLOBALNONLINEARITY_HH
+#ifndef DUNE_TECTONIC_GLOBALFRICTION_HH
+#define DUNE_TECTONIC_GLOBALFRICTION_HH
 
 #include <dune/common/fmatrix.hh>
 #include <dune/common/fvector.hh>
@@ -11,7 +11,7 @@
 
 #include "localfriction.hh"
 
-template <class Matrix, class Vector> class GlobalNonlinearity {
+template <class Matrix, class Vector> class GlobalFriction {
 protected:
   using ScalarVector = Dune::BlockVector<Dune::FieldVector<double, 1>>;
 
diff --git a/dune/tectonic/globalruinanonlinearity.hh b/dune/tectonic/globalruinanonlinearity.hh
index 69c751b46ae3e4ee150a553c97233c0ef061ed09..8045d25401549280fb601118296af7ce8cc242a2 100644
--- a/dune/tectonic/globalruinanonlinearity.hh
+++ b/dune/tectonic/globalruinanonlinearity.hh
@@ -12,17 +12,17 @@
 
 #include <dune/tectonic/globalfrictiondata.hh>
 
-#include "globalnonlinearity.hh"
+#include "globalfriction.hh"
 #include "frictionpotential.hh"
 
 template <class Matrix, class Vector, class GridView>
-class GlobalRuinaNonlinearity : public GlobalNonlinearity<Matrix, Vector> {
+class GlobalRuinaNonlinearity : public GlobalFriction<Matrix, Vector> {
 public:
-  using GlobalNonlinearity<Matrix, Vector>::block_size;
-  using typename GlobalNonlinearity<Matrix, Vector>::Friction;
+  using GlobalFriction<Matrix, Vector>::block_size;
+  using typename GlobalFriction<Matrix, Vector>::Friction;
 
 private:
-  using typename GlobalNonlinearity<Matrix, Vector>::ScalarVector;
+  using typename GlobalFriction<Matrix, Vector>::ScalarVector;
 
 public:
   GlobalRuinaNonlinearity(BoundaryPatch<GridView> const &frictionalBoundary,
diff --git a/dune/tectonic/myblockproblem.hh b/dune/tectonic/myblockproblem.hh
index 3926e0ba57343501b3134d2314359d8d15ea6a00..f4b17972e319ffd0731078a1528beebdc3105a00 100644
--- a/dune/tectonic/myblockproblem.hh
+++ b/dune/tectonic/myblockproblem.hh
@@ -14,7 +14,7 @@
 #include <dune/tnnmg/problem-classes/bisection.hh>
 #include <dune/tnnmg/problem-classes/blocknonlineargsproblem.hh>
 
-#include "globalnonlinearity.hh"
+#include "globalfriction.hh"
 #include "minimisation.hh"
 #include "mydirectionalconvexfunction.hh"
 #include "quadraticenergy.hh"
@@ -106,7 +106,7 @@ class MyBlockProblem : /* NOT PUBLIC */ BlockNonlinearGSProblem<ConvexProblem> {
     v /= vnorm; // Rescale for numerical stability
 
     MyDirectionalConvexFunction<
-        GlobalNonlinearity<MatrixType, VectorType>> const
+        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.cc b/src/sand-wedge.cc
index ec95af912e27fa9a4a55b5b90e29ca44260e9ab2..7dd1555a41238d2a4a190def1decea308bd1755a 100644
--- a/src/sand-wedge.cc
+++ b/src/sand-wedge.cc
@@ -65,7 +65,7 @@
 #include <dune/tnnmg/problem-classes/convexproblem.hh>
 
 #include <dune/tectonic/myblockproblem.hh>
-#include <dune/tectonic/globalnonlinearity.hh>
+#include <dune/tectonic/globalfriction.hh>
 
 #include "assemblers.hh"
 #include "tobool.hh"
@@ -249,9 +249,9 @@ int main(int argc, char *argv[]) {
                                      body.getYoungModulus(),
                                      body.getPoissonRatio(), u_initial);
     MyGlobalFrictionData<dims> frictionInfo(parset.sub("boundary.friction"));
-    auto myGlobalNonlinearity = myAssembler.assembleFrictionNonlinearity(
+    auto myGlobalFriction = myAssembler.assembleFrictionNonlinearity(
         frictionalBoundary, frictionInfo, normalStress);
-    myGlobalNonlinearity->updateAlpha(alpha_initial);
+    myGlobalFriction->updateAlpha(alpha_initial);
 
     Vector v_initial(fineVertexCount);
     v_initial = 0.0;
@@ -273,7 +273,7 @@ int main(int argc, char *argv[]) {
         Arithmetic::addProduct(accelerationRHS, A, u_initial);
         Arithmetic::addProduct(accelerationRHS, C, v_initial);
         // NOTE: We assume differentiability of Psi at 0 here!
-        myGlobalNonlinearity->addGradient(v_initial, accelerationRHS);
+        myGlobalFriction->addGradient(v_initial, accelerationRHS);
         accelerationRHS *= -1.0;
         accelerationRHS += ell;
       }
@@ -309,7 +309,7 @@ int main(int argc, char *argv[]) {
       verticalSurfaceWriter.writeKinetics(_u, _v);
 
       ScalarVector c;
-      myGlobalNonlinearity->coefficientOfFriction(_v, c);
+      myGlobalFriction->coefficientOfFriction(_v, c);
       frictionWriter.writeKinetics(_u, _v);
       frictionWriter.writeOther(c, _alpha);
     };
@@ -334,7 +334,7 @@ int main(int argc, char *argv[]) {
     // Set up TNNMG solver
     using NonlinearFactory =
         SolverFactory<dims, MyBlockProblem<ConvexProblem<
-                                GlobalNonlinearity<Matrix, Vector>, Matrix>>,
+                                GlobalFriction<Matrix, Vector>, Matrix>>,
                       Grid>;
     NonlinearFactory factory(parset.sub("solver.tnnmg"), refinements, *grid,
                              dirichletNodes);
@@ -396,11 +396,11 @@ int main(int argc, char *argv[]) {
       size_t iterationCounter;
       auto solveVelocityProblem = [&](Vector &_velocityIterate,
                                       ScalarVector const &_alpha) {
-        myGlobalNonlinearity->updateAlpha(_alpha);
+        myGlobalFriction->updateAlpha(_alpha);
 
         // NIT: Do we really need to pass u here?
         typename NonlinearFactory::ConvexProblem convexProblem(
-            1.0, velocityMatrix, *myGlobalNonlinearity, velocityRHS,
+            1.0, velocityMatrix, *myGlobalFriction, velocityRHS,
             _velocityIterate);
         typename NonlinearFactory::BlockProblem velocityProblem(parset,
                                                                 convexProblem);
diff --git a/src/solverfactory_tmpl.cc b/src/solverfactory_tmpl.cc
index d84065e3cc7c347d0e2f7924f5e56fc32d990027..db6ecb8945d4c05a1d5ba5425f6fb7a463710716 100644
--- a/src/solverfactory_tmpl.cc
+++ b/src/solverfactory_tmpl.cc
@@ -9,12 +9,12 @@
 #include <dune/tnnmg/problem-classes/blocknonlineartnnmgproblem.hh>
 #include <dune/tnnmg/problem-classes/convexproblem.hh>
 
-#include <dune/tectonic/globalnonlinearity.hh>
+#include <dune/tectonic/globalfriction.hh>
 #include <dune/tectonic/myblockproblem.hh>
 
 template class SolverFactory<
     DIM,
-    MyBlockProblem<ConvexProblem<GlobalNonlinearity<Matrix, Vector>, Matrix>>,
+    MyBlockProblem<ConvexProblem<GlobalFriction<Matrix, Vector>, Matrix>>,
     Grid>;
 template class SolverFactory<
     DIM, BlockNonlinearTNNMGProblem<