| 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; | 
| 718 |  | } | 
| 719 |  | } | 
| 720 |  |  | 
| 721 | < |  | 
| 721 | > | if (needSitePotential_) { | 
| 722 | > | if (storageLayout & DataStorage::dslSitePotential) { | 
| 723 | > | type += "s"; | 
| 724 | > | RealType sPot = sd->getSitePotential(); | 
| 725 | > | if (isinf(sPot) || isnan(sPot) ) { | 
| 726 | > | sprintf( painCave.errMsg, | 
| 727 | > | "DumpWriter detected a numerical error writing the" | 
| 728 | > | " site potential for object %s", id.c_str()); | 
| 729 | > | painCave.isFatal = 1; | 
| 730 | > | simError(); | 
| 731 | > | } | 
| 732 | > | sprintf(tempBuffer, " %13e ", sPot); | 
| 733 | > | line += tempBuffer; | 
| 734 | > | } | 
| 735 | > | } | 
| 736 | > |  | 
| 737 |  | if (needParticlePot_) { | 
| 738 |  | if (storageLayout & DataStorage::dslParticlePot) { | 
| 739 |  | type += "u"; | 
| 759 |  | } | 
| 760 |  |  | 
| 761 |  | void DumpWriter::writeEor() { | 
| 762 | < | std::ostream* eorStream; | 
| 763 | < |  | 
| 762 | > |  | 
| 763 | > | std::ostream* eorStream = NULL; | 
| 764 | > |  | 
| 765 |  | #ifdef IS_MPI | 
| 766 |  | if (worldRank == 0) { | 
| 767 |  | #endif // is_mpi |