diff --git a/ProcessLib/LiquidFlow/LiquidFlowLocalAssembler-impl.h b/ProcessLib/LiquidFlow/LiquidFlowLocalAssembler-impl.h
index 34c42024fdb6badc912870991fdd1e4e6221b3b1..388d69d93b906e1af1d220d0761bc35e245347d6 100644
--- a/ProcessLib/LiquidFlow/LiquidFlowLocalAssembler-impl.h
+++ b/ProcessLib/LiquidFlow/LiquidFlowLocalAssembler-impl.h
@@ -150,6 +150,15 @@ void LiquidFlowLocalAssembler<ShapeFunction, IntegrationMethod, GlobalDim>::
             fac * rho_g * sm.dNdx.transpose() * perm.col(gravitational_axis_id);
     }
 }
+
+template <typename ShapeFunction, typename IntegrationMethod,
+          unsigned GlobalDim>
+void LiquidFlowLocalAssembler<ShapeFunction, IntegrationMethod, GlobalDim>::
+    computeSecondaryVariable(std::vector<double> const& local_x)
+{
+  (void) local_x;
+}
+
 }  // end of namespace
 }  // end of namespace
 
diff --git a/ProcessLib/LiquidFlow/LiquidFlowLocalAssembler.h b/ProcessLib/LiquidFlow/LiquidFlowLocalAssembler.h
index 6b34deaa09d3a3d943147f8d9bb0672be49daf96..39a20ecf653cbb6877b664ddff1ee34c2ddb623b 100644
--- a/ProcessLib/LiquidFlow/LiquidFlowLocalAssembler.h
+++ b/ProcessLib/LiquidFlow/LiquidFlowLocalAssembler.h
@@ -85,6 +85,8 @@ public:
                   std::vector<double>& local_K_data,
                   std::vector<double>& local_b_data) override;
 
+    void computeSecondaryVariable(std::vector<double> const& local_x) override;
+
     Eigen::Map<const Eigen::RowVectorXd> getShapeMatrix(
         const unsigned integration_point) const override
     {
diff --git a/ProcessLib/LocalAssemblerInterface.cpp b/ProcessLib/LocalAssemblerInterface.cpp
index 5e572b76b0521637cdaedf49b57dfdbfc2f3bd43..6ce33e700734f74cd3c9d19f1f5131bc3d9962c1 100644
--- a/ProcessLib/LocalAssemblerInterface.cpp
+++ b/ProcessLib/LocalAssemblerInterface.cpp
@@ -26,6 +26,13 @@ void LocalAssemblerInterface::assembleWithJacobian(
         "assembler.");
 }
 
+void LocalAssemblerInterface::computeSecondaryVariable(std::vector<double> const& /*local_x*/)
+{
+    OGS_FATAL(
+        "computeSecondaryVariable(...) function is not implemented in the local "
+        "assembler.");
+}
+
 void LocalAssemblerInterface::preTimestep(
     std::size_t const mesh_item_id,
     NumLib::LocalToGlobalIndexMap const& dof_table, GlobalVector const& x,
diff --git a/ProcessLib/LocalAssemblerInterface.h b/ProcessLib/LocalAssemblerInterface.h
index fc0520fd0005a190e9c8a1ec06fbdcdf490f9322..83084e12bea1e5c62081635f8c1b6d8317966438 100644
--- a/ProcessLib/LocalAssemblerInterface.h
+++ b/ProcessLib/LocalAssemblerInterface.h
@@ -45,6 +45,8 @@ public:
                                       std::vector<double>& local_b_data,
                                       std::vector<double>& local_Jac_data);
 
+    virtual void computeSecondaryVariable(std::vector<double> const& local_x);
+
     virtual void preTimestep(std::size_t const mesh_item_id,
                              NumLib::LocalToGlobalIndexMap const& dof_table,
                              GlobalVector const& x, double const t,