void StiffenedGasFluidProperties::e_from_p_rho( Real p, Real rho, Real & e, Real & de_dp, Real & de_drho) const { e = e_from_p_rho(p, rho); de_dp = 1.0 / ((_gamma - 1.0) * rho); de_drho = -(p + _gamma * _p_inf) / ((_gamma - 1.0) * rho * rho); }
void SinglePhaseFluidProperties::e_from_p_T(Real p, Real T, Real & e, Real & de_dp, Real & de_dT) const { // From rho(p,T), compute: drho(p,T)/dp, drho(p,T)/dT Real rho = 0., drho_dp = 0., drho_dT = 0.; rho_from_p_T(p, T, rho, drho_dp, drho_dT); // From e(p, rho), compute: de(p,rho)/dp, de(p,rho)/drho Real depr_dp = 0., depr_drho = 0.; e_from_p_rho(p, rho, e, depr_dp, depr_drho); // Using partial derivative rules, we have: // de(p,T)/dp = de(p,rho)/dp * dp/dp + de(p,rho)/drho * drho(p,T)/dp, (dp/dp == 1) // de(p,T)/dT = de(p,rho)/dp * dp/dT + de(p,rho)/drho * drho(p,T)/dT, (dp/dT == 0) de_dp = depr_dp + depr_drho * drho_dp; de_dT = depr_drho * drho_dT; }
Real SinglePhaseFluidProperties::e_from_p_T(Real p, Real T) const { const Real rho = rho_from_p_T(p, T); return e_from_p_rho(p, rho); }