Add Doxygen comments 38/4038/1
authorDavid Hardy <dhardy@ks.uiuc.edu>
Fri, 20 Apr 2018 20:07:14 +0000 (15:07 -0500)
committerDavid Hardy <dhardy@ks.uiuc.edu>
Fri, 20 Apr 2018 20:07:14 +0000 (15:07 -0500)
Doxygen comments added for stochastic velocity rescaling method.

Change-Id: I67b0b64d14de040d0755d1761c176a636b54ab41

src/Controller.C
src/Controller.h
src/Sequencer.h
src/SimParameters.h

index be93f0e..ab8faf3 100644 (file)
@@ -185,10 +185,10 @@ Controller::Controller(NamdState *s) :
 
     rescaleVelocities_sumTemps = 0;  
     rescaleVelocities_numTemps = 0;
+    stochRescale_count = 0;
     if (simParams->stochRescaleOn) {
-      stochRescale_count = 0;
-      stochRescaleTimefactor =\
-        exp(-simParams->stochRescaleFreq*simParams->dt*0.001/simParams->stochRescalePeriod);
+      stochRescaleTimefactor = exp(-simParams->stochRescaleFreq *
+          simParams->dt * 0.001 / simParams->stochRescalePeriod);
     }
     berendsenPressure_avg = 0; berendsenPressure_count = 0;
     // strainRate tensor is symmetric to avoid rotation
index 49d1f45..5e3d325 100644 (file)
@@ -171,9 +171,21 @@ protected:
       int rescaleVelocities_numTemps;
     void reassignVelocities(int);
     void tcoupleVelocities(int);
+
+    /**
+     * The Controller routine for stochastic velocity rescaling uses
+     * the most recent temperature reduction to calculate the velocity
+     * rescaling coefficient that is then broadcast to all patches.
+     */
     void stochRescaleVelocities(int);
-    int stochRescale_count; 
+
+    int stochRescale_count;
+    /**< Count time steps until next stochastic velocity rescaling. */ 
+
     BigReal stochRescaleTimefactor;
+    /**< The timefactor for stochastic velocity rescaling depends on
+     * fixed configuration parameters, so can be precomputed. */
+
     void berendsenPressure(int);
       // Tensor berendsenPressure_avg;
       // int berendsenPressure_count;
index b02356b..f7b86fe 100644 (file)
@@ -88,8 +88,17 @@ protected:
     void reinitVelocities(void);
     void rescaleVelocitiesByFactor(BigReal);
     void tcoupleVelocities(BigReal,int);
+
+    /**
+     * When doing stochastic velocity rescaling, every stochRescaleFreq
+     * steps we receive the globally computed rescaling coefficient and 
+     * apply it to the velocities of all the atoms in our patch.
+     */
     void stochRescaleVelocities(BigReal,int);
+
     int stochRescale_count;
+    /**< Count time steps until next stochastic velocity rescaling. */
+
     void berendsenPressure(int);
       int berendsenPressure_count;
       int checkpoint_berendsenPressure_count;
index 3090d4b..1f7700d 100644 (file)
@@ -562,9 +562,19 @@ public:
                                        //  active
        BigReal tCoupleTemp;            //  Temperature for temp coupling
 
-        Bool stochRescaleOn;            //  Flag TRUE-> stochastic velocity rescaling
-        BigReal stochRescaleTemp;       //  Temperature for stochastic velocity rescaling
-        BigReal stochRescalePeriod;     //  Timescale (ps) for stochastic velocity rescaling
+  Bool stochRescaleOn;
+  /**<  Flag TRUE enables the stochastic velocity rescaling method of
+   * Bussi, Donadio, and Parrinello.  The method is an extension to the
+   * Berendsen thermostat, where a stochastic update to the velocity 
+   * rescaling produces correct sampling of the NVT ensemble.
+   */
+
+  BigReal stochRescaleTemp;
+  /**< Temperature for stochastic velocity rescaling. */
+
+  BigReal stochRescalePeriod;
+  /**< Timescale (ps) for stochastic velocity rescaling. */
+
         int stochRescaleFreq;           //  How frequently stochastic velocity rescaling occurs
 
        int rescaleFreq;                //  Velocity rescale frequency