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

Comparing:
branches/development/src/flucq/FluctuatingChargeObjectiveFunction.cpp (file contents), Revision 1760 by gezelter, Thu Jun 21 19:26:46 2012 UTC vs.
trunk/src/flucq/FluctuatingChargeObjectiveFunction.cpp (file contents), 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 56 | Line 56 | namespace OpenMD{
56      Snapshot* curSnapshot = info_->getSnapshotManager()->getCurrentSnapshot();
57      potVec pot = curSnapshot->getLongRangePotentials();
58      potVec exPot = curSnapshot->getExcludedPotentials();  
59    cerr << "val p= " <<   pot[ELECTROSTATIC_FAMILY] << "\n";
60    cerr << "val e= " << exPot[ELECTROSTATIC_FAMILY] << "\n";
59    
60      return pot[ELECTROSTATIC_FAMILY] + exPot[ELECTROSTATIC_FAMILY];
61    }
62    
63    void FluctuatingChargeObjectiveFunction::gradient(DynamicVector<RealType>& grad, const DynamicVector<RealType>& x) {
66    int shakeStatus;
64      
65      setCoor(x);    
66      
67      forceMan_->calcForces();
68      fqConstraints_->applyConstraints();
69 <    cerr << "grad\n";
69 >
70      getGrad(grad);      
71    }
72    
# Line 86 | Line 83 | namespace OpenMD{
83      Snapshot* curSnapshot = info_->getSnapshotManager()->getCurrentSnapshot();
84      potVec pot = curSnapshot->getLongRangePotentials();
85      potVec exPot = curSnapshot->getExcludedPotentials();    
89    cerr << "vang p= " <<   pot[ELECTROSTATIC_FAMILY] << "\n";
90    cerr << "vang e= " << exPot[ELECTROSTATIC_FAMILY] << "\n";
86  
87      return pot[ELECTROSTATIC_FAMILY] + exPot[ELECTROSTATIC_FAMILY];
88    }
# Line 106 | Line 101 | namespace OpenMD{
101             atom = mol->nextFluctuatingCharge(j)) {
102        
103          atom->setFlucQPos(x[index++]);
109        cerr << "setting charge = " << x[index -1] << "\n";
104        }
105      }    
106    }
# Line 125 | Line 119 | namespace OpenMD{
119        for (atom = mol->beginFluctuatingCharge(j); atom != NULL;
120             atom = mol->nextFluctuatingCharge(j)) {
121  
122 <        grad[index++] = atom->getFlucQFrc();
129 <        cerr << "getting grad = " << grad[index -1] << "\n";
122 >        grad[index++] = -atom->getFlucQFrc();
123        }
124      }
125    }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines