diff --git a/Documentation/ProjectFile/properties/property/GeneralWaterVapourLatentHeat/c_GeneralWaterVapourLatentHeat.md b/Documentation/ProjectFile/properties/property/GeneralWaterVapourLatentHeat/c_GeneralWaterVapourLatentHeat.md
deleted file mode 100644
index b37b7225ae1c5156988d3bada7dd999b2ae2203b..0000000000000000000000000000000000000000
--- a/Documentation/ProjectFile/properties/property/GeneralWaterVapourLatentHeat/c_GeneralWaterVapourLatentHeat.md
+++ /dev/null
@@ -1 +0,0 @@
-\copydoc MaterialPropertyLib::GeneralWaterVapourLatentHeat
diff --git a/Documentation/ProjectFile/properties/property/WaterVapourLatentHeatWithCriticalTemperature/c_WaterVapourLatentHeatWithCriticalTemperature.md b/Documentation/ProjectFile/properties/property/WaterVapourLatentHeatWithCriticalTemperature/c_WaterVapourLatentHeatWithCriticalTemperature.md
new file mode 100644
index 0000000000000000000000000000000000000000..4cac4c1fc2ff979539a3ed5f86644032d1f15fe3
--- /dev/null
+++ b/Documentation/ProjectFile/properties/property/WaterVapourLatentHeatWithCriticalTemperature/c_WaterVapourLatentHeatWithCriticalTemperature.md
@@ -0,0 +1 @@
+\copydoc MaterialPropertyLib::WaterVapourLatentHeatWithCriticalTemperature
diff --git a/Documentation/images/general_latent_heat_water_vapour.png b/Documentation/images/general_latent_heat_water_vapour.png
deleted file mode 100644
index 5c29724d82ba1055abbe53a04871eb2947b876c1..0000000000000000000000000000000000000000
Binary files a/Documentation/images/general_latent_heat_water_vapour.png and /dev/null differ
diff --git a/Documentation/images/latent_heat_water_vapour_with_critical_T.png b/Documentation/images/latent_heat_water_vapour_with_critical_T.png
new file mode 100644
index 0000000000000000000000000000000000000000..1560c9baaa0075a69654384cb5991dca21f8bfaa
Binary files /dev/null and b/Documentation/images/latent_heat_water_vapour_with_critical_T.png differ
diff --git a/MaterialLib/MPL/CreateProperty.cpp b/MaterialLib/MPL/CreateProperty.cpp
index 7c74fbc4aedb9f0f6c13e5d30ac51c03b78a9dc1..789572824f6553bc25a17c17476b3b4592ba9500 100644
--- a/MaterialLib/MPL/CreateProperty.cpp
+++ b/MaterialLib/MPL/CreateProperty.cpp
@@ -247,9 +247,10 @@ std::unique_ptr<MaterialPropertyLib::Property> createProperty(
         return createLinearWaterVapourLatentHeat(config);
     }
 
-    if (boost::iequals(property_type, "GeneralWaterVapourLatentHeat"))
+    if (boost::iequals(property_type,
+                       "WaterVapourLatentHeatWithCriticalTemperature"))
     {
-        return createGeneralWaterVapourLatentHeat(config);
+        return createWaterVapourLatentHeatWithCriticalTemperature(config);
     }
 
     // If none of the above property types are found, OGS throws an error.
diff --git a/MaterialLib/MPL/Properties/CreateProperties.h b/MaterialLib/MPL/Properties/CreateProperties.h
index 7f1dd0449f0ec202d1fa42a988cad45644ae0a4e..705477492ac97a86837bb3a80d3eb19b505d8311 100644
--- a/MaterialLib/MPL/Properties/CreateProperties.h
+++ b/MaterialLib/MPL/Properties/CreateProperties.h
@@ -39,8 +39,8 @@
 #include "CreateStrainDependentPermeability.h"
 #include "CreateTransportPorosityFromMassBalance.h"
 #include "Density/CreateWaterVapourDensity.h"
-#include "Enthalpy/CreateGeneralWaterVapourLatentHeat.h"
 #include "Enthalpy/CreateLinearWaterVapourLatentHeat.h"
+#include "Enthalpy/CreateWaterVapourLatentHeatWithCriticalTemperature.h"
 #include "RelativePermeability/CreateRelPermBrooksCorey.h"
 #include "RelativePermeability/CreateRelPermBrooksCoreyNonwettingPhase.h"
 #include "RelativePermeability/CreateRelPermLiakopoulos.h"
diff --git a/MaterialLib/MPL/Properties/Enthalpy/CreateGeneralWaterVapourLatentHeat.cpp b/MaterialLib/MPL/Properties/Enthalpy/CreateWaterVapourLatentHeatWithCriticalTemperature.cpp
similarity index 56%
rename from MaterialLib/MPL/Properties/Enthalpy/CreateGeneralWaterVapourLatentHeat.cpp
rename to MaterialLib/MPL/Properties/Enthalpy/CreateWaterVapourLatentHeatWithCriticalTemperature.cpp
index 23f007a400ecb819b239836bcd72814f79681d9c..febe85594de7998582b312280d03f790df225ed7 100644
--- a/MaterialLib/MPL/Properties/Enthalpy/CreateGeneralWaterVapourLatentHeat.cpp
+++ b/MaterialLib/MPL/Properties/Enthalpy/CreateWaterVapourLatentHeatWithCriticalTemperature.cpp
@@ -9,27 +9,28 @@
  * Created on March 19, 2021, 11:51 AM
  */
 
-#include "CreateGeneralWaterVapourLatentHeat.h"
+#include "CreateWaterVapourLatentHeatWithCriticalTemperature.h"
 
 #include "BaseLib/ConfigTree.h"
-#include "GeneralWaterVapourLatentHeat.h"
 #include "MaterialLib/MPL/Property.h"
+#include "WaterVapourLatentHeatWithCriticalTemperature.h"
 
 namespace MaterialPropertyLib
 {
-std::unique_ptr<Property> createGeneralWaterVapourLatentHeat(
+std::unique_ptr<Property> createWaterVapourLatentHeatWithCriticalTemperature(
     BaseLib::ConfigTree const& config)
 {
     //! \ogs_file_param{properties__property__type}
-    config.checkConfigParameter("type", "GeneralWaterVapourLatentHeat");
-    DBUG("Create GeneralWaterVapourLatentHeat phase property");
+    config.checkConfigParameter("type",
+                                "WaterVapourLatentHeatWithCriticalTemperature");
+    DBUG("Create WaterVapourLatentHeatWithCriticalTemperature phase property");
 
     // Second access for storage.
     //! \ogs_file_param{properties__property__name}
     auto property_name = config.peekConfigParameter<std::string>("name");
 
-    //! \ogs_file_param_special{properties__property__GeneralWaterVapourLatentHeat}
-    return std::make_unique<GeneralWaterVapourLatentHeat>(
+    //! \ogs_file_param_special{properties__property__WaterVapourLatentHeatWithCriticalTemperature}
+    return std::make_unique<WaterVapourLatentHeatWithCriticalTemperature>(
         std::move(property_name));
 }
 }  // namespace MaterialPropertyLib
diff --git a/MaterialLib/MPL/Properties/Enthalpy/CreateGeneralWaterVapourLatentHeat.h b/MaterialLib/MPL/Properties/Enthalpy/CreateWaterVapourLatentHeatWithCriticalTemperature.h
similarity index 86%
rename from MaterialLib/MPL/Properties/Enthalpy/CreateGeneralWaterVapourLatentHeat.h
rename to MaterialLib/MPL/Properties/Enthalpy/CreateWaterVapourLatentHeatWithCriticalTemperature.h
index bc85416ca24b521ccbdff452496cd151f8666748..9fffea41420f7cbaf7d8579d434d663c4fd1f783 100644
--- a/MaterialLib/MPL/Properties/Enthalpy/CreateGeneralWaterVapourLatentHeat.h
+++ b/MaterialLib/MPL/Properties/Enthalpy/CreateWaterVapourLatentHeatWithCriticalTemperature.h
@@ -21,6 +21,6 @@ class ConfigTree;
 namespace MaterialPropertyLib
 {
 class Property;
-std::unique_ptr<Property> createGeneralWaterVapourLatentHeat(
+std::unique_ptr<Property> createWaterVapourLatentHeatWithCriticalTemperature(
     BaseLib::ConfigTree const& config);
 }  // namespace MaterialPropertyLib
diff --git a/MaterialLib/MPL/Properties/Enthalpy/GeneralWaterVapourLatentHeat.cpp b/MaterialLib/MPL/Properties/Enthalpy/WaterVapourLatentHeatWithCriticalTemperature.cpp
similarity index 90%
rename from MaterialLib/MPL/Properties/Enthalpy/GeneralWaterVapourLatentHeat.cpp
rename to MaterialLib/MPL/Properties/Enthalpy/WaterVapourLatentHeatWithCriticalTemperature.cpp
index 44d13cb15d9f27d99e05c93f91bff81424983fa5..34755be300e8fcc298bde98e5b54c471a4cae6c5 100644
--- a/MaterialLib/MPL/Properties/Enthalpy/GeneralWaterVapourLatentHeat.cpp
+++ b/MaterialLib/MPL/Properties/Enthalpy/WaterVapourLatentHeatWithCriticalTemperature.cpp
@@ -9,7 +9,7 @@
  * Created on March 19, 2021, 11:49 AM
  */
 
-#include "GeneralWaterVapourLatentHeat.h"
+#include "WaterVapourLatentHeatWithCriticalTemperature.h"
 
 #include <algorithm>
 #include <array>
@@ -28,7 +28,7 @@ static std::array<double, 3> constexpr a_exp = {0.3333333333333333, 0.79,
 static std::array<double, 5> constexpr b = {
     -28989.28947, -19797.03646, 28403.32283, -30382.306422, 15210.380};
 
-PropertyDataType GeneralWaterVapourLatentHeat::value(
+PropertyDataType WaterVapourLatentHeatWithCriticalTemperature::value(
     const VariableArray& variable_array,
     const ParameterLib::SpatialPosition& /*pos*/, const double /*t*/,
     const double /*dt*/) const
@@ -60,7 +60,7 @@ PropertyDataType GeneralWaterVapourLatentHeat::value(
     return 1000.0 * L_w;
 }
 
-PropertyDataType GeneralWaterVapourLatentHeat::dValue(
+PropertyDataType WaterVapourLatentHeatWithCriticalTemperature::dValue(
     VariableArray const& variable_array, Variable const primary_variable,
     ParameterLib::SpatialPosition const& /*pos*/, double const /*t*/,
     double const /*dt*/) const
@@ -97,7 +97,8 @@ PropertyDataType GeneralWaterVapourLatentHeat::dValue(
     }
 
     OGS_FATAL(
-        "GeneralWaterVapourLatentHeat::dValue is implemented for "
+        "WaterVapourLatentHeatWithCriticalTemperature::dValue is implemented "
+        "for "
         "the derivative with respect to temperature only.");
 }
 
diff --git a/MaterialLib/MPL/Properties/Enthalpy/GeneralWaterVapourLatentHeat.h b/MaterialLib/MPL/Properties/Enthalpy/WaterVapourLatentHeatWithCriticalTemperature.h
similarity index 85%
rename from MaterialLib/MPL/Properties/Enthalpy/GeneralWaterVapourLatentHeat.h
rename to MaterialLib/MPL/Properties/Enthalpy/WaterVapourLatentHeatWithCriticalTemperature.h
index 94a604b812ddf8115c06609527f1c2abbde32ce8..fc148c8fe14295bb59879dd724aec1285b93aff0 100644
--- a/MaterialLib/MPL/Properties/Enthalpy/GeneralWaterVapourLatentHeat.h
+++ b/MaterialLib/MPL/Properties/Enthalpy/WaterVapourLatentHeatWithCriticalTemperature.h
@@ -19,7 +19,8 @@ namespace MaterialPropertyLib
 class Phase;
 
 /**
- * \brief A general latent heat model of vaporisation of water.
+ * \brief A latent heat model of vaporisation of water considering the critical
+ *  temperature.
  *
  *  The model uses an equation for a general expression of the latent heat of
  *  vaporisation of water in the vicinity of and far away from the critical
@@ -53,17 +54,13 @@ class Phase;
  *  MaterialPropertyLib::LinearWaterVapourLatentHeat
  *  is given in the following figure.
  *
- *  \image{inline} html general_latent_heat_water_vapour.png ""
- *
- *  Based on the comparison, a conclusion can be drawn such that
- *  the linear model can be applied for the applications with temperature
- *  below 400 K.
+ *  \image{inline} html latent_heat_water_vapour_with_critical_T.png ""
  *
  */
-class GeneralWaterVapourLatentHeat final : public Property
+class WaterVapourLatentHeatWithCriticalTemperature final : public Property
 {
 public:
-    explicit GeneralWaterVapourLatentHeat(std::string name)
+    explicit WaterVapourLatentHeatWithCriticalTemperature(std::string name)
     {
         name_ = std::move(name);
     }
@@ -73,7 +70,8 @@ public:
         if (!std::holds_alternative<Phase*>(scale_))
         {
             OGS_FATAL(
-                "The property 'GeneralWaterVapourLatentHeat' is "
+                "The property 'WaterVapourLatentHeatWithCriticalTemperature' "
+                "is "
                 "implemented on the 'phase' scale only.");
         }
     }
diff --git a/MaterialLib/MPL/Properties/Properties.h b/MaterialLib/MPL/Properties/Properties.h
index e85caf2d1787cf1e3027dc4599aa4566e69bdda8..466e88f407384aeb28d64b1c62e8277949f3b74f 100644
--- a/MaterialLib/MPL/Properties/Properties.h
+++ b/MaterialLib/MPL/Properties/Properties.h
@@ -24,8 +24,8 @@
 #include "DupuitPermeability.h"
 #include "EffectiveThermalConductivityPorosityMixing.h"
 #include "EmbeddedFracturePermeability.h"
-#include "Enthalpy/GeneralWaterVapourLatentHeat.h"
 #include "Enthalpy/LinearWaterVapourLatentHeat.h"
+#include "Enthalpy/WaterVapourLatentHeatWithCriticalTemperature.h"
 #include "Exponential.h"
 #include "GasPressureDependentPermeability.h"
 #include "IdealGasLaw.h"
diff --git a/Tests/MaterialLib/TestMPLGeneralWaterVapourLatentHeat.cpp b/Tests/MaterialLib/TestMPLWaterVapourLatentHeatWithCriticalTemperature.cpp
similarity index 93%
rename from Tests/MaterialLib/TestMPLGeneralWaterVapourLatentHeat.cpp
rename to Tests/MaterialLib/TestMPLWaterVapourLatentHeatWithCriticalTemperature.cpp
index 6982863accd8689229883f4d5b31d01ba427afbc..e62095115b4b1e4134da7b402f2c7c960402d49f 100644
--- a/Tests/MaterialLib/TestMPLGeneralWaterVapourLatentHeat.cpp
+++ b/Tests/MaterialLib/TestMPLWaterVapourLatentHeatWithCriticalTemperature.cpp
@@ -15,21 +15,22 @@
 #include <cmath>
 #include <limits>
 
-#include "MaterialLib/MPL/Properties/Enthalpy/CreateGeneralWaterVapourLatentHeat.h"
+#include "MaterialLib/MPL/Properties/Enthalpy/CreateWaterVapourLatentHeatWithCriticalTemperature.h"
 #include "MaterialLib/PhysicalConstant.h"
 #include "TestMPL.h"
 
-TEST(MaterialPropertyLib, GeneralWaterVapourLatentHeat)
+TEST(MaterialPropertyLib, WaterVapourLatentHeatWithCriticalTemperature)
 {
     char const xml[] =
         "<property>"
         "   <name>latent_heat</name>"
-        "   <type>GeneralWaterVapourLatentHeat</type>"
+        "   <type>WaterVapourLatentHeatWithCriticalTemperature</type>"
         "</property>";
 
     std::unique_ptr<MaterialPropertyLib::Property> const property_ptr =
         Tests::createTestProperty(
-            xml, MaterialPropertyLib::createGeneralWaterVapourLatentHeat);
+            xml, MaterialPropertyLib::
+                     createWaterVapourLatentHeatWithCriticalTemperature);
     MaterialPropertyLib::Property const& property = *property_ptr;
 
     MaterialPropertyLib::VariableArray variable_array;