--- trunk/src/brains/Snapshot.cpp 2014/01/24 14:17:42 1966 +++ trunk/src/brains/Snapshot.cpp 2014/10/16 19:13:51 2024 @@ -130,7 +130,8 @@ namespace OpenMD { frameData.pressure = 0.0; frameData.temperature = 0.0; frameData.pressureTensor = Mat3x3d(0.0); - frameData.systemDipole = Vector3d(0.0); + frameData.systemDipole = Vector3d(0.0); + frameData.systemQuadrupole = Mat3x3d(0.0); frameData.convectiveHeatFlux = Vector3d(0.0, 0.0, 0.0); frameData.electronicTemperature = 0.0; frameData.COM = V3Zero; @@ -154,6 +155,7 @@ namespace OpenMD { hasCOMw = false; hasPressureTensor = false; hasSystemDipole = false; + hasSystemQuadrupole = false; hasConvectiveHeatFlux = false; hasInertiaTensor = false; hasGyrationalVolume = false; @@ -452,6 +454,7 @@ namespace OpenMD { if (!hasPotentialEnergy) { frameData.potentialEnergy = this->getLongRangePotential(); frameData.potentialEnergy += this->getShortRangePotential(); + frameData.potentialEnergy += this->getRestraintPotential(); hasPotentialEnergy = true; } return frameData.potentialEnergy; @@ -600,8 +603,17 @@ namespace OpenMD { void Snapshot::setSystemDipole(const Vector3d& bd) { hasSystemDipole = true; frameData.systemDipole = bd; + } + + Mat3x3d Snapshot::getSystemQuadrupole() { + return frameData.systemQuadrupole; } + void Snapshot::setSystemQuadrupole(const Mat3x3d& bq) { + hasSystemQuadrupole = true; + frameData.systemQuadrupole = bq; + } + void Snapshot::setThermostat(const pair& thermostat) { frameData.thermostat = thermostat; }