diff --git a/include/teqp/algorithms/VLLE.hpp b/include/teqp/algorithms/VLLE.hpp index 02e9a93478239ccb4a23fa937450cd5aa726165a..aa57bfd0080703dcfe2d892b004ac92d035119ae 100644 --- a/include/teqp/algorithms/VLLE.hpp +++ b/include/teqp/algorithms/VLLE.hpp @@ -176,18 +176,18 @@ namespace teqp { auto& trace = traces[0]; auto process_intersection = [&](auto& trace, auto& i) { - auto rhoL1_j = traces[0][i.j].at("rhoL / mol/m^3").get<std::valarray<double>>(); - auto rhoL1_jp1 = traces[0][i.j + 1].at("rhoL / mol/m^3").get<std::valarray<double>>(); + auto rhoL1_j = traces[0][i.j].at("rhoL / mol/m^3").template get<std::valarray<double>>(); + auto rhoL1_jp1 = traces[0][i.j + 1].at("rhoL / mol/m^3").template get<std::valarray<double>>(); auto rhoL1_ = rhoL1_j * i.s + rhoL1_jp1 * (1 - i.s); Eigen::Map<Eigen::ArrayXd>(&(rhoL1[0]), rhoL1.size()) = Eigen::Map<Eigen::ArrayXd>(&(rhoL1_[0]), rhoL1_.size()); - auto rhoL2_k = traces[0][i.k].at("rhoL / mol/m^3").get<std::valarray<double>>(); - auto rhoL2_kp1 = traces[0][i.k + 1].at("rhoL / mol/m^3").get<std::valarray<double>>(); + auto rhoL2_k = traces[0][i.k].at("rhoL / mol/m^3").template get<std::valarray<double>>(); + auto rhoL2_kp1 = traces[0][i.k + 1].at("rhoL / mol/m^3").template get<std::valarray<double>>(); auto rhoL2_ = rhoL2_k * i.t + rhoL2_kp1 * (1 - i.t); Eigen::Map<Eigen::ArrayXd>(&(rhoL2[0]), rhoL2.size()) = Eigen::Map<Eigen::ArrayXd>(&(rhoL2_[0]), rhoL2_.size()); - auto rhoV_j = traces[0][i.j].at("rhoV / mol/m^3").get<std::valarray<double>>(); - auto rhoV_jp1 = traces[0][i.j + 1].at("rhoV / mol/m^3").get<std::valarray<double>>(); + auto rhoV_j = traces[0][i.j].at("rhoV / mol/m^3").template get<std::valarray<double>>(); + auto rhoV_jp1 = traces[0][i.j + 1].at("rhoV / mol/m^3").template get<std::valarray<double>>(); auto rhoV_ = rhoV_j * i.s + rhoV_jp1 * (1 - i.s); Eigen::Map<Eigen::ArrayXd>(&(rhoV[0]), rhoV.size()) = Eigen::Map<Eigen::ArrayXd>(&(rhoV_[0]), rhoV_.size());