diff --git a/include/teqp/models/multifluid.hpp b/include/teqp/models/multifluid.hpp
index f62d4402c7eb5339f52b6b0adcef1a36d953f93e..e93794c4113e74bd61cec5c92b091e9e38eb93d1 100644
--- a/include/teqp/models/multifluid.hpp
+++ b/include/teqp/models/multifluid.hpp
@@ -75,6 +75,11 @@ class MultiFluidReducingFunction {
 private:
     Eigen::MatrixXd betaT, gammaT, betaV, gammaV, YT, Yv;
 
+    template <typename Num>
+    auto cube(Num x) {
+        return x * x * x;
+    }
+
 public:
 
     template<typename ArrayLike>
diff --git a/src/multifluid.cpp b/src/multifluid.cpp
index 8c66977c73e31eafe7272952e654d2ffaefd02ec..a8d2fd6249c7e0d938bb7d22e0658d462581560f 100644
--- a/src/multifluid.cpp
+++ b/src/multifluid.cpp
@@ -5,11 +5,6 @@
 #include "json.hpp"
 #include "teqp/models/multifluid.hpp"
 
-template <typename Num>
-auto cube(Num x) {
-    return x*x*x;
-}
-
 
 auto build_multifluid_model(const std::vector<std::string>& components) {
     using namespace nlohmann;