ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE/libmdtools/ForceFields.cpp
(Generate patch)

Comparing trunk/OOPSE/libmdtools/ForceFields.cpp (file contents):
Revision 1167 by tim, Wed May 12 16:38:45 2004 UTC vs.
Revision 1213 by chrisfen, Tue Jun 1 18:07:34 2004 UTC

# Line 81 | Line 81 | void ForceFields::doForces( int calcPot, int calcStres
81    double* u_l;
82    double* rc;
83    double* massRatio;
84 +  double factor;
85    SimState* config;
86  
87    Molecule* myMols;
# Line 196 | Line 197 | void ForceFields::doForces( int calcPot, int calcStres
197      entry_plug->molecules[i].atoms2rigidBodies();
198    }
199  
200 +
201 +  if (entry_plug->useSolidThermInt && !entry_plug->useLiquidThermInt) {
202 +
203 +    factor = pow(entry_plug->thermIntLambda, entry_plug->thermIntK);
204 +    for (i=0; i < entry_plug->integrableObjects.size(); i++) {
205 +      for (j=0; j< 3; j++)
206 +        frc[3*i + j] *= factor;
207 +      if (entry_plug->integrableObjects[i]->isDirectional()) {
208 +        for (j=0; j< 3; j++)
209 +          trq[3*i + j] *= factor;
210 +      }
211 +    }
212 +    entry_plug->vRaw = entry_plug->lrPot;
213 +    entry_plug->lrPot *= factor;
214 +    entry_plug->lrPot += entry_plug->restraint->Calc_Restraint_Forces(entry_plug->integrableObjects);
215 +    entry_plug->vHarm = entry_plug->restraint->getVharm();
216 +  }
217 +
218 +  if (entry_plug->useLiquidThermInt) {
219 +
220 +    factor = pow(entry_plug->thermIntLambda, entry_plug->thermIntK);
221 +    for (i=0; i < entry_plug->integrableObjects.size(); i++) {
222 +      for (j=0; j< 3; j++)
223 +        frc[3*i + j] *= factor;
224 +      if (entry_plug->integrableObjects[i]->isDirectional()) {
225 +        for (j=0; j< 3; j++)
226 +          trq[3*i + j] *= factor;
227 +      }
228 +    }
229 +    entry_plug->vRaw = entry_plug->lrPot;
230 +    entry_plug->lrPot *= factor;
231 +  }
232  
233   #ifdef IS_MPI
234    sprintf( checkPointMsg,
# Line 228 | Line 261 | void ForceFields::initFortran(int ljMixPolicy, int use
261   #endif // is_mpi
262    
263   }
264 +
265 +
266 + void ForceFields::initRestraints(){
267 +  int i;
268 +  // store the initial info.
269 +  // set the omega values to zero
270 +  for (i=0; i<entry_plug->integrableObjects.size(); i++)
271 +    entry_plug->integrableObjects[i]->setZangle( 0.0 );
272 +
273 +  entry_plug->restraint->Store_Init_Info(entry_plug->integrableObjects);
274 +
275 + }
276 +
277 + void ForceFields::dumpzAngle(){
278 +
279 +  // store the initial info.
280 +  entry_plug->restraint->Write_zAngle_File(entry_plug->integrableObjects);
281 +
282 + }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines