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

Comparing trunk/OOPSE/libmdtools/EAM_FF.cpp (file contents):
Revision 673 by chuckv, Fri Aug 8 21:22:37 2003 UTC vs.
Revision 976 by chrisfen, Thu Jan 22 17:34:20 2004 UTC

# Line 1 | Line 1
1 < #include <cstdlib>
2 < #include <cstdio>
3 < #include <cstring>
1 > #include <stdlib.h>
2 > #include <stdio.h>
3 > #include <string.h>
4  
5   #include <iostream>
6   using namespace std;
# Line 30 | Line 30 | namespace EAM_NS{
30      double mass;
31      double lattice_constant;
32      double eam_drho;  // The distance between each of the points indexed by rho.
33 +    double eam_rcut;  // The cutoff radius for eam.
34      double eam_dr;    // The distance between each of the rho points.    
35      int eam_nrho;  // Number of points indexed by rho
36      int eam_nr;    // The number of points based on r (Both Phi(r) and Rho(r)).
36    double eam_rcut;  // The cutoff radius for eam.
37      int eam_ident; // Atomic number
38      int ident;
39      int last;      //  0  -> default
# Line 76 | Line 76 | namespace EAM_NS{
76      void add( atomStruct &info, double *the_eam_rvals,
77                double *the_eam_rhovals,double *the_eam_Frhovals ){
78  
79      int i;
80
79        // check for duplicates
80        
81        if( !strcmp( info.name, name ) ){
# Line 164 | Line 162 | EAM_FF::EAM_FF(){
162    char* ffPath_env = "FORCE_PARAM_PATH";
163    char* ffPath;
164    char temp[200];
167  char errMsg[1000];
165  
166    headAtomType = NULL;
167    currentAtomType = NULL;
# Line 182 | Line 179 | EAM_FF::EAM_FF(){
179    // Init the atomStruct mpi type
180  
181    atomStruct atomProto; // mpiPrototype
182 <  int atomBC[3] = {15,4,6};  // block counts
182 >  int atomBC[3] = {15,5,5};  // block counts
183    MPI_Aint atomDspls[3];           // displacements
184    MPI_Datatype atomMbrTypes[3];    // member mpi types
185  
# Line 270 | Line 267 | void EAM_FF::calcRcut( void ){
267  
268   void EAM_FF::calcRcut( void ){
269    
270 <  #ifdef IS_MPI
270 > #ifdef IS_MPI
271    double tempEamRcut = eamRcut;
272    MPI_Allreduce( &tempEamRcut, &eamRcut, 1, MPI_DOUBLE, MPI_MAX,
273                   MPI_COMM_WORLD);
274   #endif  //is_mpi
275 <  entry_plug->setRcut(eamRcut);
275 >  entry_plug->setDefaultRcut(eamRcut);
276   }
277  
278  
# Line 305 | Line 302 | void EAM_FF::readParams( void ){
302    info.last = 1; // initialize last to have the last set.
303                   // if things go well, last will be set to 0
304  
308  int i;
305    int identNum;
306    double *eam_rvals;    // Z of r values
307    double *eam_rhovals;  // rho of r values
# Line 411 | Line 407 | void EAM_FF::readParams( void ){
407      MPIcheckPoint();
408  
409      headAtomType = new LinkedAtomType;
410 <    recieveFrcStruct( &info, mpiAtomStructType );
410 >    receiveFrcStruct( &info, mpiAtomStructType );
411  
412      while( !info.last ){
413        
# Line 437 | Line 433 | void EAM_FF::readParams( void ){
433        
434        MPIcheckPoint();
435  
436 <      recieveFrcStruct( &info, mpiAtomStructType );
436 >      receiveFrcStruct( &info, mpiAtomStructType );
437  
438  
439      }
# Line 453 | Line 449 | void EAM_FF::readParams( void ){
449    int isDipole = 0;
450    int isSSD = 0;
451    int isGB = 0;
452 <  int isEAM= 1;
452 >  int isEAM = 1;
453 >  int isCharge = 0;
454    double dipole = 0.0;
455 +  double charge = 0.0;
456    double eamSigma = 0.0;
457    double eamEpslon = 0.0;
458    
# Line 469 | Line 467 | void EAM_FF::readParams( void ){
467                   &isDipole,
468                   &isGB,
469                   &isEAM,
470 +                 &isCharge,
471                   &eamEpslon,
472                   &eamSigma,
473 +                 &charge,
474                   &dipole,
475                   &isError );
476        if( isError ){
# Line 535 | Line 535 | void EAM_FF::initializeAtoms( int nAtoms, Atom** the_a
535    
536    // initialize the atoms
537    
538
539  Atom* thisAtom;
540
538    for( i=0; i<nAtoms; i++ ){
539      
540      currentAtomType = headAtomType->find( the_atoms[i]->getType() );

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines