Simpatico  v1.10
ddMd/integrators/NvtLangevinIntegrator.h
1 #ifndef DDMD_NVT_LANGEVIN_INTEGRATOR_H
2 #define DDMD_NVT_LANGEVIN_INTEGRATOR_H
3 
4 /*
5 * Simpatico - Simulation Package for Polymeric and Molecular Liquids
6 *
7 * Copyright 2010 - 2017, The Regents of the University of Minnesota
8 * Distributed under the terms of the GNU General Public License.
9 */
10 
11 #include "TwoStepIntegrator.h" // base class
12 
13 namespace DdMd
14 {
15 
16  class Simulation;
17  using namespace Util;
18 
37  {
38 
39  public:
40 
44  NvtLangevinIntegrator(Simulation& simulation);
45 
50 
56  void readParameters(std::istream& in);
57 
63  virtual void loadParameters(Serializable::IArchive &ar);
64 
70  virtual void save(Serializable::OArchive &ar);
71 
72  protected:
73 
79  void setup();
80 
86  virtual void integrateStep1();
87 
93  virtual void integrateStep2();
94 
95  private:
96 
98  double dt_;
99 
101  double gamma_;
102 
104  DArray<double> prefactors_;
105 
107  DArray<double> cv_;
108 
110  DArray<double> cr_;
111 
112  };
113 
114 }
115 #endif
A NVT molecular dynamics integrator with a Langevin thermostat.
Parallel domain decomposition (DD) MD simulation.
Main object for a domain-decomposition MD simulation.
Saving / output archive for binary ostream.
Utility classes for scientific computation.
Definition: accumulators.mod:1
Saving archive for binary istream.
A two-step velocity-Verlet style integrator.