From 69c21800bb4ceaf06f916fe1bb050481fa6e4460 Mon Sep 17 00:00:00 2001 From: Ian Bell Date: Fri, 6 Jun 2014 18:51:39 +0200 Subject: [PATCH] Fixed derivatives for Lemmon2005 Signed-off-by: Ian Bell --- src/Helmholtz.cpp | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/src/Helmholtz.cpp b/src/Helmholtz.cpp index 96014c97..dded59d6 100644 --- a/src/Helmholtz.cpp +++ b/src/Helmholtz.cpp @@ -725,7 +725,7 @@ long double ResidualHelmholtzLemmon2005::dTau(const long double &tau, const long int li = el.l, mi = el.m; if (li != 0 && mi != 0){ long double pow_tau_mi = pow(tau, md); - s[i] = ni*(ti-mi*pow_tau_mi)*exp((ti-1)*log_tau+di*log_delta-pow(delta,li)-pow_tau_mi); + s[i] = ni*(ti-md*pow_tau_mi)*exp((ti-1)*log_tau+di*log_delta-pow(delta,li)-pow_tau_mi); } else if (li != 0 && mi == 0) s[i] = ni*ti*exp((ti-1)*log_tau+di*log_delta-pow(delta,li)); @@ -769,7 +769,7 @@ long double ResidualHelmholtzLemmon2005::dDelta_dTau(const long double &tau, con if (li != 0 && mi != 0){ long double pow_delta_li = pow(delta, li); long double pow_tau_mi = pow(tau, md); - s[i] = ni*(di-li*pow_delta_li)*(ti-mi*pow_tau_mi)*exp((ti-1)*log_tau+(di-1)*log_delta-pow_delta_li-pow_tau_mi); + s[i] = ni*(di-li*pow_delta_li)*(ti-md*pow_tau_mi)*exp((ti-1)*log_tau+(di-1)*log_delta-pow_delta_li-pow_tau_mi); } else if (li != 0 && mi == 0){ long double pow_delta_li = pow(delta, li); @@ -791,7 +791,7 @@ long double ResidualHelmholtzLemmon2005::dTau2(const long double &tau, const lon int li = el.l, mi = el.m; if (li != 0 && mi != 0){ long double pow_tau_mi = pow(tau, md); - long double bracket = (ti-mi*pow_tau_mi)*(ti-1-mi*pow_tau_mi)-mi*mi*pow_tau_mi; + long double bracket = (ti-md*pow_tau_mi)*(ti-1.0-md*pow_tau_mi)-md*md*pow_tau_mi; s[i] = ni*bracket*exp((ti-2)*log_tau+di*log_delta-pow(delta,li)-pow_tau_mi); } else if (li != 0 && mi == 0) @@ -839,7 +839,7 @@ long double ResidualHelmholtzLemmon2005::dDelta2_dTau(const long double &tau, co if (li != 0 && mi != 0){ long double pow_delta_li = pow(delta,li); long double pow_tau_mi = pow(tau,md); - long double bracket = (ti-mi*pow_tau_mi)*(((di-li*pow_delta_li))*(di-1-li*pow_delta_li)-li*li*pow_delta_li); + long double bracket = (ti-md*pow_tau_mi)*(((di-li*pow_delta_li))*(di-1-li*pow_delta_li)-li*li*pow_delta_li); s[i] = ni*bracket*exp((ti-1)*log_tau+(di-2)*log_delta-pow_delta_li-pow_tau_mi); } else if (li != 0 && mi == 0){ @@ -865,7 +865,7 @@ long double ResidualHelmholtzLemmon2005::dDelta_dTau2(const long double &tau, co long double pow_delta_li = pow(delta,li); long double pow_tau_mi = pow(tau,md); // delta derivative of second tau derivative - long double bracket = ((ti-mi*pow_tau_mi)*(ti-1-mi*pow_tau_mi)-mi*mi*pow_tau_mi)*(di-li*pow_delta_li); + long double bracket = ((ti-md*pow_tau_mi)*(ti-1-md*pow_tau_mi)-md*md*pow_tau_mi)*(di-li*pow_delta_li); s[i] = ni*bracket*exp((ti-2)*log_tau+(di-1)*log_delta-pow_delta_li-pow_tau_mi); } else if (li != 0 && mi == 0){ @@ -912,13 +912,13 @@ long double ResidualHelmholtzLemmon2005::dTau3(const long double &tau, const lon for (std::size_t i=0; i