diff --git a/MaterialLib/MPL/Properties/Curve.cpp b/MaterialLib/MPL/Properties/Curve.cpp
index 7cb8dc8e0904bf9a289929dfb40d1b2cd72ea87b..3e3c0356938f077a00d78e3b6b6ed94167c56087 100644
--- a/MaterialLib/MPL/Properties/Curve.cpp
+++ b/MaterialLib/MPL/Properties/Curve.cpp
@@ -30,10 +30,15 @@ PropertyDataType Curve::value(VariableArray const& variable_array,
 }
 
 PropertyDataType Curve::dValue(VariableArray const& variable_array,
-                               Variable const /*primary_variable*/,
+                               Variable const primary_variable,
                                ParameterLib::SpatialPosition const& /*pos*/,
                                double const /*t*/, double const /*dt*/) const
 {
+    if (primary_variable != independent_variable_)
+    {
+        return 0.0;
+    }
+
     auto const x = std::get<double>(
         variable_array[static_cast<int>(independent_variable_)]);
     return curve_.getDerivative(x);