ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/OpenMD/branches/development/src/rnemd/RNEMD.cpp
(Generate patch)

Comparing branches/development/src/rnemd/RNEMD.cpp (file contents):
Revision 1812 by gezelter, Fri Nov 16 21:18:42 2012 UTC vs.
Revision 1813 by gezelter, Fri Nov 16 21:39:55 2012 UTC

# Line 51 | Line 51
51   #include "utils/Tuple.hpp"
52   #ifdef IS_MPI
53   #include <mpi.h>
54 + #endif
55 +
56 + #ifdef _MSC_VER
57 + #define isnan(x) _isnan((x))
58 + #define isinf(x) (!_finite(x) && !_isnan(x))
59   #endif
60  
61   #define HONKING_LARGE_VALUE 1.0e10
# Line 65 | Line 70 | namespace OpenMD {
70      failTrialCount_ = 0;
71      failRootCount_ = 0;
72  
68    int seedValue;
73      Globals * simParams = info->getSimParams();
74      RNEMDParameters* rnemdParams = simParams->getRNEMDParameters();
75  
# Line 306 | Line 310 | namespace OpenMD {
310      z.title =  "Z";
311      z.dataType = "RealType";
312      z.accumulator.reserve(nBins_);
313 <    for (unsigned int i = 0; i < nBins_; i++)
313 >    for (int i = 0; i < nBins_; i++)
314        z.accumulator.push_back( new Accumulator() );
315      data_[Z] = z;
316      outputMap_["Z"] =  Z;
# Line 316 | Line 320 | namespace OpenMD {
320      temperature.title =  "Temperature";
321      temperature.dataType = "RealType";
322      temperature.accumulator.reserve(nBins_);
323 <    for (unsigned int i = 0; i < nBins_; i++)
323 >    for (int i = 0; i < nBins_; i++)
324        temperature.accumulator.push_back( new Accumulator() );
325      data_[TEMPERATURE] = temperature;
326      outputMap_["TEMPERATURE"] =  TEMPERATURE;
# Line 326 | Line 330 | namespace OpenMD {
330      velocity.title =  "Velocity";  
331      velocity.dataType = "Vector3d";
332      velocity.accumulator.reserve(nBins_);
333 <    for (unsigned int i = 0; i < nBins_; i++)
333 >    for (int i = 0; i < nBins_; i++)
334        velocity.accumulator.push_back( new VectorAccumulator() );
335      data_[VELOCITY] = velocity;
336      outputMap_["VELOCITY"] = VELOCITY;
# Line 336 | Line 340 | namespace OpenMD {
340      density.title =  "Density";
341      density.dataType = "RealType";
342      density.accumulator.reserve(nBins_);
343 <    for (unsigned int i = 0; i < nBins_; i++)
343 >    for (int i = 0; i < nBins_; i++)
344        density.accumulator.push_back( new Accumulator() );
345      data_[DENSITY] = density;
346      outputMap_["DENSITY"] =  DENSITY;
# Line 448 | Line 452 | namespace OpenMD {
452  
453      int selei;
454      StuntDouble* sd;
451    int idx;
455  
456      RealType min_val;
457      bool min_found = false;  
# Line 461 | Line 464 | namespace OpenMD {
464      for (sd = seleMan_.beginSelected(selei); sd != NULL;
465           sd = seleMan_.nextSelected(selei)) {
466  
464      idx = sd->getLocalIndex();
465
467        Vector3d pos = sd->getPos();
468  
469        // wrap the stuntdouble's position back into the box:
# Line 540 | Line 541 | namespace OpenMD {
541        }
542      }
543      
544 < #ifdef IS_MPI
545 <    int nProc, worldRank;
544 > #ifdef IS_MPI    
545 >    int worldRank = MPI::COMM_WORLD.Get_rank();
546      
546    nProc = MPI::COMM_WORLD.Get_size();
547    worldRank = MPI::COMM_WORLD.Get_rank();
548
547      bool my_min_found = min_found;
548      bool my_max_found = max_found;
549  
# Line 778 | Line 776 | namespace OpenMD {
776  
777      int selei;
778      StuntDouble* sd;
781    int idx;
779  
780      vector<StuntDouble*> hotBin, coldBin;
781  
# Line 800 | Line 797 | namespace OpenMD {
797      for (sd = seleMan_.beginSelected(selei); sd != NULL;
798           sd = seleMan_.nextSelected(selei)) {
799  
803      idx = sd->getLocalIndex();
804
800        Vector3d pos = sd->getPos();
801  
802        // wrap the stuntdouble's position back into the box:
# Line 1225 | Line 1220 | namespace OpenMD {
1220  
1221      int selei;
1222      StuntDouble* sd;
1228    int idx;
1223  
1224      vector<StuntDouble*> hotBin, coldBin;
1225  
# Line 1240 | Line 1234 | namespace OpenMD {
1234      for (sd = seleMan_.beginSelected(selei); sd != NULL;
1235           sd = seleMan_.nextSelected(selei)) {
1236  
1243      idx = sd->getLocalIndex();
1244
1237        Vector3d pos = sd->getPos();
1238  
1239        // wrap the stuntdouble's position back into the box:
# Line 1416 | Line 1408 | namespace OpenMD {
1408  
1409      int selei(0);
1410      StuntDouble* sd;
1419    int idx;
1411  
1412      vector<RealType> binMass(nBins_, 0.0);
1413      vector<RealType> binPx(nBins_, 0.0);
# Line 1442 | Line 1433 | namespace OpenMD {
1433      */
1434  
1435      for (sd = seleMan_.beginSelected(selei); sd != NULL;
1436 <         sd = seleMan_.nextSelected(selei)) {
1436 >         sd = seleMan_.nextSelected(selei)) {    
1437      
1447      idx = sd->getLocalIndex();
1448      
1438        Vector3d pos = sd->getPos();
1439  
1440        // wrap the stuntdouble's position back into the box:
# Line 1675 | Line 1664 | namespace OpenMD {
1664        
1665        rnemdFile_.precision(8);
1666        
1667 <      for (unsigned int j = 0; j < nBins_; j++) {        
1667 >      for (int j = 0; j < nBins_; j++) {        
1668          
1669          for (unsigned int i = 0; i < outputMask_.size(); ++i) {
1670            if (outputMask_[i]) {
# Line 1701 | Line 1690 | namespace OpenMD {
1690        rnemdFile_ << "#######################################################\n";
1691  
1692  
1693 <      for (unsigned int j = 0; j < nBins_; j++) {        
1693 >      for (int j = 0; j < nBins_; j++) {        
1694          rnemdFile_ << "#";
1695          for (unsigned int i = 0; i < outputMask_.size(); ++i) {
1696            if (outputMask_[i]) {
# Line 1737 | Line 1726 | namespace OpenMD {
1726      assert(bin < nBins_);
1727      RealType s;
1728      
1729 <    data_[index].accumulator[bin]->getAverage(s);
1729 >    dynamic_cast<Accumulator *>(data_[index].accumulator[bin])->getAverage(s);
1730      
1731      if (! isinf(s) && ! isnan(s)) {
1732        rnemdFile_ << "\t" << s;
# Line 1775 | Line 1764 | namespace OpenMD {
1764      assert(bin < nBins_);
1765      RealType s;
1766      
1767 <    data_[index].accumulator[bin]->getStdDev(s);
1767 >    dynamic_cast<Accumulator *>(data_[index].accumulator[bin])->getStdDev(s);
1768      
1769      if (! isinf(s) && ! isnan(s)) {
1770        rnemdFile_ << "\t" << s;

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines