diff --git a/Applications/ApplicationsLib/CMakeLists.txt b/Applications/ApplicationsLib/CMakeLists.txt
index 8ba2d863897854de0f68fe85313814a91fcdc697..731bd2c9fd443ee08a1c036decb9af45198282bd 100644
--- a/Applications/ApplicationsLib/CMakeLists.txt
+++ b/Applications/ApplicationsLib/CMakeLists.txt
@@ -14,7 +14,6 @@ target_link_libraries(
             MeshGeoToolsLib
             ParameterLib
             ProcessLib
-            spdlog::spdlog
             $<$<BOOL:${OGS_USE_PYTHON}>:pybind11::pybind11>
             $<$<BOOL:${OGS_USE_PETSC}>:petsc>
 )
diff --git a/Applications/DataExplorer/DataView/CMakeLists.txt b/Applications/DataExplorer/DataView/CMakeLists.txt
index e874467d194a3b1128c4571ddbd3562bbd469642..f45733542d1cd784faa108472d394c193eff88de 100644
--- a/Applications/DataExplorer/DataView/CMakeLists.txt
+++ b/Applications/DataExplorer/DataView/CMakeLists.txt
@@ -129,7 +129,6 @@ target_link_libraries(
             QtDiagramView
             QtStratView
             DataHolderLib
-            spdlog::spdlog
             Qt5::Core
             Qt5::Gui
 )
diff --git a/Applications/DataExplorer/DataView/DiagramView/CMakeLists.txt b/Applications/DataExplorer/DataView/DiagramView/CMakeLists.txt
index c39c4c5c99aa168856fd7373a458819182171bf9..9f84f92708539e9044fbb1f45f960848b84e8220 100644
--- a/Applications/DataExplorer/DataView/DiagramView/CMakeLists.txt
+++ b/Applications/DataExplorer/DataView/DiagramView/CMakeLists.txt
@@ -28,7 +28,6 @@ ogs_add_library(QtDiagramView ${SOURCES} ${HEADERS} ${UIS})
 target_include_directories(QtDiagramView PRIVATE ${CMAKE_CURRENT_SOURCE_DIR})
 target_link_libraries(
     QtDiagramView PRIVATE BaseLib GeoLib QtBase DataHolderLib Qt5::Gui
-                          spdlog::spdlog
 )
 
 add_autogen_include(QtDiagramView)
diff --git a/Applications/DataExplorer/VtkVis/CMakeLists.txt b/Applications/DataExplorer/VtkVis/CMakeLists.txt
index 2a5b6774077eeba6d4d90a126f30c71c7d4bcba3..de8cb98f63fa979dda27357139393ec5655f2b7e 100644
--- a/Applications/DataExplorer/VtkVis/CMakeLists.txt
+++ b/Applications/DataExplorer/VtkVis/CMakeLists.txt
@@ -161,7 +161,7 @@ endif() # GEOTIFF_FOUND
 
 target_link_libraries(
     VtkVis PUBLIC BaseLib GeoLib MeshLib DataHolderLib QtBase VtkVisFilter
-    PRIVATE MathLib ApplicationsFileIO Qt5::Gui spdlog::spdlog
+    PRIVATE MathLib ApplicationsFileIO Qt5::Gui
 )
 
 set_property(TARGET VtkVis PROPERTY FOLDER "DataExplorer")
diff --git a/Applications/DataHolderLib/CMakeLists.txt b/Applications/DataHolderLib/CMakeLists.txt
index a902c9c8d350cca1dd51e562abda58cca9e3b27c..d549a7e01eb603297de23e2432df1e23c6c48797 100644
--- a/Applications/DataHolderLib/CMakeLists.txt
+++ b/Applications/DataHolderLib/CMakeLists.txt
@@ -5,5 +5,5 @@ get_source_files(SOURCES_DataHolderLib)
 ogs_add_library(DataHolderLib ${SOURCES_DataHolderLib})
 
 target_link_libraries(
-    DataHolderLib PUBLIC GeoLib MeshLib PRIVATE BaseLib MathLib spdlog::spdlog
+    DataHolderLib PUBLIC GeoLib MeshLib PRIVATE BaseLib MathLib
 )
diff --git a/Applications/FileIO/CMakeLists.txt b/Applications/FileIO/CMakeLists.txt
index 1c1b53a79274a7b2563633dc5641672e0a60401a..93d91573bcaaf5efef35972f7d4d26b4a254ae20 100644
--- a/Applications/FileIO/CMakeLists.txt
+++ b/Applications/FileIO/CMakeLists.txt
@@ -32,7 +32,7 @@ target_link_libraries(
            $<$<BOOL:${OGS_BUILD_GUI}>:QtBase>
            $<$<TARGET_EXISTS:shp>:shp>
            $<$<TARGET_EXISTS:SwmmInterface>:SwmmInterface>
-    PRIVATE MeshLib GitInfoLib std::filesystem spdlog::spdlog
+    PRIVATE MeshLib GitInfoLib std::filesystem
 )
 
 configure_file(
diff --git a/BaseLib/ConfigTreeUtil.cpp b/BaseLib/ConfigTreeUtil.cpp
index daa2da2e40d2e59655c8988b31ab597a0b1e2e04..0ff2510ac3153446590fafd32fd433d268b3b7ae 100644
--- a/BaseLib/ConfigTreeUtil.cpp
+++ b/BaseLib/ConfigTreeUtil.cpp
@@ -156,14 +156,17 @@ void patchStream(std::string patch_file, std::stringstream& prj_stream)
         {
             OGS_FATAL(
                 "Error while patching prj file with patch file {:}. Only "
-                "'add', 'replace' and 'remove' elements are allowed!",
-                patch_file);
+                "'add', 'replace' and 'remove' elements are allowed! Got an "
+                "element '{:s}' on line {:d}.",
+                patch_file, node->name, node->line);
         }
 
         if (rc)
         {
-            OGS_FATAL("Error while patching prj file with patch file {:}.",
-                      patch_file);
+            OGS_FATAL(
+                "Error while patching prj file with patch file {:}. Error in "
+                "element '{:s}' on line {:d}.",
+                patch_file, node->name, node->line);
         }
     }
 
@@ -211,11 +214,18 @@ void readAndPatchPrj(std::stringstream& prj_stream, std::string& prj_file,
     }
 
     // read base prj file into stream
-    std::ifstream file(prj_file);
-    if (file)
+    if (std::ifstream file(prj_file); file)
     {
         prj_stream << file.rdbuf();
-        file.close();
+    }
+    else
+    {
+        if (!BaseLib::IsFileExisting(prj_file))
+        {
+            ERR("File {:s} does not exist.", prj_file);
+        }
+        DBUG("Stream state flags: {:b}.", file.rdstate());
+        OGS_FATAL("Could not open project file '{:s}' for reading.", prj_file);
     }
 
     // apply xml patches to stream
diff --git a/ChemistryLib/CMakeLists.txt b/ChemistryLib/CMakeLists.txt
index 1cfb5a3464e0bff0851b6f54209d981b9efbd789..3af57489f781257d1b48f3fe51d1dcc632f68bc9 100644
--- a/ChemistryLib/CMakeLists.txt
+++ b/ChemistryLib/CMakeLists.txt
@@ -8,7 +8,7 @@ append_source_files(SOURCES Common)
 ogs_add_library(ChemistryLib ${SOURCES})
 
 target_link_libraries(
-    ChemistryLib PUBLIC iphreeqc PRIVATE NumLib spdlog::spdlog
+    ChemistryLib PUBLIC iphreeqc PRIVATE NumLib
 )
 
 # See https://github.com/ufz/ogs/pull/2982#issuecomment-641086788
diff --git a/GeoLib/CMakeLists.txt b/GeoLib/CMakeLists.txt
index a86f60bcc7d1d09425ea9d278f55c97d2d306ad6..04263e0a20e5e693b523fc6d892ed526858c9e86 100644
--- a/GeoLib/CMakeLists.txt
+++ b/GeoLib/CMakeLists.txt
@@ -17,7 +17,7 @@ target_link_libraries(
     PUBLIC BaseLib MathLib $<$<BOOL:${OGS_BUILD_GUI}>:rapidxml>
            $<$<BOOL:${OGS_BUILD_GUI}>:Qt5::Xml>
            $<$<BOOL:${OGS_BUILD_GUI}>:Qt5::XmlPatterns>
-    PRIVATE tet spdlog::spdlog
+    PRIVATE tet
 )
 
 configure_file(
diff --git a/MaterialLib/CMakeLists.txt b/MaterialLib/CMakeLists.txt
index 6767d5f4dd544a0af4ab50a75b06c4e8a4124611..9cd0317ce3c6da9931f0c7f1032fa0a9d7f915f4 100644
--- a/MaterialLib/CMakeLists.txt
+++ b/MaterialLib/CMakeLists.txt
@@ -40,5 +40,5 @@ ogs_add_library(MaterialLib ${SOURCES})
 
 target_link_libraries(
     MaterialLib PUBLIC MaterialLib_SolidModels MaterialLib_FractureModels
-    PRIVATE MathLib MeshLib ParameterLib exprtk spdlog::spdlog
+    PRIVATE MathLib MeshLib ParameterLib exprtk
 )
diff --git a/MaterialLib/MPL/Properties/CreateProperties.h b/MaterialLib/MPL/Properties/CreateProperties.h
index 18be387e04d95a2055f3d5569d430d0098cbcfbf..65dccd0d87cb822a75cf2e0e049839dc48cbb25d 100644
--- a/MaterialLib/MPL/Properties/CreateProperties.h
+++ b/MaterialLib/MPL/Properties/CreateProperties.h
@@ -14,8 +14,8 @@
 #include "CapillaryPressureSaturation/CreateCapillaryPressureRegularizedVanGenuchten.h"
 #include "CapillaryPressureSaturation/CreateCapillaryPressureVanGenuchten.h"
 #include "CapillaryPressureSaturation/CreateSaturationBrooksCorey.h"
-#include "CapillaryPressureSaturation/CreateSaturationLiakopoulos.h"
 #include "CapillaryPressureSaturation/CreateSaturationExponential.h"
+#include "CapillaryPressureSaturation/CreateSaturationLiakopoulos.h"
 #include "CapillaryPressureSaturation/CreateSaturationVanGenuchten.h"
 #include "CreateAverageMolarMass.h"
 #include "CreateBishopsPowerLaw.h"
@@ -32,9 +32,9 @@
 #include "CreateIdealGasLaw.h"
 #include "CreateKozenyCarmanModel.h"
 #include "CreateLinear.h"
+#include "CreateOrthotropicEmbeddedFracturePermeability.h"
 #include "CreateParameter.h"
 #include "CreatePermeabilityMohrCoulombFailureIndexModel.h"
-#include "CreateOrthotropicEmbeddedFracturePermeability.h"
 #include "CreatePermeabilityOrthotropicPowerLaw.h"
 #include "CreatePorosityFromMassBalance.h"
 #include "CreateSaturationDependentThermalConductivity.h"
diff --git a/MaterialLib/MPL/Properties/Properties.h b/MaterialLib/MPL/Properties/Properties.h
index 726d339d05409ee99e0ee636cf4ce4a27efd5381..4126fb95e0e2ae9e0312430bc002644a86ae53ec 100644
--- a/MaterialLib/MPL/Properties/Properties.h
+++ b/MaterialLib/MPL/Properties/Properties.h
@@ -15,8 +15,8 @@
 #include "BishopsPowerLaw.h"
 #include "BishopsSaturationCutoff.h"
 #include "CapillaryPressureSaturation/SaturationBrooksCorey.h"
-#include "CapillaryPressureSaturation/SaturationLiakopoulos.h"
 #include "CapillaryPressureSaturation/SaturationExponential.h"
+#include "CapillaryPressureSaturation/SaturationLiakopoulos.h"
 #include "CapillaryPressureSaturation/SaturationVanGenuchten.h"
 #include "ClausiusClapeyron.h"
 #include "Constant.h"
@@ -32,8 +32,8 @@
 #include "GasPressureDependentPermeability.h"
 #include "IdealGasLaw.h"
 #include "Linear.h"
-#include "Parameter.h"
 #include "OrthotropicEmbeddedFracturePermeability.h"
+#include "Parameter.h"
 #include "PorosityFromMassBalance.h"
 #include "RelativePermeability/RelPermBrooksCorey.h"
 #include "RelativePermeability/RelPermBrooksCoreyNonwettingPhase.h"
diff --git a/MaterialLib/SolidModels/CMakeLists.txt b/MaterialLib/SolidModels/CMakeLists.txt
index 88bd0a38c84f4d1501ddd4b163069f7e64a4f590..4a1170b039152bebfe98a2786f096d26b5d74f99 100644
--- a/MaterialLib/SolidModels/CMakeLists.txt
+++ b/MaterialLib/SolidModels/CMakeLists.txt
@@ -2,7 +2,7 @@ get_source_files(SOURCES)
 
 ogs_add_library(MaterialLib_SolidModels ${SOURCES})
 target_link_libraries(
-    MaterialLib_SolidModels PUBLIC MathLib PRIVATE spdlog::spdlog ParameterLib
+    MaterialLib_SolidModels PUBLIC MathLib PRIVATE ParameterLib
                                                    NumLib
 )
 
diff --git a/MaterialLib/SolidModels/MFront/CMakeLists.txt b/MaterialLib/SolidModels/MFront/CMakeLists.txt
index f17d63d48ff947b5ec010d472eda170319973f9e..bc2e0f864fdb00b69db710a9a4782daddca6ecd1 100644
--- a/MaterialLib/SolidModels/MFront/CMakeLists.txt
+++ b/MaterialLib/SolidModels/MFront/CMakeLists.txt
@@ -23,7 +23,7 @@ mfront_behaviours_check_library(
 
 target_link_libraries(
     MaterialLib_SolidModels_MFront PUBLIC BaseLib NumLib OgsMFrontBehaviour
-    PRIVATE MathLib MeshLib spdlog::spdlog
+    PRIVATE MathLib MeshLib
 )
 
 # Disable warnings for generated OgsMFrontBehaviour
diff --git a/MathLib/CMakeLists.txt b/MathLib/CMakeLists.txt
index 4f52278230d7a474e5289e4a2f5b3185c955375f..3189ea241c907960a3c89274c47bf4356dc1d77a 100644
--- a/MathLib/CMakeLists.txt
+++ b/MathLib/CMakeLists.txt
@@ -34,7 +34,6 @@ target_link_libraries(
            $<$<BOOL:${OGS_USE_CVODE}>:CVODE::CVODE>
            $<$<BOOL:${OGS_USE_PETSC}>:petsc>
            Eigen3::Eigen
-    PRIVATE spdlog::spdlog
 )
 
 if(OGS_USE_LIS)
diff --git a/MeshGeoToolsLib/CMakeLists.txt b/MeshGeoToolsLib/CMakeLists.txt
index f6455befa13a47995ae6923b6ba9cf293e4f766c..9664541189a61d6c05adf83d51211aba1dd6ec8f 100644
--- a/MeshGeoToolsLib/CMakeLists.txt
+++ b/MeshGeoToolsLib/CMakeLists.txt
@@ -6,5 +6,4 @@ ogs_add_library(MeshGeoToolsLib ${SOURCES})
 
 target_link_libraries(
     MeshGeoToolsLib PUBLIC GeoLib MathLib PRIVATE BaseLib MeshLib
-                                                  spdlog::spdlog
 )
diff --git a/MeshLib/CMakeLists.txt b/MeshLib/CMakeLists.txt
index e88a2e9cfc44fc4b8f7e98d008207cb342bcb5a5..69d1cc9aa16a7c8b43aa5ff8f0f0ecb7ec66cf85 100644
--- a/MeshLib/CMakeLists.txt
+++ b/MeshLib/CMakeLists.txt
@@ -42,7 +42,6 @@ target_link_libraries(
            $<$<TARGET_EXISTS:OgsXdmf>:OgsXdmf>
            $<$<TARGET_EXISTS:MPI::MPI_CXX>:MPI::MPI_CXX>
            $<$<TARGET_EXISTS:petsc>:petsc>
-    PRIVATE spdlog::spdlog
 )
 
 target_include_directories(MeshLib PUBLIC ${VTK_INCLUDE_DIRS})
diff --git a/NumLib/CMakeLists.txt b/NumLib/CMakeLists.txt
index 6fd30aa6110a1e49bd2f69a6b7d6f078049d88db..d001882687dd56043560e80cd07d4db2c27cfc79 100644
--- a/NumLib/CMakeLists.txt
+++ b/NumLib/CMakeLists.txt
@@ -19,5 +19,5 @@ set_target_properties(NumLib PROPERTIES LINKER_LANGUAGE CXX)
 
 target_link_libraries(
     NumLib PUBLIC BaseLib GeoLib MathLib MeshLib $<$<TARGET_EXISTS:petsc>:petsc>
-    PRIVATE MeshGeoToolsLib spdlog::spdlog
+    PRIVATE MeshGeoToolsLib
 )
diff --git a/ParameterLib/CMakeLists.txt b/ParameterLib/CMakeLists.txt
index 82aedf62e39a0c1cf76298fc578ae097c738ae6b..7cbba126113306f0a0f4b9fceeb312a24620f42a 100644
--- a/ParameterLib/CMakeLists.txt
+++ b/ParameterLib/CMakeLists.txt
@@ -2,5 +2,5 @@ get_source_files(SOURCES)
 ogs_add_library(ParameterLib ${SOURCES})
 
 target_link_libraries(
-    ParameterLib PUBLIC MathLib PRIVATE BaseLib exprtk MeshLib spdlog::spdlog
+    ParameterLib PUBLIC MathLib PRIVATE BaseLib exprtk MeshLib
 )
diff --git a/ParameterLib/FunctionParameter.h b/ParameterLib/FunctionParameter.h
index f05c35d1b11f5d840d159dbb834860e6b139a317..eda501bae68fc9704b928b1afcb5326c85f1ea7a 100644
--- a/ParameterLib/FunctionParameter.h
+++ b/ParameterLib/FunctionParameter.h
@@ -48,7 +48,6 @@ struct FunctionParameter final : public Parameter<T>
     using symbol_table_t = exprtk::symbol_table<T>;
     using expression_t = exprtk::expression<T>;
     using parser_t = exprtk::parser<T>;
-    using error_t = exprtk::parser_error::type;
 
     /**
      * Constructing from a vector of expressions
@@ -64,7 +63,7 @@ struct FunctionParameter final : public Parameter<T>
         std::map<std::string,
                  std::unique_ptr<MathLib::PiecewiseLinearInterpolation>> const&
             curves)
-        : Parameter<T>(name, nullptr), _vec_expression_str(vec_expression_str)
+        : Parameter<T>(name, nullptr)
     {
         // Convert curves to function objects callable by the exprtk.
         _curves.reserve(curves.size());
@@ -86,16 +85,16 @@ struct FunctionParameter final : public Parameter<T>
         }
 
         // Compile expressions.
-        _vec_expression.resize(_vec_expression_str.size());
-        for (unsigned i = 0; i < _vec_expression_str.size(); i++)
+        _vec_expression.resize(vec_expression_str.size());
+        for (unsigned i = 0; i < vec_expression_str.size(); i++)
         {
             _vec_expression[i].register_symbol_table(_symbol_table);
             parser_t parser;
-            if (!parser.compile(_vec_expression_str[i], _vec_expression[i]))
+            if (!parser.compile(vec_expression_str[i], _vec_expression[i]))
             {
                 OGS_FATAL("Error: {:s}\tExpression: {:s}\n",
                           parser.error(),
-                          _vec_expression_str[i]);
+                          vec_expression_str[i]);
             }
         }
     }
@@ -141,7 +140,6 @@ struct FunctionParameter final : public Parameter<T>
     }
 
 private:
-    std::vector<std::string> const _vec_expression_str;
     symbol_table_t _symbol_table;
     std::vector<expression_t> _vec_expression;
     std::vector<std::pair<std::string, CurveWrapper>> _curves;
diff --git a/ProcessLib/BoundaryCondition/Python/CMakeLists.txt b/ProcessLib/BoundaryCondition/Python/CMakeLists.txt
index 78e34ba1c5662f0bd5da6a8067a79e9416ccfe63..1e4dc304374bc600e467218c29f1a237b31dd005 100644
--- a/ProcessLib/BoundaryCondition/Python/CMakeLists.txt
+++ b/ProcessLib/BoundaryCondition/Python/CMakeLists.txt
@@ -23,7 +23,7 @@ target_compile_definitions(
 target_link_libraries(
     ProcessLibBoundaryConditionPython PUBLIC BaseLib MathLib MeshLib NumLib
                                              ${Python3_LIBRARIES}
-    PRIVATE pybind11::pybind11 spdlog::spdlog
+    PRIVATE pybind11::pybind11
 )
 
 # For the embedded Python module
diff --git a/ProcessLib/CMakeLists.txt b/ProcessLib/CMakeLists.txt
index d2d2924e3a142f72688627ed57a2befbad0e194d..a84b271af04213852f56b59ffa61cd3374422b3f 100644
--- a/ProcessLib/CMakeLists.txt
+++ b/ProcessLib/CMakeLists.txt
@@ -38,7 +38,7 @@ target_link_libraries(
         $<$<TARGET_EXISTS:ProcessLibSourceTermPython>:ProcessLibSourceTermPython>
         $<$<TARGET_EXISTS:petsc>:petsc>
         nlohmann_json
-    PRIVATE ParameterLib GitInfoLib spdlog::spdlog
+    PRIVATE ParameterLib GitInfoLib
             $<$<TARGET_EXISTS:InSituLib>:InSituLib>
 )
 
diff --git a/ProcessLib/SourceTerms/Python/CMakeLists.txt b/ProcessLib/SourceTerms/Python/CMakeLists.txt
index 578db2c25552480b5fbd613a5be446874ac0f1e5..7d320026cb1f0a5b209d8ac484a590354b0cb828 100644
--- a/ProcessLib/SourceTerms/Python/CMakeLists.txt
+++ b/ProcessLib/SourceTerms/Python/CMakeLists.txt
@@ -23,7 +23,7 @@ target_compile_definitions(
 target_link_libraries(
     ProcessLibSourceTermPython PUBLIC BaseLib MathLib MeshLib NumLib
                                       ${Python3_LIBRARIES}
-    PRIVATE pybind11::pybind11 spdlog::spdlog
+    PRIVATE pybind11::pybind11
 )
 
 # For the embedded Python module
diff --git a/ProcessLib/Utils/LocalDataInitializer.h b/ProcessLib/Utils/LocalDataInitializer.h
index 245bdaf66c75427ccaf5ac6d11249517391e5568..b604e8a16819785e76e01e31c7df9ac0b76dc57f 100644
--- a/ProcessLib/Utils/LocalDataInitializer.h
+++ b/ProcessLib/Utils/LocalDataInitializer.h
@@ -12,9 +12,9 @@
 
 #include <functional>
 #include <memory>
+#include <type_traits>
 #include <typeindex>
 #include <typeinfo>
-#include <type_traits>
 #include <unordered_map>
 
 #include "MeshLib/Elements/Elements.h"
@@ -308,8 +308,8 @@ public:
     /// The index \c id is not necessarily the mesh item's id. Especially when
     /// having multiple meshes it will differ from the latter.
     LADataIntfPtr operator()(std::size_t const id,
-                    MeshLib::Element const& mesh_item,
-                    ConstructorArgs&&... args) const
+                             MeshLib::Element const& mesh_item,
+                             ConstructorArgs&&... args) const
     {
         auto const type_idx = std::type_index(typeid(mesh_item));
         auto const it = _builder.find(type_idx);
@@ -354,7 +354,6 @@ private:
                 bool, (GlobalDim >= ShapeFunction::DIM)>*>(nullptr));
     }
 
-
     /// Mapping of element types to local assembler constructors.
     std::unordered_map<std::type_index, LADataBuilder> _builder;
 
diff --git a/Tests/Data/Parabolic/ComponentTransport/ConTracer/ConTracer_1d.prj b/Tests/Data/Parabolic/ComponentTransport/ConTracer/ConTracer_1d.prj
index c6b448469804338636f31835e65e640d1b1a38aa..c4be149bf64d836d2bec118af5410820c37beaca 100644
--- a/Tests/Data/Parabolic/ComponentTransport/ConTracer/ConTracer_1d.prj
+++ b/Tests/Data/Parabolic/ComponentTransport/ConTracer/ConTracer_1d.prj
@@ -1,7 +1,10 @@
 <?xml version="1.0" encoding="ISO-8859-1"?>
 <OpenGeoSysProject>
-    <mesh>ConTracer_1d.vtu</mesh>
-    <geometry>ConTracer_1d.gml</geometry>
+    <meshes>
+        <mesh>ConTracer_1d.vtu</mesh>
+        <mesh>ConTracer_1d_left.vtu</mesh>
+        <mesh>ConTracer_1d_outlet.vtu</mesh>
+    </meshes>
     <processes>
         <process>
             <name>hc</name>
@@ -237,14 +240,12 @@
             <initial_condition>p0</initial_condition>
             <boundary_conditions>
                 <boundary_condition>
-                    <geometrical_set>geometry</geometrical_set>
-                    <geometry>outlet</geometry>
+                    <mesh>ConTracer_1d_outlet</mesh>
                     <type>Dirichlet</type>
                     <parameter>p_Dirichlet_right</parameter>
                 </boundary_condition>
                 <boundary_condition>
-                    <geometrical_set>geometry</geometrical_set>
-                    <geometry>left</geometry>
+                    <mesh>ConTracer_1d_left</mesh>
                     <type>Neumann</type>
                     <parameter>p_Neumann_left</parameter>
                 </boundary_condition>
@@ -257,8 +258,7 @@
             <initial_condition>c0</initial_condition>
             <boundary_conditions>
                 <boundary_condition>
-                    <geometrical_set>geometry</geometrical_set>
-                    <geometry>left</geometry>
+                    <mesh>ConTracer_1d_left</mesh>
                     <type>Dirichlet</type>
                     <parameter>c_Dirichlet_left</parameter>
                 </boundary_condition>
diff --git a/Tests/Data/Parabolic/ComponentTransport/ConTracer/ConTracer_1d_left.vtu b/Tests/Data/Parabolic/ComponentTransport/ConTracer/ConTracer_1d_left.vtu
new file mode 100644
index 0000000000000000000000000000000000000000..03fc506c11d9906bedf6ab450c01822cffca3623
--- /dev/null
+++ b/Tests/Data/Parabolic/ComponentTransport/ConTracer/ConTracer_1d_left.vtu
@@ -0,0 +1,24 @@
+<?xml version="1.0"?>
+<VTKFile type="UnstructuredGrid" version="1.0" byte_order="LittleEndian" header_type="UInt64">
+  <UnstructuredGrid>
+    <Piece NumberOfPoints="1"                    NumberOfCells="1"                   >
+      <PointData>
+        <DataArray type="UInt64" Name="bulk_node_ids" format="appended" RangeMin="0"                    RangeMax="0"                    offset="0"                   />
+      </PointData>
+      <CellData>
+        <DataArray type="UInt64" Name="bulk_element_ids" format="appended" RangeMin="0"                    RangeMax="0"                    offset="24"                  />
+      </CellData>
+      <Points>
+        <DataArray type="Float64" Name="Points" NumberOfComponents="3" format="appended" RangeMin="0"                    RangeMax="0"                    offset="48"                  />
+      </Points>
+      <Cells>
+        <DataArray type="Int64" Name="connectivity" format="appended" RangeMin=""                     RangeMax=""                     offset="92"                  />
+        <DataArray type="Int64" Name="offsets" format="appended" RangeMin=""                     RangeMax=""                     offset="116"                 />
+        <DataArray type="UInt8" Name="types" format="appended" RangeMin=""                     RangeMax=""                     offset="140"                 />
+      </Cells>
+    </Piece>
+  </UnstructuredGrid>
+  <AppendedData encoding="base64">
+   _CAAAAAAAAAAAAAAAAAAAAA==CAAAAAAAAAAAAAAAAAAAAA==GAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=CAAAAAAAAAAAAAAAAAAAAA==CAAAAAAAAAABAAAAAAAAAA==AQAAAAAAAAAB
+  </AppendedData>
+</VTKFile>
diff --git a/Tests/Data/Parabolic/ComponentTransport/ConTracer/ConTracer_1d_outlet.vtu b/Tests/Data/Parabolic/ComponentTransport/ConTracer/ConTracer_1d_outlet.vtu
new file mode 100644
index 0000000000000000000000000000000000000000..a43d3f884650f345def459bfe45f8d325d548b7e
--- /dev/null
+++ b/Tests/Data/Parabolic/ComponentTransport/ConTracer/ConTracer_1d_outlet.vtu
@@ -0,0 +1,24 @@
+<?xml version="1.0"?>
+<VTKFile type="UnstructuredGrid" version="1.0" byte_order="LittleEndian" header_type="UInt64">
+  <UnstructuredGrid>
+    <Piece NumberOfPoints="1"                    NumberOfCells="1"                   >
+      <PointData>
+        <DataArray type="UInt64" Name="bulk_node_ids" format="appended" RangeMin="94"                   RangeMax="94"                   offset="0"                   />
+      </PointData>
+      <CellData>
+        <DataArray type="UInt64" Name="bulk_element_ids" format="appended" RangeMin="94"                   RangeMax="94"                   offset="24"                  />
+      </CellData>
+      <Points>
+        <DataArray type="Float64" Name="Points" NumberOfComponents="3" format="appended" RangeMin="4.7"                  RangeMax="4.7"                  offset="48"                  />
+      </Points>
+      <Cells>
+        <DataArray type="Int64" Name="connectivity" format="appended" RangeMin=""                     RangeMax=""                     offset="92"                  />
+        <DataArray type="Int64" Name="offsets" format="appended" RangeMin=""                     RangeMax=""                     offset="116"                 />
+        <DataArray type="UInt8" Name="types" format="appended" RangeMin=""                     RangeMax=""                     offset="140"                 />
+      </Cells>
+    </Piece>
+  </UnstructuredGrid>
+  <AppendedData encoding="base64">
+   _CAAAAAAAAABeAAAAAAAAAA==CAAAAAAAAABeAAAAAAAAAA==GAAAAAAAAADNzMzMzMwSQAAAAAAAAAAAAAAAAAAAAAA=CAAAAAAAAAAAAAAAAAAAAA==CAAAAAAAAAABAAAAAAAAAA==AQAAAAAAAAAB
+  </AppendedData>
+</VTKFile>