39 |
|
/** |
40 |
|
* @class VelocityVerletIntegrator VelocityVerletIntegrator.hpp "integrators/VelocityVerletIntegrator.hpp" |
41 |
|
* @brief Velocity-Verlet Family Integrator |
42 |
+ |
* Template pattern is used in VelocityVerletIntegrator class. |
43 |
|
*/ |
44 |
|
class VelocityVerletIntegrator : Integrator { |
45 |
|
public: |
46 |
< |
virtual VelocityVerletIntegrator(); |
46 |
> |
virtual ~VelocityVerletIntegrator(); |
47 |
|
|
48 |
|
virtual void integrate(); |
49 |
|
|
51 |
|
|
52 |
|
VelocityVerletIntegrator(SimInfo* info); |
53 |
|
|
54 |
< |
virtual void moveA(); |
54 |
> |
virtual void integrateStep(); |
55 |
|
|
56 |
< |
virtual void moveB(); |
56 |
> |
virtual void moveA() = 0; |
57 |
> |
|
58 |
> |
virtual void moveB() = 0; |
59 |
|
|
60 |
+ |
virtual void thermalize(); |
61 |
+ |
|
62 |
|
virtual void calcForce(int needPotential, int needStress); |
63 |
+ |
|
64 |
+ |
private: |
65 |
|
|
66 |
+ |
void velocitize(); |
67 |
+ |
|
68 |
+ |
void removeComDrift(); |
69 |
+ |
|
70 |
|
}; |
71 |
|
|
72 |
|
} //end namespace oopse |