diff --git a/src/mynonlinearity.cc b/src/mynonlinearity.cc
index b29e8bcaae9ef6e82699ab6218c48b1c7191858e..1a09904e61cd4ab9759b42c7ecbe0b2a2e9af2b6 100644
--- a/src/mynonlinearity.cc
+++ b/src/mynonlinearity.cc
@@ -13,7 +13,8 @@
 
 #include "properscalarincreasingconvexfunction.hh"
 
-template <int dimension, class OuterFunction = TrivialFunction>
+namespace Dune {
+template <int dimension, class OuterFunction = Dune::TrivialFunction>
 class MyNonlinearity {
 public:
   typedef Dune::FieldVector<double, dimension> SmallVector;
@@ -52,3 +53,4 @@ class MyNonlinearity {
 private:
   OuterFunction func_;
 };
+}
diff --git a/src/properscalarincreasingconvexfunction.hh b/src/properscalarincreasingconvexfunction.hh
index 09af713c5da1df107ce66413e224380038ec6cde..6499f7b2f83498f9a5844cd42c68a32125e96f7e 100644
--- a/src/properscalarincreasingconvexfunction.hh
+++ b/src/properscalarincreasingconvexfunction.hh
@@ -3,6 +3,7 @@
 #ifndef PROPER_SCALAR_INCREASING_CONVEX_FUNCTION_HH
 #define PROPER_SCALAR_INCREASING_CONVEX_FUNCTION_HH
 
+namespace Dune {
 class ProperScalarIncreasingConvexFunction {
 public:
   virtual double operator()(const double s) const = 0;
@@ -27,5 +28,5 @@ class TrivialFunction : public ProperScalarIncreasingConvexFunction {
 
   double rightDifferential(const double) const { return 0; }
 };
-
+}
 #endif
diff --git a/src/samplefunctional.hh b/src/samplefunctional.hh
index 0d16b7015efdd26020b8f7bc991c02ef2b03230d..2cfdb57a60367fd001a72c614056ae78d8b37963 100644
--- a/src/samplefunctional.hh
+++ b/src/samplefunctional.hh
@@ -11,6 +11,8 @@
 #include "mynonlinearity.cc"
 #include "properscalarincreasingconvexfunction.hh"
 
+namespace Dune {
+
 template <int dimension, class Function = TrivialFunction>
 class SampleFunctional {
 public:
@@ -139,5 +141,5 @@ void minimise(const Functional J, const typename Functional::SmallVector x,
   corr = descDir;
   corr *= stepsize;
 }
-
+}
 #endif
diff --git a/src/test-gradient-method.cc b/src/test-gradient-method.cc
index 3c2fba4b8bdddc5d7616760bf2919508487addc5..9174af838a2d0df937e48f0e81f2a3f7d8a7cc45 100644
--- a/src/test-gradient-method.cc
+++ b/src/test-gradient-method.cc
@@ -10,12 +10,13 @@
 
 template <int dim, class Function>
 void functionTester(
-    SampleFunctional<dim, Function> J,
-    typename SampleFunctional<dim, Function>::SmallVector &start, size_t runs) {
-  typename SampleFunctional<dim, Function>::SmallVector correction;
+    Dune::SampleFunctional<dim, Function> J,
+    typename Dune::SampleFunctional<dim, Function>::SmallVector &start,
+    size_t runs) {
+  typename Dune::SampleFunctional<dim, Function>::SmallVector correction;
   std::cout << "Old value: J(...) = " << J(start) << std::endl;
   for (size_t i = 1; i <= runs; ++i) {
-    minimise(J, start, correction);
+    Dune::minimise(J, start, correction);
     start += correction;
     if (i != runs)
       std::cout << "New value: J(...) = " << J(start) << std::endl;
@@ -25,7 +26,7 @@ void functionTester(
 
 void testSampleFunction() {
   int const dim = 2;
-  typedef SampleFunctional<dim, SampleFunction> SampleFunctional;
+  typedef Dune::SampleFunctional<dim, Dune::SampleFunction> SampleFunctional;
 
   SampleFunctional::SmallMatrix A;
   A[0][0] = 3;
@@ -46,7 +47,7 @@ void testSampleFunction() {
 
 void testTrivialFunction() {
   int const dim = 2;
-  typedef SampleFunctional<dim> SampleFunctional;
+  typedef Dune::SampleFunctional<dim> SampleFunctional;
 
   SampleFunctional::SmallMatrix A;
   A[0][0] = 3;