X-Git-Url: http://biod.pnpi.spb.ru/gitweb/?a=blobdiff_plain;f=src%2Fgromacs%2Fgmxana%2Fgmx_sigeps.cpp;fp=src%2Fgromacs%2Fgmxana%2Fgmx_sigeps.c;h=59df10f858440561b85ec5524b0c30af1054c5b8;hb=c3f2d46e4047f0c465f7234b3784a2fa6f02a065;hp=3866506b280c0e65b57091e7a9bada03eb1c743d;hpb=0595b4a4c763a0bc574658992081abf8b0abc3fe;p=alexxy%2Fgromacs.git diff --git a/src/gromacs/gmxana/gmx_sigeps.c b/src/gromacs/gmxana/gmx_sigeps.cpp similarity index 87% rename from src/gromacs/gmxana/gmx_sigeps.c rename to src/gromacs/gmxana/gmx_sigeps.cpp index 3866506b28..59df10f858 100644 --- a/src/gromacs/gmxana/gmx_sigeps.c +++ b/src/gromacs/gmxana/gmx_sigeps.cpp @@ -36,11 +36,12 @@ */ #include "gmxpre.h" -#include -#include +#include +#include #include "gromacs/commandline/pargs.h" #include "gromacs/fileio/xvgr.h" +#include "gromacs/gmxana/gmx_ana.h" #include "gromacs/legacyheaders/macros.h" #include "gromacs/legacyheaders/names.h" #include "gromacs/legacyheaders/txtdump.h" @@ -52,17 +53,17 @@ real pot(real x, real qq, real c6, real cn, int npow) { - return cn*pow(x, -npow)-c6*pow(x, -6)+qq*ONE_4PI_EPS0/x; + return cn*pow(x, -npow)-c6*std::pow(x, -6)+qq*ONE_4PI_EPS0/x; } real bhpot(real x, real A, real B, real C) { - return A*exp(-B*x) - C*pow(x, -6.0); + return A*std::exp(-B*x) - C*std::pow(x, -6); } real dpot(real x, real qq, real c6, real cn, int npow) { - return -(npow*cn*pow(x, -npow-1)-6*c6*pow(x, -7)+qq*ONE_4PI_EPS0/sqr(x)); + return -(npow*cn*std::pow(x, -npow-1)-6*c6*std::pow(x, -7)+qq*ONE_4PI_EPS0/sqr(x)); } int gmx_sigeps(int argc, char *argv[]) @@ -98,7 +99,7 @@ int gmx_sigeps(int argc, char *argv[]) FILE *fp; int i; gmx_bool bBham; - real qq, x, oldx, minimum, mval, dp[2], pp[2]; + real qq, x, oldx, minimum, mval, dp[2]; int cur = 0; #define next (1-cur) @@ -116,24 +117,24 @@ int gmx_sigeps(int argc, char *argv[]) if (bBham) { c6 = Cbh; - sig = pow((6.0/npow)*pow(npow/Bbh, npow-6.0), 1.0/(npow-6.0)); - eps = c6/(4*pow(sig, 6.0)); - cn = 4*eps*pow(sig, npow); + sig = std::pow((6.0/npow)*std::pow(npow/Bbh, npow-6), 1.0/(npow-6)); + eps = c6/(4*std::pow(sig, 6)); + cn = 4*eps*std::pow(sig, npow); } else { if (opt2parg_bSet("-sig", asize(pa), pa) || opt2parg_bSet("-eps", asize(pa), pa)) { - c6 = 4*eps*pow(sig, 6); - cn = 4*eps*pow(sig, npow); + c6 = 4*eps*std::pow(sig, 6); + cn = 4*eps*std::pow(sig, npow); } else if (opt2parg_bSet("-c6", asize(pa), pa) || opt2parg_bSet("-cn", asize(pa), pa) || opt2parg_bSet("-pow", asize(pa), pa)) { - sig = pow(cn/c6, 1.0/(npow-6.0)); - eps = 0.25*c6*pow(sig, -6.0); + sig = std::pow(cn/c6, static_cast(1.0/(npow-6))); + eps = 0.25*c6*std::pow(sig, -6); } else { @@ -142,13 +143,13 @@ int gmx_sigeps(int argc, char *argv[]) printf("c6 = %12.5e, c%d = %12.5e\n", c6, npow, cn); printf("sigma = %12.5f, epsilon = %12.5f\n", sig, eps); - minimum = pow(npow/6.0*pow(sig, npow-6.0), 1.0/(npow-6)); + minimum = std::pow(npow/6.0*std::pow(sig, npow-6), 1.0/(npow-6)); printf("Van der Waals minimum at %g, V = %g\n\n", minimum, pot(minimum, 0, c6, cn, npow)); printf("Fit of Lennard Jones (%d-6) to Buckingham:\n", npow); Bbh = npow/minimum; Cbh = c6; - Abh = 4*eps*pow(sig/minimum, npow)*exp(npow); + Abh = 4*eps*std::pow(sig/minimum, static_cast(npow))*std::exp(static_cast(npow)); printf("A = %g, B = %g, C = %g\n", Abh, Bbh, Cbh); } qq = qi*qj; @@ -161,8 +162,6 @@ int gmx_sigeps(int argc, char *argv[]) { sig = 0.25; } - minimum = -1; - mval = 0; oldx = 0; for (i = 0; (i < 100); i++) {