diff --git a/ProcessLib/BoundaryCondition/BoundaryCondition.h b/ProcessLib/BoundaryCondition/BoundaryCondition.h
index dc9088f9cf21a64cd5aba5bf051df80b1c88bf10..08c89fb5386f131145c0cb293c7ab8ec76fce8bd 100644
--- a/ProcessLib/BoundaryCondition/BoundaryCondition.h
+++ b/ProcessLib/BoundaryCondition/BoundaryCondition.h
@@ -62,8 +62,6 @@ public:
         // Therefore there is nothing to do here.
     }
 
-    virtual void preTimestep(const double /*t*/) {}
-
     virtual ~BoundaryCondition() = default;
 };
 
diff --git a/ProcessLib/BoundaryCondition/BoundaryConditionCollection.cpp b/ProcessLib/BoundaryCondition/BoundaryConditionCollection.cpp
index caedc8e305d3b4f868d60cb49c256a4fa7a8ab1c..5c3790dc09b34d05a5e126d9f96917b4b4eca971 100644
--- a/ProcessLib/BoundaryCondition/BoundaryConditionCollection.cpp
+++ b/ProcessLib/BoundaryCondition/BoundaryConditionCollection.cpp
@@ -43,10 +43,4 @@ void BoundaryConditionCollection::addBCsForProcessVariables(
     // object if needed.
     _dirichlet_bcs.resize(_boundary_conditions.size());
 }
-
-void BoundaryConditionCollection::preTimestep(const double t)
-{
-    for (auto& bc : _boundary_conditions)
-        bc->preTimestep(t);
-}
 }
diff --git a/ProcessLib/BoundaryCondition/BoundaryConditionCollection.h b/ProcessLib/BoundaryCondition/BoundaryConditionCollection.h
index 827e01ba96b7ac2586ab7142bb12590c9f91155d..fa4e4c5927bffe97335a763dcd8c94d8e811ef5f 100644
--- a/ProcessLib/BoundaryCondition/BoundaryConditionCollection.h
+++ b/ProcessLib/BoundaryCondition/BoundaryConditionCollection.h
@@ -44,8 +44,6 @@ public:
         NumLib::LocalToGlobalIndexMap const& dof_table,
         unsigned const integration_order);
 
-    void preTimestep(const double t);
-
 private:
     mutable std::vector<NumLib::IndexValueVector<GlobalIndexType>> _dirichlet_bcs;
     std::vector<std::unique_ptr<BoundaryCondition>> _boundary_conditions;
diff --git a/ProcessLib/BoundaryCondition/DirichletBoundaryCondition.cpp b/ProcessLib/BoundaryCondition/DirichletBoundaryCondition.cpp
index 66375c182dc8c106ec3b7773c24322b2881f632d..15dc308530f19f9a942e180221789ffc48ace44c 100644
--- a/ProcessLib/BoundaryCondition/DirichletBoundaryCondition.cpp
+++ b/ProcessLib/BoundaryCondition/DirichletBoundaryCondition.cpp
@@ -16,10 +16,6 @@
 
 namespace ProcessLib
 {
-void DirichletBoundaryCondition::preTimestep(const double /*t*/)
-{
-}
-
 void DirichletBoundaryCondition::getEssentialBCValues(
     const double t, NumLib::IndexValueVector<GlobalIndexType>& bc_values) const
 {
diff --git a/ProcessLib/BoundaryCondition/DirichletBoundaryCondition.h b/ProcessLib/BoundaryCondition/DirichletBoundaryCondition.h
index e494a706b057e587bc83002191c2e1f85d08edda..f4d33558bff3cc231adf4c82b6bbd959b84269fe 100644
--- a/ProcessLib/BoundaryCondition/DirichletBoundaryCondition.h
+++ b/ProcessLib/BoundaryCondition/DirichletBoundaryCondition.h
@@ -49,8 +49,6 @@ public:
         }
     }
 
-    void preTimestep(const double t) override;
-
     void getEssentialBCValues(
         const double t,
         NumLib::IndexValueVector<GlobalIndexType>& bc_values) const override;
diff --git a/ProcessLib/BoundaryCondition/NonuniformDirichletBoundaryCondition.h b/ProcessLib/BoundaryCondition/NonuniformDirichletBoundaryCondition.h
index 85c4a82e74e584b2d7638c4518959574ddc30d98..c08eb6b62d75447a179f88a2913010d77f547048 100644
--- a/ProcessLib/BoundaryCondition/NonuniformDirichletBoundaryCondition.h
+++ b/ProcessLib/BoundaryCondition/NonuniformDirichletBoundaryCondition.h
@@ -59,8 +59,6 @@ public:
         }
     }
 
-    void preTimestep(const double /*t*/) override {}
-
     void getEssentialBCValues(
         const double /*t*/,
         NumLib::IndexValueVector<GlobalIndexType>& bc_values) const override
diff --git a/ProcessLib/Process.cpp b/ProcessLib/Process.cpp
index bb23d059b4356b074bf79e0dce74f52512577a2e..afe758b7ebb500884aa67674dcffebbbb75dd260 100644
--- a/ProcessLib/Process.cpp
+++ b/ProcessLib/Process.cpp
@@ -245,7 +245,6 @@ void Process::preTimestep(GlobalVector const& x, const double t,
 
     MathLib::LinAlg::setLocalAccessibleVector(x);
     preTimestepConcreteProcess(x, t, delta_t);
-    _boundary_conditions.preTimestep(t);
 }
 
 void Process::postTimestep(GlobalVector const& x)