ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/OpenMD/trunk/src/brains/Stats.cpp
(Generate patch)

Comparing trunk/src/brains/Stats.cpp (file contents):
Revision 1879 by gezelter, Sun Jun 16 15:15:42 2013 UTC vs.
Revision 2022 by gezelter, Fri Sep 26 22:22:28 2014 UTC

# Line 201 | Line 201 | namespace OpenMD {
201      data_[HYDROGENBONDING_POTENTIAL] = hydrogenbonding_potential;
202      statsMap_["HYDROGENBONDING_POTENTIAL"] =  HYDROGENBONDING_POTENTIAL;
203  
204 +    StatsData reciprocal_potential;
205 +    reciprocal_potential.units =  "kcal/mol";
206 +    reciprocal_potential.title =  "Reciprocal Space Potential";    
207 +    reciprocal_potential.dataType = "RealType";
208 +    reciprocal_potential.accumulator = new Accumulator();
209 +    data_[RECIPROCAL_POTENTIAL] = reciprocal_potential;
210 +    statsMap_["RECIPROCAL_POTENTIAL"] =  RECIPROCAL_POTENTIAL;
211 +
212      StatsData short_range_potential;
213      short_range_potential.units =  "kcal/mol";
214      short_range_potential.title =  "Short Range Potential";
# Line 272 | Line 280 | namespace OpenMD {
280      system_dipole.accumulator = new VectorAccumulator();
281      data_[SYSTEM_DIPOLE] = system_dipole;
282      statsMap_["SYSTEM_DIPOLE"] =  SYSTEM_DIPOLE;
283 +
284 +    StatsData system_quadrupole;
285 +    system_quadrupole.units =  "C*m*m";
286 +    system_quadrupole.title =  "System Quadrupole";
287 +    system_quadrupole.dataType = "Mat3x3d";
288 +    system_quadrupole.accumulator = new MatrixAccumulator();
289 +    data_[SYSTEM_QUADRUPOLE] = system_quadrupole;
290 +    statsMap_["SYSTEM_QUADRUPOLE"] =  SYSTEM_QUADRUPOLE;
291  
292      StatsData tagged_pair_distance;
293      tagged_pair_distance.units =  "Ang";
# Line 366 | Line 382 | namespace OpenMD {
382      }
383      if (info_->getCalcBoxDipole()){
384        statsMask_.set(SYSTEM_DIPOLE);
385 +    }
386 +
387 +    // Why do we have both of these?
388 +    if (simParams->getAccumulateBoxQuadrupole()) {
389 +      statsMask_.set(SYSTEM_QUADRUPOLE);
390 +    }
391 +    if (info_->getCalcBoxQuadrupole()){
392 +      statsMask_.set(SYSTEM_QUADRUPOLE);
393      }
394  
395      if (simParams->havePrintHeatFlux()) {
# Line 460 | Line 484 | namespace OpenMD {
484          case SYSTEM_DIPOLE:
485            dynamic_cast<VectorAccumulator *>(data_[i].accumulator)->add(thermo.getSystemDipole());
486            break;
487 +        case SYSTEM_QUADRUPOLE:
488 +          dynamic_cast<MatrixAccumulator *>(data_[i].accumulator)->add(thermo.getSystemQuadrupole());
489 +          break;
490          case HEATFLUX:
491            dynamic_cast<VectorAccumulator *>(data_[i].accumulator)->add(thermo.getHeatFlux());
492            break;
# Line 490 | Line 517 | namespace OpenMD {
517          case HYDROGENBONDING_POTENTIAL:
518            dynamic_cast<Accumulator *>(data_[i].accumulator)->add(snap->getLongRangePotentials()[HYDROGENBONDING_FAMILY]);
519            break;
520 +        case RECIPROCAL_POTENTIAL:
521 +          dynamic_cast<Accumulator *>(data_[i].accumulator)->add(snap->getReciprocalPotential());
522 +          break;
523          case SHORT_RANGE_POTENTIAL:
524            dynamic_cast<Accumulator *>(data_[i].accumulator)->add(snap->getShortRangePotential());
525            break;

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines