forked from lijiext/lammps
Merge remote-tracking branch 'origin/master' into refactor-table-reading
This commit is contained in:
commit
52f5968695
|
@ -4,7 +4,11 @@
|
|||
ifndef KOKKOS_PATH
|
||||
KOKKOS_PATH=../../lib/kokkos
|
||||
endif
|
||||
|
||||
CXXFLAGS=$(CCFLAGS)
|
||||
ifeq ($(mode),shared)
|
||||
CXXFLAGS += $(SHFLAGS)
|
||||
endif
|
||||
|
||||
KOKKOS_VERSION_MAJOR = 3
|
||||
KOKKOS_VERSION_MINOR = 1
|
||||
|
|
|
@ -51,7 +51,8 @@ struct DoCoul<1> {
|
|||
|
||||
//Specialisation for Neighborlist types Half, HalfThread, Full
|
||||
template <class PairStyle, int NEIGHFLAG, bool STACKPARAMS, class Specialisation = void>
|
||||
struct PairComputeFunctor {
|
||||
class PairComputeFunctor {
|
||||
public:
|
||||
typedef typename PairStyle::device_type device_type ;
|
||||
typedef ArrayTypes<device_type> AT;
|
||||
|
||||
|
|
|
@ -5075,11 +5075,13 @@ void _noopt PairBOP::read_table(char *filename)
|
|||
if(rcut3[i]>rcutall)
|
||||
rcutall=rcut3[i];
|
||||
rcutsq[i]=rcut[i]*rcut[i];
|
||||
rcutsq3[i]=rcut3[i]*rcut3[i];
|
||||
dr[i]=rcut[i]/((double)nr-1.0);
|
||||
rdr[i]=1.0/dr[i];
|
||||
dr3[i]=rcut3[i]/((double)nr-1.0);
|
||||
rdr3[i]=1.0/dr3[i];
|
||||
if (format == 3) {
|
||||
rcutsq3[i]=rcut3[i]*rcut3[i];
|
||||
dr3[i]=rcut3[i]/((double)nr-1.0);
|
||||
rdr3[i]=1.0/dr3[i];
|
||||
}
|
||||
}
|
||||
|
||||
rctroot=rcutall;
|
||||
|
@ -5170,9 +5172,11 @@ void _noopt PairBOP::read_table(char *filename)
|
|||
pRepul4[i][k]=pRepul1[i][k]/dr[i];
|
||||
pRepul5[i][k]=2.0*pRepul2[i][k]/dr[i];
|
||||
pRepul6[i][k]=3.0*pRepul3[i][k]/dr[i];
|
||||
pLong4[i][k]=pLong1[i][k]/dr3[i];
|
||||
pLong5[i][k]=2.0*pLong2[i][k]/dr3[i];
|
||||
pLong6[i][k]=3.0*pLong3[i][k]/dr3[i];
|
||||
if (format == 3) {
|
||||
pLong4[i][k]=pLong1[i][k]/dr3[i];
|
||||
pLong5[i][k]=2.0*pLong2[i][k]/dr3[i];
|
||||
pLong6[i][k]=3.0*pLong3[i][k]/dr3[i];
|
||||
}
|
||||
}
|
||||
for (int k=0; k < nBOt; k++) {
|
||||
FsigBO4[i][k]=FsigBO1[i][k]/dBO;
|
||||
|
|
|
@ -524,10 +524,14 @@ void PairTersoff::setup_params()
|
|||
params[m].cut = params[m].bigr + params[m].bigd;
|
||||
params[m].cutsq = params[m].cut*params[m].cut;
|
||||
|
||||
params[m].c1 = pow(2.0*params[m].powern*1.0e-16,-1.0/params[m].powern);
|
||||
params[m].c2 = pow(2.0*params[m].powern*1.0e-8,-1.0/params[m].powern);
|
||||
params[m].c3 = 1.0/params[m].c2;
|
||||
params[m].c4 = 1.0/params[m].c1;
|
||||
if (params[m].powern > 0.0) {
|
||||
params[m].c1 = pow(2.0*params[m].powern*1.0e-16,-1.0/params[m].powern);
|
||||
params[m].c2 = pow(2.0*params[m].powern*1.0e-8,-1.0/params[m].powern);
|
||||
params[m].c3 = 1.0/params[m].c2;
|
||||
params[m].c4 = 1.0/params[m].c1;
|
||||
} else {
|
||||
params[m].c1 = params[m].c2 = params[m].c3 = params[m].c4 = 0.0;
|
||||
}
|
||||
}
|
||||
|
||||
// set cutmax to max of all params
|
||||
|
|
|
@ -178,8 +178,10 @@ void PairTersoffMOD::setup_params()
|
|||
params[m].cut = params[m].bigr + params[m].bigd;
|
||||
params[m].cutsq = params[m].cut*params[m].cut;
|
||||
|
||||
params[m].ca1 = pow(2.0*params[m].powern_del*1.0e-16,-1.0/params[m].powern);
|
||||
params[m].ca4 = 1.0/params[m].ca1;
|
||||
if (params[m].powern > 0.0) {
|
||||
params[m].ca1 = pow(2.0*params[m].powern_del*1.0e-16,-1.0/params[m].powern);
|
||||
params[m].ca4 = 1.0/params[m].ca1;
|
||||
} else params[m].ca1 = params[m].ca4 = 0.0;
|
||||
}
|
||||
|
||||
// set cutmax to max of all params
|
||||
|
|
|
@ -137,7 +137,7 @@ void lammps_open(int argc, char **argv, MPI_Comm communicator, void **ptr)
|
|||
*ptr = (void *) lmp;
|
||||
}
|
||||
catch(LAMMPSException & e) {
|
||||
fprintf(stderr, "LAMMPS Exception: %s", e.message.c_str());
|
||||
fmt::print(stderr, "LAMMPS Exception: {}", e.message);
|
||||
*ptr = (void *) NULL;
|
||||
}
|
||||
#else
|
||||
|
@ -172,7 +172,7 @@ void lammps_open_no_mpi(int argc, char **argv, void **ptr)
|
|||
*ptr = (void *) lmp;
|
||||
}
|
||||
catch(LAMMPSException & e) {
|
||||
fprintf(stderr, "LAMMPS Exception: %s", e.message.c_str());
|
||||
fmt::print(stderr, "LAMMPS Exception: {}", e.message);
|
||||
*ptr = (void*) NULL;
|
||||
}
|
||||
#else
|
||||
|
|
|
@ -65,7 +65,7 @@ void PairCoulDSF::compute(int eflag, int vflag)
|
|||
{
|
||||
int i,j,ii,jj,inum,jnum;
|
||||
double qtmp,xtmp,ytmp,ztmp,delx,dely,delz,ecoul,fpair;
|
||||
double r,rsq,r2inv,forcecoul,factor_coul;
|
||||
double r,rsq,forcecoul,factor_coul;
|
||||
double prefactor,erfcc,erfcd,t;
|
||||
int *ilist,*jlist,*numneigh,**firstneigh;
|
||||
|
||||
|
|
|
@ -123,7 +123,7 @@ void WriteData::command(int narg, char **arg)
|
|||
if (domain->triclinic) domain->lamda2x(atom->nlocal+atom->nghost);
|
||||
}
|
||||
|
||||
write(file.c_str());
|
||||
write(file);
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
|
@ -131,7 +131,7 @@ void WriteData::command(int narg, char **arg)
|
|||
might later let it be directly called within run/minimize loop
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
void WriteData::write(const char *file)
|
||||
void WriteData::write(const std::string &file)
|
||||
{
|
||||
// special case where reneighboring is not done in integrator
|
||||
// on timestep data file is written (due to build_once being set)
|
||||
|
@ -187,7 +187,7 @@ void WriteData::write(const char *file)
|
|||
// open data file
|
||||
|
||||
if (me == 0) {
|
||||
fp = fopen(file,"w");
|
||||
fp = fopen(file.c_str(),"w");
|
||||
if (fp == NULL)
|
||||
error->one(FLERR,fmt::format("Cannot open data file {}: {}",
|
||||
file, utils::getsyserror()));
|
||||
|
|
|
@ -21,6 +21,7 @@ CommandStyle(write_data,WriteData)
|
|||
#define LMP_WRITE_DATA_H
|
||||
|
||||
#include "pointers.h"
|
||||
#include <string>
|
||||
|
||||
namespace LAMMPS_NS {
|
||||
|
||||
|
@ -28,7 +29,7 @@ class WriteData : protected Pointers {
|
|||
public:
|
||||
WriteData(class LAMMPS *);
|
||||
void command(int, char **);
|
||||
void write(const char *);
|
||||
void write(const std::string &);
|
||||
|
||||
private:
|
||||
int me,nprocs;
|
||||
|
|
|
@ -293,9 +293,6 @@ void WriteRestart::write(std::string file)
|
|||
|
||||
std::string multiname = file;
|
||||
multiname.replace(multiname.find("%"),1,fmt::format("{}",icluster));
|
||||
fp = fopen(multiname.c_str(),"wb");
|
||||
if (fp == NULL)
|
||||
error->one(FLERR,fmt::format("Cannot open restart file {}",multiname).c_str());
|
||||
|
||||
if (filewriter) {
|
||||
fp = fopen(multiname.c_str(),"wb");
|
||||
|
|
Loading…
Reference in New Issue