56 |
|
|
57 |
|
LangevinDynamics::LangevinDynamics(SimInfo* info) : VelocityVerletIntegrator(info){ |
58 |
|
setForceManager(new LDForceManager(info)); |
59 |
+ |
|
60 |
+ |
// Langevin Dynamics Force Manager needs to know about the half-time step |
61 |
+ |
// size to get convergence on the friction forces: |
62 |
+ |
dynamic_cast<LDForceManager*>(forceMan_)->setDt2(dt2); |
63 |
|
} |
64 |
|
|
65 |
|
void LangevinDynamics::moveA(){ |
72 |
|
Vector3d frc; |
73 |
|
Vector3d Tb; |
74 |
|
Vector3d ji; |
75 |
< |
double mass; |
75 |
> |
RealType mass; |
76 |
|
|
77 |
|
for (mol = info_->beginMolecule(i); mol != NULL; mol = info_->nextMolecule(i)) { |
78 |
|
for (integrableObject = mol->beginIntegrableObject(j); integrableObject != NULL; |
126 |
|
Vector3d frc; |
127 |
|
Vector3d Tb; |
128 |
|
Vector3d ji; |
129 |
< |
double mass; |
129 |
> |
RealType mass; |
130 |
|
|
131 |
|
for (mol = info_->beginMolecule(i); mol != NULL; mol = info_->nextMolecule(i)) { |
132 |
|
for (integrableObject = mol->beginIntegrableObject(j); integrableObject != NULL; |
166 |
|
} |
167 |
|
|
168 |
|
|
169 |
< |
double LangevinDynamics::calcConservedQuantity() { |
169 |
> |
RealType LangevinDynamics::calcConservedQuantity() { |
170 |
|
return 0.0; |
171 |
|
} |
172 |
|
|