diff --git a/LatticeDehomogenization/src/unitcells/UnitCellF2CCZ.cpp b/LatticeDehomogenization/src/unitcells/UnitCellF2CCZ.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..6a9baed2c3fad862130a40f388c3037edd83905b
--- /dev/null
+++ b/LatticeDehomogenization/src/unitcells/UnitCellF2CCZ.cpp
@@ -0,0 +1,35 @@
+#include "UnitCellF2CCZ.h"
+
+bool UnitCellF2CCZ::determineNodes()
+{
+    _nodes.reserve(18);
+
+    _nodes.emplace_back(0.5 * _width, 0.5 * _depth, 0.0 * _height); // Strut 1
+    _nodes.emplace_back(0.0 * _width, 0.5 * _depth, 0.5 * _height); // Strut 1
+                                                                 
+    _nodes.emplace_back(0.5 * _width, 0.5 * _depth, 0.0 * _height); // Strut 2
+    _nodes.emplace_back(0.5 * _width, 1.0 * _depth, 0.5 * _height); // Strut 2
+                                                                 
+    _nodes.emplace_back(0.5 * _width, 0.5 * _depth, 0.0 * _height); // Strut 3
+    _nodes.emplace_back(1.0 * _width, 0.5 * _depth, 0.5 * _height); // Strut 3
+                                                                 
+    _nodes.emplace_back(0.5 * _width, 0.5 * _depth, 0.0 * _height); // Strut 4
+    _nodes.emplace_back(0.5 * _width, 0.0 * _depth, 0.5 * _height); // Strut 4
+                                                                 
+    _nodes.emplace_back(0.5 * _width, 0.5 * _depth, 1.0 * _height); // Strut 5
+    _nodes.emplace_back(0.0 * _width, 0.5 * _depth, 0.5 * _height); // Strut 5
+                                                                 
+    _nodes.emplace_back(0.5 * _width, 0.5 * _depth, 1.0 * _height); // Strut 6
+    _nodes.emplace_back(0.5 * _width, 1.0 * _depth, 0.5 * _height); // Strut 6
+                                                                 
+    _nodes.emplace_back(0.5 * _width, 0.5 * _depth, 1.0 * _height); // Strut 7
+    _nodes.emplace_back(1.0 * _width, 0.5 * _depth, 0.5 * _height); // Strut 7
+                                                                 
+    _nodes.emplace_back(0.5 * _width, 0.5 * _depth, 1.0 * _height); // Strut 8
+    _nodes.emplace_back(0.5 * _width, 0.0 * _depth, 0.5 * _height); // Strut 8
+                                                                 
+    _nodes.emplace_back(0.5 * _width, 0.5 * _depth, 0.0 * _height); // Strut 9
+    _nodes.emplace_back(0.5 * _width, 0.5 * _depth, 1.0 * _height); // Strut 9
+
+    return true;
+}
diff --git a/LatticeDehomogenization/src/unitcells/UnitCellF2CCZ.h b/LatticeDehomogenization/src/unitcells/UnitCellF2CCZ.h
new file mode 100644
index 0000000000000000000000000000000000000000..8e36f42336734ea3f09bffb623be184132439885
--- /dev/null
+++ b/LatticeDehomogenization/src/unitcells/UnitCellF2CCZ.h
@@ -0,0 +1,17 @@
+#pragma once
+#include "UnitCellBuilder.h"
+
+class UnitCellF2CCZ : public UnitCellBuilder
+{
+protected: 
+	bool determineNodes() override;
+
+public:
+	UnitCellF2CCZ(double w, double h, double r)
+		: UnitCellBuilder(w, h, r)
+	{}
+	UnitCellF2CCZ(double w, double d, double h, double r)
+		: UnitCellBuilder(w, d, h, r)
+	{}
+};
+