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

Comparing trunk/src/primitives/Molecule.cpp (file contents):
Revision 2053 by gezelter, Mon Jan 12 16:04:43 2015 UTC vs.
Revision 2071 by gezelter, Sat Mar 7 21:41:51 2015 UTC

# Line 53 | Line 53
53   #include "primitives/Molecule.hpp"
54   #include "utils/MemoryUtils.hpp"
55   #include "utils/simError.h"
56 < #include "utils/ElementsTable.hpp"
56 > #include "utils/StringUtils.hpp"
57  
58   namespace OpenMD {
59    Molecule::Molecule(int stampId, int globalIndex, const std::string& molName,
60 <                     int region) : stampId_(stampId),
60 >                     int region) :
61                                     globalIndex_(globalIndex),
62 <                                   moleculeName_(molName),
63 <                                   region_(region),
62 >                                   stampId_(stampId),
63 >                                   region_(region),
64 >                                   moleculeName_(molName),
65                                     constrainTotalCharge_(false) {
66    }
67    
# Line 196 | Line 197 | namespace OpenMD {
197        // get the chain of base types for this atom type:
198        std::vector<AtomType*> ayb = at->allYourBase();
199        // use the last type in the chain of base types for the name:
200 <      std::string bn = ayb[ayb.size()-1]->getName();
200 <      
201 <      if (bn.compare("O")==0 || bn.compare("N")==0 || bn.compare("F")==0)
202 <        hBondAcceptors_.push_back( atom );
200 >      std::string bn = UpperCase(ayb[ayb.size()-1]->getName());
201  
202 +        if (bn.compare("O")==0 || bn.compare("N")==0
203 +            || bn.compare("F")==0)
204 +          hBondAcceptors_.push_back( atom );
205 +      
206      }
207      
208      // find electronegative atoms that are either bonded to
# Line 215 | Line 217 | namespace OpenMD {
217        std::vector<AtomType*> ayb1 = at1->allYourBase();
218        std::vector<AtomType*> ayb2 = at2->allYourBase();
219        // use the last type in the chain of base types for the name:
220 <      std::string bn1 = ayb1[ayb1.size()-1]->getName();
221 <      std::string bn2 = ayb2[ayb2.size()-1]->getName();
220 >      std::string bn1 = UpperCase(ayb1[ayb1.size()-1]->getName());
221 >      std::string bn2 = UpperCase(ayb2[ayb2.size()-1]->getName());
222        
223        if (bn1.compare("H")==0) {
224          if (bn2.compare("O")==0 || bn2.compare("N")==0
# Line 246 | Line 248 | namespace OpenMD {
248          // get the chain of base types for this atom type:
249          std::vector<AtomType*> ayb1 = at1->allYourBase();
250          // use the last type in the chain of base types for the name:
251 <        std::string bn1 = ayb1[ayb1.size()-1]->getName();
251 >        std::string bn1 = UpperCase(ayb1[ayb1.size()-1]->getName());
252          
253          if (bn1.compare("O")==0 || bn1.compare("N")==0
254              || bn1.compare("F")==0) {
# Line 256 | Line 258 | namespace OpenMD {
258              // get the chain of base types for this atom type:              
259              std::vector<AtomType*> ayb2 = at2->allYourBase();
260              // use the last type in the chain of base types for the name:
261 <            std::string bn2 = ayb2[ayb2.size()-1]->getName();
261 >            std::string bn2 = UpperCase(ayb2[ayb2.size()-1]->getName());
262              if (bn2.compare("H")==0) {              
263                HBondDonor* donor = new HBondDonor();
264                donor->donorAtom = atom1;

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines