| 64 | 
  | 
namespace OpenMD { | 
| 65 | 
  | 
 | 
| 66 | 
  | 
  DumpWriter::DumpWriter(SimInfo* info)  | 
| 67 | 
< | 
    : info_(info), filename_(info->getDumpFileName()), eorFilename_(info->getFinalConfigFileName()){ | 
| 67 | 
> | 
    : info_(info), filename_(info->getDumpFileName()),  | 
| 68 | 
> | 
      eorFilename_(info->getFinalConfigFileName()){ | 
| 69 | 
  | 
 | 
| 70 | 
  | 
    Globals* simParams = info->getSimParams(); | 
| 71 | 
  | 
    needCompression_   = simParams->getCompressDumpFile(); | 
| 73 | 
  | 
    needParticlePot_   = simParams->getOutputParticlePotential(); | 
| 74 | 
  | 
    needFlucQ_         = simParams->getOutputFluctuatingCharges(); | 
| 75 | 
  | 
    needElectricField_ = simParams->getOutputElectricField(); | 
| 76 | 
+ | 
    needSitePotential_ = simParams->getOutputSitePotential(); | 
| 77 | 
  | 
 | 
| 78 | 
< | 
    if (needParticlePot_ || needFlucQ_ || needElectricField_) { | 
| 78 | 
> | 
    if (needParticlePot_ || needFlucQ_ || needElectricField_ ||  | 
| 79 | 
> | 
        needSitePotential_) { | 
| 80 | 
  | 
      doSiteData_ = true; | 
| 81 | 
  | 
    } else { | 
| 82 | 
  | 
      doSiteData_ = false; | 
| 124 | 
  | 
    needParticlePot_   = simParams->getOutputParticlePotential(); | 
| 125 | 
  | 
    needFlucQ_         = simParams->getOutputFluctuatingCharges(); | 
| 126 | 
  | 
    needElectricField_ = simParams->getOutputElectricField(); | 
| 127 | 
+ | 
    needSitePotential_ = simParams->getOutputSitePotential(); | 
| 128 | 
  | 
 | 
| 129 | 
< | 
    if (needParticlePot_ || needFlucQ_ || needElectricField_) { | 
| 129 | 
> | 
    if (needParticlePot_ || needFlucQ_ || needElectricField_ ||  | 
| 130 | 
> | 
        needSitePotential_) { | 
| 131 | 
  | 
      doSiteData_ = true; | 
| 132 | 
  | 
    } else { | 
| 133 | 
  | 
      doSiteData_ = false; | 
| 175 | 
  | 
    needParticlePot_   = simParams->getOutputParticlePotential(); | 
| 176 | 
  | 
    needFlucQ_         = simParams->getOutputFluctuatingCharges(); | 
| 177 | 
  | 
    needElectricField_ = simParams->getOutputElectricField(); | 
| 178 | 
+ | 
    needSitePotential_ = simParams->getOutputSitePotential(); | 
| 179 | 
  | 
 | 
| 180 | 
< | 
    if (needParticlePot_ || needFlucQ_ || needElectricField_) { | 
| 180 | 
> | 
    if (needParticlePot_ || needFlucQ_ || needElectricField_ ||  | 
| 181 | 
> | 
        needSitePotential_) { | 
| 182 | 
  | 
      doSiteData_ = true; | 
| 183 | 
  | 
    } else { | 
| 184 | 
  | 
      doSiteData_ = false; | 
| 398 | 
  | 
       | 
| 399 | 
  | 
      for (int i = 1; i < nProc; ++i) { | 
| 400 | 
  | 
        // tell processor i to start sending us data: | 
| 401 | 
+ | 
 | 
| 402 | 
  | 
        MPI_Bcast(&i, 1, MPI_INT, masterNode, MPI_COMM_WORLD); | 
| 403 | 
  | 
 | 
| 404 | 
  | 
        // receive the length of the string buffer that was | 
| 428 | 
  | 
        MPI_Bcast(&myturn, 1, MPI_INT, masterNode, MPI_COMM_WORLD); | 
| 429 | 
  | 
        if (myturn == worldRank){ | 
| 430 | 
  | 
          // send the length of our buffer: | 
| 431 | 
+ | 
 | 
| 432 | 
  | 
          MPI_Send(&sendBufferLength, 1, MPI_INT, masterNode, 0, MPI_COMM_WORLD); | 
| 433 | 
  | 
 | 
| 434 | 
  | 
          // send our buffer: | 
| 720 | 
  | 
      } | 
| 721 | 
  | 
    } | 
| 722 | 
  | 
 | 
| 723 | 
< | 
 | 
| 723 | 
> | 
    if (needSitePotential_) { | 
| 724 | 
> | 
      if (storageLayout & DataStorage::dslSitePotential) {           | 
| 725 | 
> | 
        type += "s"; | 
| 726 | 
> | 
        RealType sPot = sd->getSitePotential();         | 
| 727 | 
> | 
        if (isinf(sPot) || isnan(sPot) ) {       | 
| 728 | 
> | 
          sprintf( painCave.errMsg, | 
| 729 | 
> | 
                   "DumpWriter detected a numerical error writing the" | 
| 730 | 
> | 
                   " site potential for object %s", id.c_str());       | 
| 731 | 
> | 
          painCave.isFatal = 1; | 
| 732 | 
> | 
          simError(); | 
| 733 | 
> | 
        } | 
| 734 | 
> | 
        sprintf(tempBuffer, " %13e ", sPot);         | 
| 735 | 
> | 
        line += tempBuffer; | 
| 736 | 
> | 
      } | 
| 737 | 
> | 
    }     | 
| 738 | 
> | 
     | 
| 739 | 
  | 
    if (needParticlePot_) { | 
| 740 | 
  | 
      if (storageLayout & DataStorage::dslParticlePot) { | 
| 741 | 
  | 
        type += "u"; |