diff --git a/include/teqp/algorithms/VLE.hpp b/include/teqp/algorithms/VLE.hpp
index 346a05b021e4b20e5c31f60ec588c402ca39a1b9..9367b4d76b45d5d503a10f8f3e213286f0f6c15b 100644
--- a/include/teqp/algorithms/VLE.hpp
+++ b/include/teqp/algorithms/VLE.hpp
@@ -138,7 +138,8 @@ auto linsolve(const A &a, const B& b) {
 }
 
 template<class Model, class Scalar, class VecType>
-auto get_drhovecdp_Tsat(const Model& model, const Scalar &T, const VecType& rhovecL, const VecType& rhovecV) {
+std::tuple< Eigen::Matrix<Scalar, Eigen::Dynamic, Eigen::Dynamic>, Eigen::Matrix<Scalar, Eigen::Dynamic, Eigen::Dynamic>>
+get_drhovecdp_Tsat(const Model& model, const Scalar &T, const VecType& rhovecL, const VecType& rhovecV) {
     //tic = timeit.default_timer();
     using id = IsochoricDerivatives<Model, Scalar, VecType>;
     Eigen::Matrix<Scalar, Eigen::Dynamic, Eigen::Dynamic> Hliq = id::build_Psi_Hessian_autodiff(model, T, rhovecL).eval();