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

Comparing trunk/src/applications/staticProps/RippleOP.cpp (file contents):
Revision 1878 by gezelter, Wed Aug 22 02:28:28 2012 UTC vs.
Revision 1879 by gezelter, Sun Jun 16 15:15:42 2013 UTC

# Line 35 | Line 35
35   *                                                                      
36   * [1]  Meineke, et al., J. Comp. Chem. 26, 252-271 (2005).            
37   * [2]  Fennell & Gezelter, J. Chem. Phys. 124, 234104 (2006).          
38 < * [3]  Sun, Lin & Gezelter, J. Chem. Phys. 128, 24107 (2008).          
38 > * [3]  Sun, Lin & Gezelter, J. Chem. Phys. 128, 234107 (2008).          
39   * [4]  Kuang & Gezelter,  J. Chem. Phys. 133, 164101 (2010).
40   * [5]  Vardeman, Stocker & Gezelter, J. Chem. Theory Comput. 7, 834 (2011).
41   */
# Line 45 | Line 45
45   #include "io/DumpReader.hpp"
46   #include "primitives/Molecule.hpp"
47   #include "utils/NumericConstant.hpp"
48 + #include "types/MultipoleAdapter.hpp"
49   namespace OpenMD {
50  
51  
# Line 151 | Line 152 | namespace OpenMD {
152            currentSnapshot_->wrapVector(pos);
153          Vector3d vecHeadUpper;
154          if (pos.z() >= avgZ){
155 <          vecHeadUpper = j1->getElectroFrame().getColumn(2);
155 >          AtomType* atype1 = static_cast<Atom*>(j1)->getAtomType();          
156 >          MultipoleAdapter ma1 = MultipoleAdapter(atype1);
157 >          if (ma1.isDipole())
158 >            vecHeadUpper = j1->getDipole();
159 >          else
160 >            vecHeadUpper = j1->getA().transpose()*V3Z;
161            nUpper++;
162          }
163          Vector3d vecHeadLower;
164          if (pos.z() <= avgZ){
165 <          vecHeadLower = j1->getElectroFrame().getColumn(2);
165 >          AtomType* atype1 = static_cast<Atom*>(j1)->getAtomType();          
166 >          MultipoleAdapter ma1 = MultipoleAdapter(atype1);
167 >          if (ma1.isDipole())
168 >            vecHeadLower = j1->getDipole();
169 >          else
170 >            vecHeadLower = j1->getA().transpose() * V3Z;
171            nLower++;
172          }
173          orderTensorHeadUpper +=outProduct(vecHeadUpper, vecHeadUpper);

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines