ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/branches/new_design/OOPSE-3.0/src/integrators/NPTf.cpp
(Generate patch)

Comparing branches/new_design/OOPSE-3.0/src/integrators/NPTf.cpp (file contents):
Revision 1837 by tim, Thu Dec 2 22:15:31 2004 UTC vs.
Revision 1883 by tim, Mon Dec 13 22:30:27 2004 UTC

# Line 8 | Line 8 | static IntegratorBuilder<NPTf>* NPTfCreator = new Inte
8  
9   namespace oopse {
10  
11 static IntegratorBuilder<NPTf>* NPTfCreator = new IntegratorBuilder<NPTf>("NPTf");
12
11   // Basic non-isotropic thermostating and barostating via the Melchionna
12   // modification of the Hoover algorithm:
13   //
# Line 205 | Line 203 | double NPTf::calcConservedQuantity(){
203  
204   double NPTf::calcConservedQuantity(){
205  
206 +    chi= currentSnapshot_->getChi();
207 +    integralOfChidt = currentSnapshot_->getIntegralOfChiDt();
208 +    loadEta();
209 +    
210 +    // We need NkBT a lot, so just set it here: This is the RAW number
211 +    // of integrableObjects, so no subtraction or addition of constraints or
212 +    // orientational degrees of freedom:
213 +    NkBT = info_->getNGlobalIntegrableObjects()*OOPSEConstant::kB *targetTemp;
214 +
215 +    // fkBT is used because the thermostat operates on more degrees of freedom
216 +    // than the barostat (when there are particles with orientational degrees
217 +    // of freedom).  
218 +    fkBT = info_->getNdf()*OOPSEConstant::kB *targetTemp;    
219 +    
220      double conservedQuantity;
221      double totalEnergy;
222      double thermostat_kinetic;
# Line 236 | Line 248 | void NPTf::loadEta() {
248   void NPTf::loadEta() {
249      eta= currentSnapshot_->getEta();
250  
251 <    if (!eta.isDiagonal()) {
252 <        sprintf( painCave.errMsg,
253 <                 "NPTi error: the diagonal elements of are eta matrix is not same or etaMat is not a diagonal matrix");
254 <        painCave.isFatal = 1;
255 <        simError();
256 <    }
251 >    //if (!eta.isDiagonal()) {
252 >    //    sprintf( painCave.errMsg,
253 >    //             "NPTf error: the diagonal elements of eta matrix are not the same or etaMat is not a diagonal matrix");
254 >    //    painCave.isFatal = 1;
255 >    //    simError();
256 >    //}
257   }
258  
259   void NPTf::saveEta() {

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines