| 42 |
|
#include <cmath> |
| 43 |
|
#include "restraints/ThermoIntegrationForceManager.hpp" |
| 44 |
|
#include "integrators/Integrator.hpp" |
| 45 |
+ |
#include "math/SquareMatrix3.hpp" |
| 46 |
|
#include "primitives/Molecule.hpp" |
| 47 |
|
#include "utils/simError.h" |
| 48 |
|
#include "utils/OOPSEConstant.hpp" |
| 92 |
|
// build the scaling factor used to modulate the forces and torques |
| 93 |
|
factor_ = pow(tIntLambda_, tIntK_); |
| 94 |
|
|
| 95 |
< |
printf("%f is the factor\n",factor_); |
| 96 |
< |
|
| 95 |
> |
sprintf(painCave.errMsg,"%f is the factor\n",factor_); |
| 96 |
> |
painCave.isFatal = 0; |
| 97 |
> |
simError(); |
| 98 |
> |
|
| 99 |
|
} |
| 100 |
|
|
| 101 |
|
ThermoIntegrationForceManager::~ThermoIntegrationForceManager(){ |
| 110 |
|
StuntDouble* integrableObject; |
| 111 |
|
Vector3d frc; |
| 112 |
|
Vector3d trq; |
| 113 |
+ |
Mat3x3d tempTau; |
| 114 |
|
|
| 115 |
|
// perform the standard calcForces first |
| 116 |
|
ForceManager::calcForces(needPotential, needStress); |
| 144 |
|
lrPot_ *= factor_; |
| 145 |
|
curSnapshot->statData[Stats::LONG_RANGE_POTENTIAL] = lrPot_; |
| 146 |
|
|
| 147 |
< |
|
| 147 |
> |
// scale the pressure tensor |
| 148 |
> |
tempTau = curSnapshot->statData.getTau(); |
| 149 |
> |
tempTau *= factor_; |
| 150 |
> |
curSnapshot->statData.setTau(tempTau); |
| 151 |
> |
|
| 152 |
|
// do crystal restraint forces for thermodynamic integration |
| 153 |
|
if (simParam->getUseSolidThermInt()) { |
| 154 |
|
|