Apply clang-format to source tree
[alexxy/gromacs.git] / src / gromacs / gmxpreprocess / genconf.cpp
index 4f13a69b570b0321a418ff5307e50a1a78c076d1..a2630b7b88a41a77c98c6428ad21f12e62658516 100644 (file)
 #include "gromacs/utility/fatalerror.h"
 #include "gromacs/utility/smalloc.h"
 
-static void rand_rot(int natoms, rvec x[], rvec v[], vec4 xrot[], vec4 vrot[],
-                     gmx::DefaultRandomEngine * rng, const rvec max_rot)
+static void
+rand_rot(int natoms, rvec x[], rvec v[], vec4 xrot[], vec4 vrot[], gmx::DefaultRandomEngine* rng, const rvec max_rot)
 {
-    mat4 mt1, mt2, mr[DIM], mtemp1, mtemp2, mtemp3, mxtot, mvtot;
-    rvec xcm;
-    real phi;
-    int  i, m;
+    mat4                               mt1, mt2, mr[DIM], mtemp1, mtemp2, mtemp3, mxtot, mvtot;
+    rvec                               xcm;
+    real                               phi;
+    int                                i, m;
     gmx::UniformRealDistribution<real> dist(-1.0, 1.0);
 
     clear_rvec(xcm);
@@ -69,7 +69,7 @@ static void rand_rot(int natoms, rvec x[], rvec v[], vec4 xrot[], vec4 vrot[],
     {
         for (m = 0; (m < DIM); m++)
         {
-            xcm[m] += x[i][m]/natoms; /* get center of mass of one molecule  */
+            xcm[m] += x[i][m] / natoms; /* get center of mass of one molecule  */
         }
     }
     fprintf(stderr, "center of geometry: %f, %f, %f\n", xcm[0], xcm[1], xcm[2]);
@@ -78,7 +78,7 @@ static void rand_rot(int natoms, rvec x[], rvec v[], vec4 xrot[], vec4 vrot[],
     gmx_mat4_init_translation(-xcm[XX], -xcm[YY], -xcm[ZZ], mt1);
     for (m = 0; (m < DIM); m++)
     {
-        phi = M_PI*max_rot[m]*dist(*rng)/180;
+        phi = M_PI * max_rot[m] * dist(*rng) / 180;
         gmx_mat4_init_rotation(m, phi, mr[m]);
     }
     gmx_mat4_init_translation(xcm[XX], xcm[YY], xcm[ZZ], mt2);
@@ -99,9 +99,9 @@ static void rand_rot(int natoms, rvec x[], rvec v[], vec4 xrot[], vec4 vrot[],
     }
 }
 
-int gmx_genconf(int argc, char *argv[])
+int gmx_genconf(int argc, charargv[])
 {
-    const char       *desc[] = {
+    const chardesc[] = {
         "[THISMODULE] multiplies a given coordinate file by simply stacking them",
         "on top of each other, like a small child playing with wooden blocks.",
         "The program makes a grid of [IT]user-defined[it]",
@@ -116,48 +116,43 @@ int gmx_genconf(int argc, char *argv[])
         "build the grid."
 
     };
-    const char       *bugs[] = {
-        "The program should allow for random displacement of lattice points."
-    };
+    const char* bugs[] = { "The program should allow for random displacement of lattice points." };
 
     int               vol;
-    rvec             *x, *xx, *v; /* coordinates? */
+    rvec *            x, *xx, *v; /* coordinates? */
     real              t;
-    vec4             *xrot, *vrot;
+    vec4 *            xrot, *vrot;
     int               ePBC;
     matrix            box, boxx; /* box length matrix */
     rvec              shift;
-    int               natoms;    /* number of atoms in one molecule  */
-    int               nres;      /* number of molecules? */
+    int               natoms; /* number of atoms in one molecule  */
+    int               nres;   /* number of molecules? */
     int               i, j, k, l, m, ndx, nrdx, nx, ny, nz;
-    t_trxstatus      *status;
+    t_trxstatus*      status;
     bool              bTRX;
-    gmx_output_env_t *oenv;
+    gmx_output_env_toenv;
 
-    t_filenm          fnm[] = {
-        { efSTX, "-f", "conf", ffREAD  },
-        { efSTO, "-o", "out",  ffWRITE },
-        { efTRX, "-trj", nullptr,  ffOPTRD }
-    };
+    t_filenm fnm[] = { { efSTX, "-f", "conf", ffREAD },
+                       { efSTO, "-o", "out", ffWRITE },
+                       { efTRX, "-trj", nullptr, ffOPTRD } };
 #define NFILE asize(fnm)
-    rvec              nrbox    = {1, 1, 1};
-    int               seed     = 0;               /* seed for random number generator */
-    gmx_bool          bRandom  = FALSE;           /* False: no random rotations */
-    gmx_bool          bRenum   = TRUE;            /* renumber residues */
-    rvec              dist     = {0, 0, 0};       /* space added between molecules ? */
-    rvec              max_rot  = {180, 180, 180}; /* maximum rotation */
-    t_pargs           pa[]     = {
-        { "-nbox",   FALSE, etRVEC, {nrbox},   "Number of boxes" },
-        { "-dist",   FALSE, etRVEC, {dist},    "Distance between boxes" },
-        { "-seed",   FALSE, etINT,  {&seed},
-          "Random generator seed (0 means generate)" },
-        { "-rot",    FALSE, etBOOL, {&bRandom}, "Randomly rotate conformations" },
-        { "-maxrot", FALSE, etRVEC, {max_rot}, "Maximum random rotation" },
-        { "-renumber", FALSE, etBOOL, {&bRenum},  "Renumber residues" }
+    rvec     nrbox   = { 1, 1, 1 };
+    int      seed    = 0;                 /* seed for random number generator */
+    gmx_bool bRandom = FALSE;             /* False: no random rotations */
+    gmx_bool bRenum  = TRUE;              /* renumber residues */
+    rvec     dist    = { 0, 0, 0 };       /* space added between molecules ? */
+    rvec     max_rot = { 180, 180, 180 }; /* maximum rotation */
+    t_pargs  pa[]    = {
+        { "-nbox", FALSE, etRVEC, { nrbox }, "Number of boxes" },
+        { "-dist", FALSE, etRVEC, { dist }, "Distance between boxes" },
+        { "-seed", FALSE, etINT, { &seed }, "Random generator seed (0 means generate)" },
+        { "-rot", FALSE, etBOOL, { &bRandom }, "Randomly rotate conformations" },
+        { "-maxrot", FALSE, etRVEC, { max_rot }, "Maximum random rotation" },
+        { "-renumber", FALSE, etBOOL, { &bRenum }, "Renumber residues" }
     };
 
-    if (!parse_common_args(&argc, argv, 0, NFILE, fnm, asize(pa), pa,
-                           asize(desc), desc, asize(bugs), bugs, &oenv))
+    if (!parse_common_args(&argc, argv, 0, NFILE, fnm, asize(pa), pa, asize(desc), desc,
+                           asize(bugs), bugs, &oenv))
     {
         return 0;
     }
@@ -178,19 +173,19 @@ int gmx_genconf(int argc, char *argv[])
         gmx_fatal(FARGS, "Number of boxes (-nbox) should be larger than zero");
     }
 
-    vol = nx*ny*nz; /* calculate volume in grid points (= nr. molecules) */
+    vol = nx * ny * nz; /* calculate volume in grid points (= nr. molecules) */
 
     gmx_mtop_t mtop;
     bool       haveTop = false;
     readConfAndTopology(opt2fn("-f", NFILE, fnm), &haveTop, &mtop, &ePBC, &x, &v, box);
-    t_atoms    atoms = gmx_mtop_global_atoms(&mtop);
-    natoms = atoms.nr;
-    nres   = atoms.nres;          /* nr of residues in one element? */
+    t_atoms atoms = gmx_mtop_global_atoms(&mtop);
+    natoms        = atoms.nr;
+    nres          = atoms.nres; /* nr of residues in one element? */
     /* make space for all the atoms */
-    add_t_atoms(&atoms, natoms*(vol-1), nres*(vol-1));
-    srenew(x, natoms*vol);         /* get space for coordinates of all atoms */
-    srenew(v, natoms*vol);         /* velocities. not really needed? */
-    snew(xrot, natoms);            /* get space for rotation matrix? */
+    add_t_atoms(&atoms, natoms * (vol - 1), nres * (vol - 1));
+    srenew(x, natoms * vol); /* get space for coordinates of all atoms */
+    srenew(v, natoms * vol); /* velocities. not really needed? */
+    snew(xrot, natoms);      /* get space for rotation matrix? */
     snew(vrot, natoms);
 
     if (bTRX)
@@ -210,20 +205,20 @@ int gmx_genconf(int argc, char *argv[])
     }
 
 
-    for (k = 0; (k < nz); k++)     /* loop over all gridpositions    */
+    for (k = 0; (k < nz); k++) /* loop over all gridpositions    */
     {
-        shift[ZZ] = k*(dist[ZZ]+box[ZZ][ZZ]);
+        shift[ZZ] = k * (dist[ZZ] + box[ZZ][ZZ]);
 
         for (j = 0; (j < ny); j++)
         {
-            shift[YY] = j*(dist[YY]+box[YY][YY])+k*box[ZZ][YY];
+            shift[YY] = j * (dist[YY] + box[YY][YY]) + k * box[ZZ][YY];
 
             for (i = 0; (i < nx); i++)
             {
-                shift[XX] = i*(dist[XX]+box[XX][XX])+j*box[YY][XX]+k*box[ZZ][XX];
+                shift[XX] = i * (dist[XX] + box[XX][XX]) + j * box[YY][XX] + k * box[ZZ][XX];
 
-                ndx  = (i*ny*nz+j*nz+k)*natoms;
-                nrdx = (i*ny*nz+j*nz+k)*nres;
+                ndx  = (i * ny * nz + j * nz + k) * natoms;
+                nrdx = (i * ny * nz + j * nz + k) * nres;
 
                 /* Random rotation on input coords */
                 if (bRandom)
@@ -237,13 +232,13 @@ int gmx_genconf(int argc, char *argv[])
                     {
                         if (bRandom)
                         {
-                            x[ndx+l][m] = xrot[l][m];
-                            v[ndx+l][m] = vrot[l][m];
+                            x[ndx + l][m] = xrot[l][m];
+                            v[ndx + l][m] = vrot[l][m];
                         }
                         else
                         {
-                            x[ndx+l][m] = xx[l][m];
-                            v[ndx+l][m] = v[l][m];
+                            x[ndx + l][m] = xx[l][m];
+                            v[ndx + l][m] = v[l][m];
                         }
                     }
                     if (ePBC == epbcSCREW && i % 2 == 1)
@@ -251,30 +246,29 @@ int gmx_genconf(int argc, char *argv[])
                         /* Rotate around x axis */
                         for (m = YY; m <= ZZ; m++)
                         {
-                            x[ndx+l][m] = box[YY][m] + box[ZZ][m] - x[ndx+l][m];
-                            v[ndx+l][m] = -v[ndx+l][m];
+                            x[ndx + l][m] = box[YY][m] + box[ZZ][m] - x[ndx + l][m];
+                            v[ndx + l][m] = -v[ndx + l][m];
                         }
                     }
                     for (m = 0; (m < DIM); m++)
                     {
-                        x[ndx+l][m] += shift[m];
+                        x[ndx + l][m] += shift[m];
                     }
-                    atoms.atom[ndx+l].resind = nrdx + atoms.atom[l].resind;
-                    atoms.atomname[ndx+l]    = atoms.atomname[l];
+                    atoms.atom[ndx + l].resind = nrdx + atoms.atom[l].resind;
+                    atoms.atomname[ndx + l]    = atoms.atomname[l];
                 }
 
                 for (l = 0; (l < nres); l++)
                 {
-                    atoms.resinfo[nrdx+l] = atoms.resinfo[l];
+                    atoms.resinfo[nrdx + l] = atoms.resinfo[l];
                     if (bRenum)
                     {
-                        atoms.resinfo[nrdx+l].nr += nrdx;
+                        atoms.resinfo[nrdx + l].nr += nrdx;
                     }
                 }
                 if (bTRX)
                 {
-                    if (!read_next_x(oenv, status, &t, xx, boxx) &&
-                        ((i+1)*(j+1)*(k+1) < vol))
+                    if (!read_next_x(oenv, status, &t, xx, boxx) && ((i + 1) * (j + 1) * (k + 1) < vol))
                     {
                         gmx_fatal(FARGS, "Not enough frames in trajectory");
                     }
@@ -306,7 +300,7 @@ int gmx_genconf(int argc, char *argv[])
     {
         for (i = 0; i < atoms.nres; i++)
         {
-            atoms.resinfo[i].nr = i+1;
+            atoms.resinfo[i].nr = i + 1;
         }
     }