Merge branch 'master' into pygromacs
[alexxy/gromacs.git] / src / gromacs / gmxana / gmx_confrms.cpp
similarity index 97%
rename from src/gromacs/gmxana/gmx_confrms.c
rename to src/gromacs/gmxana/gmx_confrms.cpp
index 26add192a6f9ad1c628a5b2578557dfa24160305..4bd9cdb19e9370db4ef71b4af0adf4c0c4de0919 100644 (file)
  */
 #include "gmxpre.h"
 
-#include <math.h>
-#include <string.h>
+#include <cmath>
+#include <cstring>
+
+#include <algorithm>
 
 #include "gromacs/commandline/pargs.h"
 #include "gromacs/fileio/confio.h"
@@ -119,7 +121,7 @@ int debug_strcmp(char s1[], char s2[])
     {
         fprintf(debug, " %s-%s", s1, s2);
     }
-    return strcmp(s1, s2);
+    return std::strcmp(s1, s2);
 }
 
 int find_next_match_atoms_in_res(int *i1, atom_id index1[],
@@ -130,10 +132,9 @@ int find_next_match_atoms_in_res(int *i1, atom_id index1[],
     int      dx, dy, dmax, cmp;
     gmx_bool bFW = FALSE;
 
-    dx   = dy = 0;
     cmp  = NOTSET;
-    dmax = max(m1-*i1, m2-*i2);
-    for (dx = 0; dx < dmax && cmp != 0; dx++)
+    dmax = std::max(m1-*i1, m2-*i2);
+    for (dx = 0, dy = 0; dx < dmax && cmp != 0; dx++)
     {
         for (dy = dx; dy < dmax && cmp != 0; dy++)
         {
@@ -198,7 +199,6 @@ static int find_next_match_res(int *rnr1, int isize1,
     int      dx, dy, dmax, cmp, rr1, rr2;
     gmx_bool bFW = FALSE, bFF = FALSE;
 
-    dx  = dy = 0;
     rr1 = 0;
     while (rr1 < isize1 && *rnr1 != index1[rr1])
     {
@@ -211,7 +211,7 @@ static int find_next_match_res(int *rnr1, int isize1,
     }
 
     cmp  = NOTSET;
-    dmax = max(isize1-rr1, isize2-rr2);
+    dmax = std::max(isize1-rr1, isize2-rr2);
     if (debug)
     {
         fprintf(debug, " R:%d-%d:%d-%d:%d ",
@@ -329,12 +329,11 @@ int find_first_atom_in_res(int rnr, int isize, atom_id index[], t_atom atom[])
 void find_matching_names(int *isize1, atom_id index1[], t_atoms *atoms1,
                          int *isize2, atom_id index2[], t_atoms *atoms2)
 {
-    int        i, i1, i2, ii1, ii2, m1, m2;
+    int        i1, i2, ii1, ii2, m1, m2;
     int        atcmp, rescmp;
-    int        r, rnr1, rnr2, prnr1, prnr2;
+    int        rnr1, rnr2, prnr1, prnr2;
     int        rsize1, rsize2;
     int       *rindex1, *rindex2;
-    char      *resnm1, *resnm2, *atnm1, *atnm2;
     char    ***atnms1, ***atnms2;
     t_resinfo *resinfo1, *resinfo2;
 
@@ -370,7 +369,7 @@ void find_matching_names(int *isize1, atom_id index1[], t_atoms *atoms1,
                 fprintf(debug, "R: %s%d %s%d\n",
                         *resinfo1[rnr1].name, rnr1, *resinfo2[rnr2].name, rnr2);
             }
-            rescmp = strcmp(*resinfo1[rnr1].name, *resinfo2[rnr2].name);
+            rescmp = std::strcmp(*resinfo1[rnr1].name, *resinfo2[rnr2].name);
         }
         if (debug)
         {
@@ -538,10 +537,9 @@ int gmx_confrms(int argc, char *argv[])
     output_env_t oenv;
 
     /* counters */
-    int     i, j, m;
+    int     i, m;
 
     /* center of mass calculation */
-    real    tmas1, tmas2;
     rvec    xcm1, xcm2;
 
     /* variables for fit */
@@ -632,7 +630,7 @@ int gmx_confrms(int argc, char *argv[])
     {
         name1 = *atoms1->atomname[index1[i]];
         name2 = *atoms2->atomname[index2[i]];
-        if (strcmp(name1, name2))
+        if (std::strcmp(name1, name2))
         {
             if (warn < 20)
             {
@@ -696,11 +694,11 @@ int gmx_confrms(int argc, char *argv[])
             rms      += msd*mass;
             msds[at] += msd;
         }
-        maxmsd   = max(maxmsd, msds[at]);
-        minmsd   = min(minmsd, msds[at]);
+        maxmsd   = std::max(maxmsd, msds[at]);
+        minmsd   = std::min(minmsd, msds[at]);
         totmass += mass;
     }
-    rms = sqrt(rms/totmass);
+    rms = std::sqrt(rms/totmass);
 
     printf("Root mean square deviation after lsq fit = %g nm\n", rms);
     if (bBfac)