Code beautification with uncrustify
[alexxy/gromacs.git] / src / gromacs / gmxlib / random.c
index 8cf98e8c84566885adfaf516e47843e3d8cff3e4..1002e7d5f717fa3ca7ffd80b7cf938ea3029ba74 100644 (file)
@@ -1,11 +1,11 @@
 /*
- * 
+ *
  *                This source code is part of
- * 
+ *
  *                 G   R   O   M   A   C   S
- * 
+ *
  *          GROningen MAchine for Chemical Simulations
- * 
+ *
  *                        VERSION 3.2.0
  * Written by David van der Spoel, Erik Lindahl, Berk Hess, and others.
  * Copyright (c) 1991-2000, University of Groningen, The Netherlands.
  * modify it under the terms of the GNU General Public License
  * as published by the Free Software Foundation; either version 2
  * of the License, or (at your option) any later version.
- * 
+ *
  * If you want to redistribute modifications, please consider that
  * scientific software is very special. Version control is crucial -
  * bugs must be traceable. We will be happy to consider code for
  * inclusion in the official distribution, but derived work must not
  * be called official GROMACS. Details are found in the README & COPYING
  * files - if they are missing, get the official version at www.gromacs.org.
- * 
+ *
  * To help us fund GROMACS development, we humbly ask that you cite
  * the papers on the package - you can find them in the top README file.
- * 
+ *
  * For more info, check our website at http://www.gromacs.org
- * 
+ *
  * And Hey:
  * GROningen Mixture of Alchemy and Childrens' Stories
  */
 #include "mtop_util.h"
 
 static void low_mspeed(real tempi,
-                      gmx_mtop_t *mtop,rvec v[], gmx_rng_t rng)
+                       gmx_mtop_t *mtop, rvec v[], gmx_rng_t rng)
 {
-  int  i,m,nrdf;
-  real boltz,sd;
-  real ekin,temp,mass,scal;
-  gmx_mtop_atomloop_all_t aloop;
-  t_atom *atom;
-
-  boltz=BOLTZ*tempi;
-  ekin=0.0;
-  nrdf=0;
-  aloop = gmx_mtop_atomloop_all_init(mtop);
-  while (gmx_mtop_atomloop_all_next(aloop,&i,&atom)) {
-    mass = atom->m;
-    if (mass > 0) {
-      sd=sqrt(boltz/mass);
-      for (m=0; (m<DIM); m++) {
-       v[i][m]=sd*gmx_rng_gaussian_real(rng);
-       ekin += 0.5*mass*v[i][m]*v[i][m];
-      }
-      nrdf += DIM;
+    int                     i, m, nrdf;
+    real                    boltz, sd;
+    real                    ekin, temp, mass, scal;
+    gmx_mtop_atomloop_all_t aloop;
+    t_atom                 *atom;
+
+    boltz = BOLTZ*tempi;
+    ekin  = 0.0;
+    nrdf  = 0;
+    aloop = gmx_mtop_atomloop_all_init(mtop);
+    while (gmx_mtop_atomloop_all_next(aloop, &i, &atom))
+    {
+        mass = atom->m;
+        if (mass > 0)
+        {
+            sd = sqrt(boltz/mass);
+            for (m = 0; (m < DIM); m++)
+            {
+                v[i][m] = sd*gmx_rng_gaussian_real(rng);
+                ekin   += 0.5*mass*v[i][m]*v[i][m];
+            }
+            nrdf += DIM;
+        }
+    }
+    temp = (2.0*ekin)/(nrdf*BOLTZ);
+    if (temp > 0)
+    {
+        scal = sqrt(tempi/temp);
+        for (i = 0; (i < mtop->natoms); i++)
+        {
+            for (m = 0; (m < DIM); m++)
+            {
+                v[i][m] *= scal;
+            }
+        }
+    }
+    fprintf(stderr, "Velocities were taken from a Maxwell distribution at %g K\n",
+            tempi);
+    if (debug)
+    {
+        fprintf(debug,
+                "Velocities were taken from a Maxwell distribution\n"
+                "Initial generated temperature: %12.5e (scaled to: %12.5e)\n",
+                temp, tempi);
     }
-  }
-  temp=(2.0*ekin)/(nrdf*BOLTZ);
-  if (temp > 0) {
-    scal=sqrt(tempi/temp);
-    for(i=0; (i<mtop->natoms); i++)
-      for(m=0; (m<DIM); m++)
-       v[i][m]*=scal;
-  }
-  fprintf(stderr,"Velocities were taken from a Maxwell distribution at %g K\n",
-         tempi);
-  if (debug) {
-    fprintf(debug,
-           "Velocities were taken from a Maxwell distribution\n"
-           "Initial generated temperature: %12.5e (scaled to: %12.5e)\n",
-           temp,tempi);
-  }
 }
 
-void maxwell_speed(real tempi,int seed,gmx_mtop_t *mtop, rvec v[])
+void maxwell_speed(real tempi, int seed, gmx_mtop_t *mtop, rvec v[])
 {
-  atom_id *dummy;
-  int     i;
-  gmx_rng_t rng;
-  
-  if (seed == -1) {
-    seed = make_seed();
-    fprintf(stderr,"Using random seed %d for generating velocities\n",seed);
-  }
-  
-  rng = gmx_rng_init(seed);
-
-  low_mspeed(tempi,mtop,v,rng);
-
-  gmx_rng_destroy(rng);
+    atom_id  *dummy;
+    int       i;
+    gmx_rng_t rng;
+
+    if (seed == -1)
+    {
+        seed = make_seed();
+        fprintf(stderr, "Using random seed %d for generating velocities\n", seed);
+    }
+
+    rng = gmx_rng_init(seed);
+
+    low_mspeed(tempi, mtop, v, rng);
+
+    gmx_rng_destroy(rng);
 }
 
-real calc_cm(FILE *log,int natoms,real mass[],rvec x[],rvec v[],
-            rvec xcm,rvec vcm,rvec acm,matrix L)
+real calc_cm(FILE *log, int natoms, real mass[], rvec x[], rvec v[],
+             rvec xcm, rvec vcm, rvec acm, matrix L)
 {
-  rvec dx,a0;
-  real tm,m0;
-  int  i,m;
-
-  clear_rvec(xcm);
-  clear_rvec(vcm);
-  clear_rvec(acm);
-  tm=0.0;
-  for(i=0; (i<natoms); i++) {
-    m0=mass[i];
-    tm+=m0;
-    cprod(x[i],v[i],a0);
-    for(m=0; (m<DIM); m++) {
-      xcm[m]+=m0*x[i][m]; /* c.o.m. position */
-      vcm[m]+=m0*v[i][m]; /* c.o.m. velocity */
-      acm[m]+=m0*a0[m];   /* rotational velocity around c.o.m. */
+    rvec dx, a0;
+    real tm, m0;
+    int  i, m;
+
+    clear_rvec(xcm);
+    clear_rvec(vcm);
+    clear_rvec(acm);
+    tm = 0.0;
+    for (i = 0; (i < natoms); i++)
+    {
+        m0  = mass[i];
+        tm += m0;
+        cprod(x[i], v[i], a0);
+        for (m = 0; (m < DIM); m++)
+        {
+            xcm[m] += m0*x[i][m]; /* c.o.m. position */
+            vcm[m] += m0*v[i][m]; /* c.o.m. velocity */
+            acm[m] += m0*a0[m];   /* rotational velocity around c.o.m. */
+        }
+    }
+    cprod(xcm, vcm, a0);
+    for (m = 0; (m < DIM); m++)
+    {
+        xcm[m] /= tm;
+        vcm[m] /= tm;
+        acm[m] -= a0[m]/tm;
     }
-  }
-  cprod(xcm,vcm,a0);
-  for(m=0; (m<DIM); m++) {
-    xcm[m]/=tm;
-    vcm[m]/=tm;
-    acm[m]-=a0[m]/tm;
-  }
-
-#define PVEC(str,v) fprintf(log,\
-                           "%s[X]: %10.5e  %s[Y]: %10.5e  %s[Z]: %10.5e\n", \
-                          str,v[0],str,v[1],str,v[2])
+
+#define PVEC(str, v) fprintf(log, \
+                             "%s[X]: %10.5e  %s[Y]: %10.5e  %s[Z]: %10.5e\n", \
+                             str, v[0], str, v[1], str, v[2])
 #ifdef DEBUG
-  PVEC("xcm",xcm);
-  PVEC("acm",acm);
-  PVEC("vcm",vcm);
+    PVEC("xcm", xcm);
+    PVEC("acm", acm);
+    PVEC("vcm", vcm);
 #endif
-  
-  clear_mat(L);
-  for(i=0; (i<natoms); i++) {
-    m0=mass[i];
-    for(m=0; (m<DIM); m++)
-      dx[m]=x[i][m]-xcm[m];
-    L[XX][XX]+=dx[XX]*dx[XX]*m0;
-    L[XX][YY]+=dx[XX]*dx[YY]*m0;
-    L[XX][ZZ]+=dx[XX]*dx[ZZ]*m0;
-    L[YY][YY]+=dx[YY]*dx[YY]*m0;
-    L[YY][ZZ]+=dx[YY]*dx[ZZ]*m0;
-    L[ZZ][ZZ]+=dx[ZZ]*dx[ZZ]*m0;
-  }
+
+    clear_mat(L);
+    for (i = 0; (i < natoms); i++)
+    {
+        m0 = mass[i];
+        for (m = 0; (m < DIM); m++)
+        {
+            dx[m] = x[i][m]-xcm[m];
+        }
+        L[XX][XX] += dx[XX]*dx[XX]*m0;
+        L[XX][YY] += dx[XX]*dx[YY]*m0;
+        L[XX][ZZ] += dx[XX]*dx[ZZ]*m0;
+        L[YY][YY] += dx[YY]*dx[YY]*m0;
+        L[YY][ZZ] += dx[YY]*dx[ZZ]*m0;
+        L[ZZ][ZZ] += dx[ZZ]*dx[ZZ]*m0;
+    }
 #ifdef DEBUG
-  PVEC("L-x",L[XX]);
-  PVEC("L-y",L[YY]);
-  PVEC("L-z",L[ZZ]);
+    PVEC("L-x", L[XX]);
+    PVEC("L-y", L[YY]);
+    PVEC("L-z", L[ZZ]);
 #endif
 
-  return tm;
+    return tm;
 }
 
-void stop_cm(FILE *log,int natoms,real mass[],rvec x[],rvec v[])
+void stop_cm(FILE *log, int natoms, real mass[], rvec x[], rvec v[])
 {
-  rvec   xcm,vcm,acm;
-  tensor L;
-  int    i,m;
+    rvec   xcm, vcm, acm;
+    tensor L;
+    int    i, m;
 
 #ifdef DEBUG
-  fprintf(log,"stopping center of mass motion...\n");
+    fprintf(log, "stopping center of mass motion...\n");
 #endif
-  (void)calc_cm(log,natoms,mass,x,v,xcm,vcm,acm,L);
-  
-  /* Subtract center of mass velocity */
-  for(i=0; (i<natoms); i++)
-    for(m=0; (m<DIM); m++)
-      v[i][m]-=vcm[m];
+    (void)calc_cm(log, natoms, mass, x, v, xcm, vcm, acm, L);
+
+    /* Subtract center of mass velocity */
+    for (i = 0; (i < natoms); i++)
+    {
+        for (m = 0; (m < DIM); m++)
+        {
+            v[i][m] -= vcm[m];
+        }
+    }
 
 #ifdef DEBUG
-  (void)calc_cm(log,natoms,mass,x,v,xcm,vcm,acm,L);
+    (void)calc_cm(log, natoms, mass, x, v, xcm, vcm, acm, L);
 #endif
 }