git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@2556 f3b2605a-c512-4ea7-a41b-209d697bcdaa

This commit is contained in:
sjplimp 2009-02-06 16:48:33 +00:00
parent ca89c3f145
commit 5eae31392e
3 changed files with 52 additions and 49 deletions

View File

@ -7,6 +7,21 @@ if ($1 == 1) then
cp pair_reax.cpp ..
cp pair_reax.h ..
cp reax_cbkabo.h ..
cp reax_cbkbo.h ..
cp reax_cbkc.h ..
cp reax_cbkch.h ..
cp reax_cbkd.h ..
cp reax_cbkia.h ..
cp reax_cbklonpar.h ..
cp reax_cbknubon2.h ..
cp reax_cbkpairs.h ..
cp reax_cbkqa.h ..
cp reax_energies.h ..
cp reax_fortran.h ..
cp reax_functions.h ..
cp reax_params.h ..
cp reax_small.h ..
else if ($1 == 0) then
@ -16,5 +31,20 @@ else if ($1 == 0) then
rm ../pair_reax.cpp
rm ../pair_reax.h
rm ../reax_cbkabo.h
rm ../reax_cbkbo.h
rm ../reax_cbkc.h
rm ../reax_cbkch.h
rm ../reax_cbkd.h
rm ../reax_cbkia.h
rm ../reax_cbklonpar.h
rm ../reax_cbknubon2.h
rm ../reax_cbkpairs.h
rm ../reax_cbkqa.h
rm ../reax_energies.h
rm ../reax_fortran.h
rm ../reax_functions.h
rm ../reax_params.h
rm ../reax_small.h
endif

View File

@ -11,6 +11,16 @@
See the README file in the top-level LAMMPS directory.
------------------------------------------------------------------------- */
/* ----------------------------------------------------------------------
Contributing authors: Hansohl Cho (MIT, hansohl@mit.edu)
Aidan Thompson (Sandia, athomps@sandia.gov)
Reactive Force Field (ReaxFF)
the LAMMPS implementation of the ReaxFF is based on
Aidan Thompson's GRASP code
(General Reactive Atomistic Simulation Program)
Ardi Van Duin's original ReaxFF code
------------------------------------------------------------------------- */
/* ----------------------------------------------------------------------
Contributing authors: Aidan Thompson (SNL), Hansohl Cho (MIT)
------------------------------------------------------------------------- */
@ -32,18 +42,17 @@
#include "memory.h"
#include "error.h"
#include "../REAX/reax_fortran.h"
#include "../REAX/reax_params.h"
#include "../REAX/reax_cbkc.h"
#include "../REAX/reax_cbkd.h"
#include "../REAX/reax_cbkch.h"
#include "../REAX/reax_cbkabo.h"
#include "../REAX/reax_cbkia.h"
#include "../REAX/reax_cbkpairs.h"
#include "../REAX/reax_energies.h"
#include "../REAX/reax_small.h"
#include "../REAX/reax_functions.h"
#include "reax_fortran.h"
#include "reax_params.h"
#include "reax_cbkc.h"
#include "reax_cbkd.h"
#include "reax_cbkch.h"
#include "reax_cbkabo.h"
#include "reax_cbkia.h"
#include "reax_cbkpairs.h"
#include "reax_energies.h"
#include "reax_small.h"
#include "reax_functions.h"
using namespace LAMMPS_NS;
@ -66,12 +75,10 @@ PairREAX::PairREAX(LAMMPS *lmp) : Pair(lmp)
chpot = 0;
// Set communication size needed by ReaxFF
comm_forward = 2;
comm_reverse = 1;
precision = 1.0e-6;
}
/* ----------------------------------------------------------------------
@ -81,11 +88,9 @@ PairREAX::PairREAX(LAMMPS *lmp) : Pair(lmp)
PairREAX::~PairREAX()
{
// memory->sfree(w);
if (allocated) {
memory->destroy_2d_int_array(setflag);
memory->destroy_2d_double_array(cutsq);
}
}
@ -93,7 +98,6 @@ PairREAX::~PairREAX()
void PairREAX::compute(int eflag, int vflag)
{
double evdwl, ecoul;
double reax_energy_pieces[13];

View File

@ -11,17 +11,6 @@
See the README file in the top-level LAMMPS directory.
------------------------------------------------------------------------- */
/* ----------------------------------------------------------------------
Reactive Force Field (ReaxFF) class inherited from PAIR_H:
The ReaxFF is implemented in LAMMPS based on Aidan P. Thompson's GRASP
(General Reactive Atomistic Simulation Program) and Ardi Van Duin's
ReaxFF Fortran codes.
Contributing authors: Hansohl Cho (MIT, hansohl@mit.edu)
Aidan P. Thompson (SNL, athompson@sandia.gov)
------------------------------------------------------------------------- */
#ifndef PAIR_REAX_H
#define PAIR_REAX_H
@ -44,37 +33,18 @@ class PairREAX : public Pair {
void unpack_comm(int, int, double *);
int pack_reverse_comm(int, int, double *);
void unpack_reverse_comm(int, int *, double *);
// double memory_usage();
private:
double cutmax; // max cutoff for all elements
// Don't need to read potential coefficient files in ReaxFF
/*
int nelements; // # of unique elements
char **elements; // names of unique elements
double *mass; // mass of each element
int *map; // mapping from atom types to elements
int *fmap; // Fortran version of map array for MEAM lib
int maxneigh;
double *scrfcn,*dscrfcn,*fcpair;
int nmax;
double *rho,*rho0,*rho1,*rho2,*rho3,*frhop;
double *gamma,*dgamma1,*dgamma2,*dgamma3,*arho2b;
double **arho1,**arho2,**arho3,**arho3b,**t_ave;
*/
void allocate();
void read_files(char *, char *);
void neigh_f2c(int, int *, int *, int **);
void neigh_c2f(int, int *, int *, int **);
// For ReaxFF Verlet list
double rcutvsq, rcutbsq;
int iprune,ihb;
@ -114,7 +84,6 @@ class PairREAX : public Pair {
double[], int[], int[], double[]);
double get_cutghost_midpoint() {} // to update cutghost in REAX
};
}