diff --git a/runtime/pairs.cpp b/runtime/pairs.cpp
index f4179cbf15b36f6e05c35b4ee2d7cc9b5d0f01f9..e78e494a389b9792213d0da711208515e56f7b70 100644
--- a/runtime/pairs.cpp
+++ b/runtime/pairs.cpp
@@ -21,6 +21,8 @@ void PairsSimulation::initDomain(
     } else if(dom_part_type == RegularXY) {
         const int flags[] = {1, 1, 0};
         dom_part = new Regular6DStencil(xmin, xmax, ymin, ymax, zmin, zmax, flags);
+    } else if(dom_part_type == BlockForest) {
+        dom_part = new BlockForest(xmin, xmax, ymin, ymax, zmin, zmax);
     } else {
         PAIRS_EXCEPTION("Domain partitioning type not implemented!\n");
     }
diff --git a/runtime/pairs_common.hpp b/runtime/pairs_common.hpp
index c3cf60da1156d9ea6dc5c7e0e1c3bd581a62c8c5..27ed17a931c2fd605e25be2f455e3d06271c7cd8 100644
--- a/runtime/pairs_common.hpp
+++ b/runtime/pairs_common.hpp
@@ -46,9 +46,9 @@ enum Timers {
 };
 
 enum DomainPartitioners {
-    Regular = 0,
-    RegularXY = 1,
-    BoxList = 2,
+    RegularPartitioning = 0,
+    RegularXYPartitioning = 1,
+    BlockForestPartitioning = 2
 };
 
 #ifdef DEBUG
diff --git a/src/pairs/sim/domain_partitioners.py b/src/pairs/sim/domain_partitioners.py
index b2e6fe28f5ac69539af78ade8800d3395915d095..d99c6cd8aba45f7e344309fe953cd53585053b97 100644
--- a/src/pairs/sim/domain_partitioners.py
+++ b/src/pairs/sim/domain_partitioners.py
@@ -5,7 +5,7 @@ class DomainPartitioners:
     BlockForest = 2
 
     def c_keyword(layout):
-        return "Regular"        if layout == DomainPartitioners.Regular else \
-               "RegularXY"      if layout == DomainPartitioners.RegularXY else \
-               "BlockForest"    if layout == DomainPartitioners.BlockForest else \
+        return "RegularPartitioning"        if layout == DomainPartitioners.Regular else \
+               "RegularXYPartitioning"      if layout == DomainPartitioners.RegularXY else \
+               "BlockForestPartitioning"    if layout == DomainPartitioners.BlockForest else \
                "Invalid"