Merge branch 'master' into refactor-reaxff-parser
This commit is contained in:
@ -802,7 +802,10 @@ if(PKG_GPU)
|
||||
message(STATUS "<<< GPU package settings >>>
|
||||
-- GPU API: ${GPU_API}")
|
||||
if(GPU_API STREQUAL "CUDA")
|
||||
message(STATUS "CUDA Compiler: ${CUDA_NVCC_EXECUTABLE}")
|
||||
message(STATUS "GPU default architecture: ${GPU_ARCH}")
|
||||
message(STATUS "GPU binning with CUDPP: ${CUDPP_OPT}")
|
||||
message(STATUS "CUDA MPS support: ${CUDA_MPS_SUPPORT}")
|
||||
elseif(GPU_API STREQUAL "HIP")
|
||||
message(STATUS "HIP platform: ${HIP_PLATFORM}")
|
||||
message(STATUS "HIP architecture: ${HIP_ARCH}")
|
||||
|
||||
@ -452,6 +452,9 @@ the same or else LAMMPS will generate an error.
|
||||
Pair style *hybrid/scaled* currently only works for non-accelerated
|
||||
pair styles and pair styles from the OPT package.
|
||||
|
||||
When using pair styles from the GPU package they must not be listed
|
||||
multiple times. LAMMPS will detect this and abort.
|
||||
|
||||
Related commands
|
||||
""""""""""""""""
|
||||
|
||||
|
||||
@ -150,7 +150,7 @@ int CHARMMT::loop(const int eflag, const int vflag) {
|
||||
&_cut_coul_innersq, &this->_threads_per_atom);
|
||||
} else {
|
||||
this->k_pair.set_size(GX,BX);
|
||||
this->k_pair.run(&this->atom->x, &ljd, &sp_lj,
|
||||
this->k_pair.run(&this->atom->x, &lj1, &_lj_types, &sp_lj,
|
||||
&this->nbor->dev_nbor, this->_nbor_data,
|
||||
&this->ans->force, &this->ans->engv, &eflag,
|
||||
&vflag, &ainum, &nbor_pitch, &this->atom->q,
|
||||
|
||||
@ -29,7 +29,8 @@ _texture(q_tex, int2);
|
||||
#endif
|
||||
|
||||
__kernel void k_charmm(const __global numtyp4 *restrict x_,
|
||||
const __global numtyp2 *restrict ljd,
|
||||
const __global numtyp4 *restrict lj1,
|
||||
const int lj_types,
|
||||
const __global numtyp *restrict sp_lj,
|
||||
const __global int *dev_nbor,
|
||||
const __global int *dev_packed,
|
||||
@ -88,20 +89,14 @@ __kernel void k_charmm(const __global numtyp4 *restrict x_,
|
||||
numtyp delz = ix.z-jx.z;
|
||||
numtyp rsq = delx*delx+dely*dely+delz*delz;
|
||||
|
||||
int mtype=itype*lj_types+jtype;
|
||||
if (rsq<cut_bothsq) {
|
||||
numtyp r2inv=ucl_recip(rsq);
|
||||
numtyp forcecoul, force_lj, force, switch1;
|
||||
numtyp lj3, lj4;
|
||||
numtyp forcecoul, force_lj, force, r6inv, switch1;
|
||||
|
||||
if (rsq < cut_ljsq) {
|
||||
numtyp eps = ucl_sqrt(ljd[itype].x*ljd[jtype].x);
|
||||
numtyp sig6 = (numtyp)0.5 * (ljd[itype].y+ljd[jtype].y);
|
||||
|
||||
numtyp sig_r_6 = sig6*sig6*r2inv;
|
||||
sig_r_6 = sig_r_6*sig_r_6*sig_r_6;
|
||||
lj4 = (numtyp)4.0*eps*sig_r_6;
|
||||
lj3 = lj4*sig_r_6;
|
||||
force_lj = factor_lj*((numtyp)12.0 * lj3 - (numtyp)6.0 * lj4);
|
||||
r6inv = r2inv*r2inv*r2inv;
|
||||
force_lj = factor_lj*r6inv*(lj1[mtype].x*r6inv-lj1[mtype].y);
|
||||
if (rsq > cut_lj_innersq) {
|
||||
switch1 = (cut_ljsq-rsq);
|
||||
numtyp switch2 = (numtyp)12.0*rsq*switch1*(rsq-cut_lj_innersq)*
|
||||
@ -109,7 +104,7 @@ __kernel void k_charmm(const __global numtyp4 *restrict x_,
|
||||
switch1 *= switch1;
|
||||
switch1 *= (cut_ljsq+(numtyp)2.0*rsq-(numtyp)3.0*cut_lj_innersq)*
|
||||
denom_lj;
|
||||
switch2 *= lj3-lj4;
|
||||
switch2 *= r6inv*(lj1[mtype].z*r6inv-lj1[mtype].w);
|
||||
force_lj = force_lj*switch1+switch2;
|
||||
}
|
||||
} else
|
||||
@ -137,7 +132,7 @@ __kernel void k_charmm(const __global numtyp4 *restrict x_,
|
||||
if (EVFLAG && eflag) {
|
||||
e_coul += forcecoul;
|
||||
if (rsq < cut_ljsq) {
|
||||
numtyp e=lj3-lj4;
|
||||
numtyp e=r6inv*(lj1[mtype].z*r6inv-lj1[mtype].w);
|
||||
if (rsq > cut_lj_innersq)
|
||||
e *= switch1;
|
||||
energy+=factor_lj*e;
|
||||
|
||||
@ -108,10 +108,7 @@ int TersoffT::init(const int ntypes, const int nlocal, const int nall, const int
|
||||
_nparams = nparams;
|
||||
_nelements = nelements;
|
||||
|
||||
UCL_H_Vec<numtyp> host_write(ntypes*ntypes,*(this->ucl_device),
|
||||
UCL_READ_WRITE);
|
||||
host_write.zero();
|
||||
cutsq_pair.alloc(ntypes*ntypes,*(this->ucl_device),UCL_READ_ONLY);
|
||||
_cutsq_max=0.0;
|
||||
for (int ii=1; ii<ntypes; ii++) {
|
||||
const int i=host_map[ii];
|
||||
for (int jj=1; jj<ntypes; jj++) {
|
||||
@ -120,12 +117,10 @@ int TersoffT::init(const int ntypes, const int nlocal, const int nall, const int
|
||||
const int k=host_map[kk];
|
||||
if (i<0 || j<0 || k<0) continue;
|
||||
const int ijkparam = host_elem2param[i][j][k];
|
||||
if (host_cutsq[ijkparam]>host_write[ii*ntypes+jj])
|
||||
host_write[ii*ntypes+jj]=host_cutsq[ijkparam];
|
||||
if (host_cutsq[ijkparam]>_cutsq_max) _cutsq_max=host_cutsq[ijkparam];
|
||||
}
|
||||
}
|
||||
}
|
||||
ucl_copy(cutsq_pair,host_write,ntypes*ntypes);
|
||||
|
||||
// --------------------------------------------------------------------
|
||||
UCL_H_Vec<numtyp4> dview(nparams,*(this->ucl_device),
|
||||
@ -235,7 +230,6 @@ void TersoffT::clear() {
|
||||
ts3.clear();
|
||||
ts4.clear();
|
||||
ts5.clear();
|
||||
cutsq_pair.clear();
|
||||
map.clear();
|
||||
elem2param.clear();
|
||||
_zetaij.clear();
|
||||
@ -286,7 +280,7 @@ int TersoffT::loop(const int eflag, const int vflag, const int evatom,
|
||||
int BX=this->block_pair();
|
||||
int GX=static_cast<int>(ceil(static_cast<double>(ainum)/BX));
|
||||
this->k_short_nbor.set_size(GX,BX);
|
||||
this->k_short_nbor.run(&this->atom->x, &cutsq_pair, &_ntypes,
|
||||
this->k_short_nbor.run(&this->atom->x, &_cutsq_max, &_ntypes,
|
||||
&this->nbor->dev_nbor, &this->nbor->dev_packed,
|
||||
&ainum, &nbor_pitch, &this->_threads_per_atom);
|
||||
|
||||
|
||||
@ -226,17 +226,13 @@ _texture_2d( pos_tex,int4);
|
||||
#endif
|
||||
|
||||
__kernel void k_tersoff_short_nbor(const __global numtyp4 *restrict x_,
|
||||
const __global numtyp *restrict cutsq_pair,
|
||||
const int ntypes, __global int * dev_nbor,
|
||||
const numtyp cutsq, const int ntypes,
|
||||
__global int * dev_nbor,
|
||||
const __global int * dev_packed,
|
||||
const int inum, const int nbor_pitch,
|
||||
const int t_per_atom_in) {
|
||||
const int ii=GLOBAL_ID_X;
|
||||
|
||||
#ifdef ONETYPE
|
||||
const numtyp cutsq=cutsq_pair[ONETYPE];
|
||||
#endif
|
||||
|
||||
if (ii<inum) {
|
||||
const int i=dev_packed[ii];
|
||||
int nbor=ii+nbor_pitch;
|
||||
@ -245,9 +241,6 @@ __kernel void k_tersoff_short_nbor(const __global numtyp4 *restrict x_,
|
||||
const int nbor_end=nbor+fast_mul(numj,nbor_pitch);
|
||||
|
||||
numtyp4 ix; fetch4(ix,i,pos_tex); //x_[i];
|
||||
#ifndef ONETYPE
|
||||
const int itype=ix.w*ntypes;
|
||||
#endif
|
||||
int newj=0;
|
||||
|
||||
__global int *out_list=dev_nbor+2*nbor_pitch+ii*t_per_atom;
|
||||
@ -258,11 +251,6 @@ __kernel void k_tersoff_short_nbor(const __global numtyp4 *restrict x_,
|
||||
int j = sj & NEIGHMASK;
|
||||
numtyp4 jx; fetch4(jx,j,pos_tex); //x_[j];
|
||||
|
||||
#ifndef ONETYPE
|
||||
const int mtype=jx.w+itype;
|
||||
const numtyp cutsq=cutsq_pair[mtype];
|
||||
#endif
|
||||
|
||||
// Compute r12
|
||||
numtyp delx = ix.x-jx.x;
|
||||
numtyp dely = ix.y-jx.y;
|
||||
|
||||
@ -73,7 +73,7 @@ class Tersoff : public BaseThree<numtyp, acctyp> {
|
||||
/// ts5.x = beta, ts5.y = powern, ts5.z = lam2, ts5.w = bigb
|
||||
UCL_D_Vec<numtyp4> ts5;
|
||||
|
||||
UCL_D_Vec<numtyp> cutsq_pair;
|
||||
numtyp _cutsq_max;
|
||||
|
||||
UCL_D_Vec<int> elem2param;
|
||||
UCL_D_Vec<int> map;
|
||||
|
||||
@ -142,7 +142,10 @@ ucl_inline numtyp ters_fa_d(const numtyp r,
|
||||
numtyp *ans_d)
|
||||
{
|
||||
#ifndef ONETYPE
|
||||
if (r > param_bigr + param_bigd) return (numtyp)0.0;
|
||||
if (r > param_bigr + param_bigd) {
|
||||
*ans_d = (numtyp)0.0;
|
||||
return (numtyp)0.0;
|
||||
}
|
||||
#endif
|
||||
numtyp dfc;
|
||||
const numtyp fc=ters_fc_d(r,param_bigr,param_bigd,&dfc);
|
||||
|
||||
@ -105,10 +105,7 @@ int TersoffMT::init(const int ntypes, const int nlocal, const int nall, const in
|
||||
_nparams = nparams;
|
||||
_nelements = nelements;
|
||||
|
||||
UCL_H_Vec<numtyp> host_write(ntypes*ntypes,*(this->ucl_device),
|
||||
UCL_READ_WRITE);
|
||||
host_write.zero();
|
||||
cutsq_pair.alloc(ntypes*ntypes,*(this->ucl_device),UCL_READ_ONLY);
|
||||
_cutsq_max=0.0;
|
||||
for (int ii=1; ii<ntypes; ii++) {
|
||||
const int i=host_map[ii];
|
||||
for (int jj=1; jj<ntypes; jj++) {
|
||||
@ -117,12 +114,10 @@ int TersoffMT::init(const int ntypes, const int nlocal, const int nall, const in
|
||||
const int k=host_map[kk];
|
||||
if (i<0 || j<0 || k<0) continue;
|
||||
const int ijkparam = host_elem2param[i][j][k];
|
||||
if (host_cutsq[ijkparam]>host_write[ii*ntypes+jj])
|
||||
host_write[ii*ntypes+jj]=host_cutsq[ijkparam];
|
||||
if (host_cutsq[ijkparam]>_cutsq_max) _cutsq_max=host_cutsq[ijkparam];
|
||||
}
|
||||
}
|
||||
}
|
||||
ucl_copy(cutsq_pair,host_write,ntypes*ntypes);
|
||||
|
||||
UCL_H_Vec<numtyp4> dview(nparams,*(this->ucl_device),
|
||||
UCL_WRITE_ONLY);
|
||||
@ -229,7 +224,6 @@ void TersoffMT::clear() {
|
||||
ts3.clear();
|
||||
ts4.clear();
|
||||
ts5.clear();
|
||||
cutsq_pair.clear();
|
||||
map.clear();
|
||||
elem2param.clear();
|
||||
_zetaij.clear();
|
||||
@ -275,7 +269,7 @@ int TersoffMT::loop(const int eflag, const int vflag, const int evatom,
|
||||
int BX=this->block_pair();
|
||||
int GX=static_cast<int>(ceil(static_cast<double>(ainum)/BX));
|
||||
this->k_short_nbor.set_size(GX,BX);
|
||||
this->k_short_nbor.run(&this->atom->x, &cutsq_pair, &_ntypes,
|
||||
this->k_short_nbor.run(&this->atom->x, &_cutsq_max, &_ntypes,
|
||||
&this->nbor->dev_nbor, &this->nbor->dev_packed,
|
||||
&ainum, &nbor_pitch, &this->_threads_per_atom);
|
||||
|
||||
|
||||
@ -220,17 +220,13 @@ _texture_2d( pos_tex,int4);
|
||||
#endif
|
||||
|
||||
__kernel void k_tersoff_mod_short_nbor(const __global numtyp4 *restrict x_,
|
||||
const __global numtyp *restrict cutsq_pair,
|
||||
const int ntypes, __global int * dev_nbor,
|
||||
const numtyp cutsq, const int ntypes,
|
||||
__global int * dev_nbor,
|
||||
const __global int * dev_packed,
|
||||
const int inum, const int nbor_pitch,
|
||||
const int t_per_atom) {
|
||||
const int ii=GLOBAL_ID_X;
|
||||
|
||||
#ifdef ONETYPE
|
||||
const numtyp cutsq=cutsq_pair[ONETYPE];
|
||||
#endif
|
||||
|
||||
if (ii<inum) {
|
||||
const int i=dev_packed[ii];
|
||||
int nbor=ii+nbor_pitch;
|
||||
@ -239,9 +235,6 @@ __kernel void k_tersoff_mod_short_nbor(const __global numtyp4 *restrict x_,
|
||||
const int nbor_end=nbor+fast_mul(numj,nbor_pitch);
|
||||
|
||||
numtyp4 ix; fetch4(ix,i,pos_tex); //x_[i];
|
||||
#ifndef ONETYPE
|
||||
const int itype=ix.w*ntypes;
|
||||
#endif
|
||||
int newj=0;
|
||||
|
||||
__global int *out_list=dev_nbor+2*nbor_pitch+ii*t_per_atom;
|
||||
@ -252,11 +245,6 @@ __kernel void k_tersoff_mod_short_nbor(const __global numtyp4 *restrict x_,
|
||||
int j = sj & NEIGHMASK;
|
||||
numtyp4 jx; fetch4(jx,j,pos_tex); //x_[j];
|
||||
|
||||
#ifndef ONETYPE
|
||||
const int mtype=jx.w+itype;
|
||||
const numtyp cutsq=cutsq_pair[mtype];
|
||||
#endif
|
||||
|
||||
// Compute r12
|
||||
numtyp delx = ix.x-jx.x;
|
||||
numtyp dely = ix.y-jx.y;
|
||||
|
||||
@ -76,7 +76,7 @@ class TersoffMod : public BaseThree<numtyp, acctyp> {
|
||||
/// ts5.x = c5, ts5.y = h
|
||||
UCL_D_Vec<numtyp4> ts5;
|
||||
|
||||
UCL_D_Vec<numtyp> cutsq_pair;
|
||||
numtyp _cutsq_max;
|
||||
|
||||
UCL_D_Vec<int> elem2param;
|
||||
UCL_D_Vec<int> map;
|
||||
|
||||
@ -112,10 +112,7 @@ int TersoffZT::init(const int ntypes, const int nlocal, const int nall,
|
||||
_nparams = nparams;
|
||||
_nelements = nelements;
|
||||
|
||||
UCL_H_Vec<numtyp> host_write(ntypes*ntypes,*(this->ucl_device),
|
||||
UCL_READ_WRITE);
|
||||
host_write.zero();
|
||||
cutsq_pair.alloc(ntypes*ntypes,*(this->ucl_device),UCL_READ_ONLY);
|
||||
_cutsq_max=0.0;
|
||||
for (int ii=1; ii<ntypes; ii++) {
|
||||
const int i=host_map[ii];
|
||||
for (int jj=1; jj<ntypes; jj++) {
|
||||
@ -124,12 +121,10 @@ int TersoffZT::init(const int ntypes, const int nlocal, const int nall,
|
||||
const int k=host_map[kk];
|
||||
if (i<0 || j<0 || k<0) continue;
|
||||
const int ijkparam = host_elem2param[i][j][k];
|
||||
if (host_cutsq[ijkparam]>host_write[ii*ntypes+jj])
|
||||
host_write[ii*ntypes+jj]=host_cutsq[ijkparam];
|
||||
if (host_cutsq[ijkparam]>_cutsq_max) _cutsq_max=host_cutsq[ijkparam];
|
||||
}
|
||||
}
|
||||
}
|
||||
ucl_copy(cutsq_pair,host_write,ntypes*ntypes);
|
||||
|
||||
UCL_H_Vec<numtyp4> dview(nparams,*(this->ucl_device),
|
||||
UCL_WRITE_ONLY);
|
||||
@ -253,7 +248,6 @@ void TersoffZT::clear() {
|
||||
ts4.clear();
|
||||
ts5.clear();
|
||||
ts6.clear();
|
||||
cutsq_pair.clear();
|
||||
map.clear();
|
||||
elem2param.clear();
|
||||
_zetaij.clear();
|
||||
@ -299,7 +293,7 @@ int TersoffZT::loop(const int eflag, const int vflag, const int evatom,
|
||||
int BX=this->block_pair();
|
||||
int GX=static_cast<int>(ceil(static_cast<double>(ainum)/BX));
|
||||
this->k_short_nbor.set_size(GX,BX);
|
||||
this->k_short_nbor.run(&this->atom->x, &cutsq_pair, &_ntypes,
|
||||
this->k_short_nbor.run(&this->atom->x, &_cutsq_max, &_ntypes,
|
||||
&this->nbor->dev_nbor, &this->nbor->dev_packed,
|
||||
&ainum, &nbor_pitch, &this->_threads_per_atom);
|
||||
|
||||
|
||||
@ -238,17 +238,13 @@ _texture( ts6_tex,int4);
|
||||
#endif
|
||||
|
||||
__kernel void k_tersoff_zbl_short_nbor(const __global numtyp4 *restrict x_,
|
||||
const __global numtyp *restrict cutsq_pair,
|
||||
const int ntypes, __global int * dev_nbor,
|
||||
const numtyp cutsq, const int ntypes,
|
||||
__global int * dev_nbor,
|
||||
const __global int * dev_packed,
|
||||
const int inum, const int nbor_pitch,
|
||||
const int t_per_atom) {
|
||||
const int ii=GLOBAL_ID_X;
|
||||
|
||||
#ifdef ONETYPE
|
||||
const numtyp cutsq=cutsq_pair[ONETYPE];
|
||||
#endif
|
||||
|
||||
if (ii<inum) {
|
||||
const int i=dev_packed[ii];
|
||||
int nbor=ii+nbor_pitch;
|
||||
@ -257,9 +253,6 @@ __kernel void k_tersoff_zbl_short_nbor(const __global numtyp4 *restrict x_,
|
||||
const int nbor_end=nbor+fast_mul(numj,nbor_pitch);
|
||||
|
||||
numtyp4 ix; fetch4(ix,i,pos_tex); //x_[i];
|
||||
#ifndef ONETYPE
|
||||
const int itype=ix.w*ntypes;
|
||||
#endif
|
||||
int newj=0;
|
||||
|
||||
__global int *out_list=dev_nbor+2*nbor_pitch+ii*t_per_atom;
|
||||
@ -270,11 +263,6 @@ __kernel void k_tersoff_zbl_short_nbor(const __global numtyp4 *restrict x_,
|
||||
int j = sj & NEIGHMASK;
|
||||
numtyp4 jx; fetch4(jx,j,pos_tex); //x_[j];
|
||||
|
||||
#ifndef ONETYPE
|
||||
const int mtype=jx.w+itype;
|
||||
const numtyp cutsq=cutsq_pair[mtype];
|
||||
#endif
|
||||
|
||||
// Compute r12
|
||||
numtyp delx = ix.x-jx.x;
|
||||
numtyp dely = ix.y-jx.y;
|
||||
|
||||
@ -80,7 +80,7 @@ class TersoffZBL : public BaseThree<numtyp, acctyp> {
|
||||
/// ts6.x = Z_i, ts6.y = Z_j, ts6.z = ZBLcut, ts6.w = ZBLexpscale
|
||||
UCL_D_Vec<numtyp4> ts6;
|
||||
|
||||
UCL_D_Vec<numtyp> cutsq_pair;
|
||||
numtyp _cutsq_max;
|
||||
|
||||
UCL_D_Vec<int> elem2param;
|
||||
UCL_D_Vec<int> map;
|
||||
|
||||
@ -69,7 +69,6 @@
|
||||
|
||||
void fft_3d(FFT_DATA *in, FFT_DATA *out, int flag, struct fft_plan_3d *plan)
|
||||
{
|
||||
int i,total,length,offset,num;
|
||||
FFT_SCALAR norm;
|
||||
#if defined(FFT_FFTW3)
|
||||
FFT_SCALAR *out_ptr;
|
||||
@ -99,9 +98,6 @@ void fft_3d(FFT_DATA *in, FFT_DATA *out, int flag, struct fft_plan_3d *plan)
|
||||
|
||||
// 1d FFTs along fast axis
|
||||
|
||||
total = plan->total1;
|
||||
length = plan->length1;
|
||||
|
||||
#if defined(FFT_MKL)
|
||||
if (flag == 1)
|
||||
DftiComputeForward(plan->handle_fast,data);
|
||||
@ -114,11 +110,14 @@ void fft_3d(FFT_DATA *in, FFT_DATA *out, int flag, struct fft_plan_3d *plan)
|
||||
theplan=plan->plan_fast_backward;
|
||||
FFTW_API(execute_dft)(theplan,data,data);
|
||||
#else
|
||||
int total = plan->total1;
|
||||
int length = plan->length1;
|
||||
|
||||
if (flag == 1)
|
||||
for (offset = 0; offset < total; offset += length)
|
||||
for (int offset = 0; offset < total; offset += length)
|
||||
kiss_fft(plan->cfg_fast_forward,&data[offset],&data[offset]);
|
||||
else
|
||||
for (offset = 0; offset < total; offset += length)
|
||||
for (int offset = 0; offset < total; offset += length)
|
||||
kiss_fft(plan->cfg_fast_backward,&data[offset],&data[offset]);
|
||||
#endif
|
||||
|
||||
@ -133,9 +132,6 @@ void fft_3d(FFT_DATA *in, FFT_DATA *out, int flag, struct fft_plan_3d *plan)
|
||||
|
||||
// 1d FFTs along mid axis
|
||||
|
||||
total = plan->total2;
|
||||
length = plan->length2;
|
||||
|
||||
#if defined(FFT_MKL)
|
||||
if (flag == 1)
|
||||
DftiComputeForward(plan->handle_mid,data);
|
||||
@ -148,11 +144,14 @@ void fft_3d(FFT_DATA *in, FFT_DATA *out, int flag, struct fft_plan_3d *plan)
|
||||
theplan=plan->plan_mid_backward;
|
||||
FFTW_API(execute_dft)(theplan,data,data);
|
||||
#else
|
||||
total = plan->total2;
|
||||
length = plan->length2;
|
||||
|
||||
if (flag == 1)
|
||||
for (offset = 0; offset < total; offset += length)
|
||||
for (int offset = 0; offset < total; offset += length)
|
||||
kiss_fft(plan->cfg_mid_forward,&data[offset],&data[offset]);
|
||||
else
|
||||
for (offset = 0; offset < total; offset += length)
|
||||
for (int offset = 0; offset < total; offset += length)
|
||||
kiss_fft(plan->cfg_mid_backward,&data[offset],&data[offset]);
|
||||
#endif
|
||||
|
||||
@ -167,9 +166,6 @@ void fft_3d(FFT_DATA *in, FFT_DATA *out, int flag, struct fft_plan_3d *plan)
|
||||
|
||||
// 1d FFTs along slow axis
|
||||
|
||||
total = plan->total3;
|
||||
length = plan->length3;
|
||||
|
||||
#if defined(FFT_MKL)
|
||||
if (flag == 1)
|
||||
DftiComputeForward(plan->handle_slow,data);
|
||||
@ -182,11 +178,14 @@ void fft_3d(FFT_DATA *in, FFT_DATA *out, int flag, struct fft_plan_3d *plan)
|
||||
theplan=plan->plan_slow_backward;
|
||||
FFTW_API(execute_dft)(theplan,data,data);
|
||||
#else
|
||||
total = plan->total3;
|
||||
length = plan->length3;
|
||||
|
||||
if (flag == 1)
|
||||
for (offset = 0; offset < total; offset += length)
|
||||
for (int offset = 0; offset < total; offset += length)
|
||||
kiss_fft(plan->cfg_slow_forward,&data[offset],&data[offset]);
|
||||
else
|
||||
for (offset = 0; offset < total; offset += length)
|
||||
for (int offset = 0; offset < total; offset += length)
|
||||
kiss_fft(plan->cfg_slow_backward,&data[offset],&data[offset]);
|
||||
#endif
|
||||
|
||||
@ -201,11 +200,11 @@ void fft_3d(FFT_DATA *in, FFT_DATA *out, int flag, struct fft_plan_3d *plan)
|
||||
|
||||
if (flag == -1 && plan->scaled) {
|
||||
norm = plan->norm;
|
||||
num = plan->normnum;
|
||||
const int num = plan->normnum;
|
||||
#if defined(FFT_FFTW3)
|
||||
out_ptr = (FFT_SCALAR *)out;
|
||||
#endif
|
||||
for (i = 0; i < num; i++) {
|
||||
for (int i = 0; i < num; i++) {
|
||||
#if defined(FFT_FFTW3)
|
||||
*(out_ptr++) *= norm;
|
||||
*(out_ptr++) *= norm;
|
||||
|
||||
122
src/atom_vec.cpp
122
src/atom_vec.cpp
@ -71,21 +71,6 @@ AtomVec::AtomVec(LAMMPS *lmp) : Pointers(lmp)
|
||||
default_create = "id type mask image x v";
|
||||
default_data_atom = "";
|
||||
default_data_vel = "";
|
||||
|
||||
// initializations
|
||||
|
||||
init_method(&mgrow);
|
||||
init_method(&mcopy);
|
||||
init_method(&mcomm);
|
||||
init_method(&mcomm_vel);
|
||||
init_method(&mreverse);
|
||||
init_method(&mborder);
|
||||
init_method(&mborder_vel);
|
||||
init_method(&mexchange);
|
||||
init_method(&mrestart);
|
||||
init_method(&mcreate);
|
||||
init_method(&mdata_atom);
|
||||
init_method(&mdata_vel);
|
||||
}
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
@ -129,19 +114,6 @@ AtomVec::~AtomVec()
|
||||
}
|
||||
}
|
||||
|
||||
destroy_method(&mgrow);
|
||||
destroy_method(&mcopy);
|
||||
destroy_method(&mcomm);
|
||||
destroy_method(&mcomm_vel);
|
||||
destroy_method(&mreverse);
|
||||
destroy_method(&mborder);
|
||||
destroy_method(&mborder_vel);
|
||||
destroy_method(&mexchange);
|
||||
destroy_method(&mrestart);
|
||||
destroy_method(&mcreate);
|
||||
destroy_method(&mdata_atom);
|
||||
destroy_method(&mdata_vel);
|
||||
|
||||
delete [] threads;
|
||||
}
|
||||
|
||||
@ -2395,18 +2367,18 @@ void AtomVec::setup_fields()
|
||||
|
||||
// populate field-based data struct for each method to use
|
||||
|
||||
create_method(ngrow,&mgrow);
|
||||
create_method(ncopy,&mcopy);
|
||||
create_method(ncomm,&mcomm);
|
||||
create_method(ncomm_vel,&mcomm_vel);
|
||||
create_method(nreverse,&mreverse);
|
||||
create_method(nborder,&mborder);
|
||||
create_method(nborder_vel,&mborder_vel);
|
||||
create_method(nexchange,&mexchange);
|
||||
create_method(nrestart,&mrestart);
|
||||
create_method(ncreate,&mcreate);
|
||||
create_method(ndata_atom,&mdata_atom);
|
||||
create_method(ndata_vel,&mdata_vel);
|
||||
init_method(ngrow,&mgrow);
|
||||
init_method(ncopy,&mcopy);
|
||||
init_method(ncomm,&mcomm);
|
||||
init_method(ncomm_vel,&mcomm_vel);
|
||||
init_method(nreverse,&mreverse);
|
||||
init_method(nborder,&mborder);
|
||||
init_method(nborder_vel,&mborder_vel);
|
||||
init_method(nexchange,&mexchange);
|
||||
init_method(nrestart,&mrestart);
|
||||
init_method(ncreate,&mcreate);
|
||||
init_method(ndata_atom,&mdata_atom);
|
||||
init_method(ndata_vel,&mdata_vel);
|
||||
|
||||
// create threads data struct for grow and memory_usage to use
|
||||
|
||||
@ -2480,7 +2452,6 @@ void AtomVec::setup_fields()
|
||||
int AtomVec::process_fields(char *str, const char *default_str, Method *method)
|
||||
{
|
||||
if (str == nullptr) {
|
||||
method->index = nullptr;
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -2496,17 +2467,19 @@ int AtomVec::process_fields(char *str, const char *default_str, Method *method)
|
||||
Atom::PerAtom *peratom = atom->peratom;
|
||||
int nperatom = atom->nperatom;
|
||||
|
||||
int *index;
|
||||
// allocate memory in method
|
||||
method->resize(nfield);
|
||||
|
||||
std::vector<int> & index = method->index;
|
||||
int match;
|
||||
|
||||
if (nfield) index = new int[nfield];
|
||||
for (int i = 0; i < nfield; i++) {
|
||||
const char * field = words[i].c_str();
|
||||
const std::string & field = words[i];
|
||||
|
||||
// find field in master Atom::peratom list
|
||||
|
||||
for (match = 0; match < nperatom; match++)
|
||||
if (strcmp(field, peratom[match].name) == 0) break;
|
||||
if (field == peratom[match].name) break;
|
||||
if (match == nperatom)
|
||||
error->all(FLERR,fmt::format("Peratom field {} not recognized", field));
|
||||
index[i] = match;
|
||||
@ -2520,38 +2493,19 @@ int AtomVec::process_fields(char *str, const char *default_str, Method *method)
|
||||
// error if field is in default str
|
||||
|
||||
for (match = 0; match < ndef; match++)
|
||||
if (strcmp(field, def_words[match].c_str()) == 0)
|
||||
if (field == def_words[match])
|
||||
error->all(FLERR,fmt::format("Peratom field {} is a default", field));
|
||||
}
|
||||
|
||||
if (nfield) method->index = index;
|
||||
else method->index = nullptr;
|
||||
return nfield;
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
create a method data structs for processing fields
|
||||
init method data structs for processing fields
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
void AtomVec::create_method(int nfield, Method *method)
|
||||
void AtomVec::init_method(int nfield, Method *method)
|
||||
{
|
||||
if (nfield > 0) {
|
||||
method->pdata = new void*[nfield];
|
||||
method->datatype = new int[nfield];
|
||||
method->cols = new int[nfield];
|
||||
method->maxcols = new int*[nfield];
|
||||
method->collength = new int[nfield];
|
||||
method->plength = new void*[nfield];
|
||||
} else {
|
||||
method->pdata = nullptr;
|
||||
method->datatype = nullptr;
|
||||
method->cols = nullptr;
|
||||
method->maxcols = nullptr;
|
||||
method->collength = nullptr;
|
||||
method->plength = nullptr;
|
||||
return;
|
||||
}
|
||||
|
||||
for (int i = 0; i < nfield; i++) {
|
||||
Atom::PerAtom *field = &atom->peratom[method->index[i]];
|
||||
method->pdata[i] = (void *) field->address;
|
||||
@ -2566,31 +2520,15 @@ void AtomVec::create_method(int nfield, Method *method)
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
free memory in a method data structs
|
||||
Method class members
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
void AtomVec::init_method(Method *method)
|
||||
{
|
||||
method->pdata = nullptr;
|
||||
method->datatype = nullptr;
|
||||
method->cols = nullptr;
|
||||
method->maxcols = nullptr;
|
||||
method->collength = nullptr;
|
||||
method->plength = nullptr;
|
||||
method->index = nullptr;
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
free memory in a method data structs
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
void AtomVec::destroy_method(Method *method)
|
||||
{
|
||||
delete [] method->pdata;
|
||||
delete [] method->datatype;
|
||||
delete [] method->cols;
|
||||
delete [] method->maxcols;
|
||||
delete [] method->collength;
|
||||
delete [] method->plength;
|
||||
delete [] method->index;
|
||||
void AtomVec::Method::resize(int nfield) {
|
||||
pdata.resize(nfield);
|
||||
datatype.resize(nfield);
|
||||
cols.resize(nfield);
|
||||
maxcols.resize(nfield);
|
||||
collength.resize(nfield);
|
||||
plength.resize(nfield);
|
||||
index.resize(nfield);
|
||||
}
|
||||
|
||||
@ -191,13 +191,15 @@ class AtomVec : protected Pointers {
|
||||
const char *default_create,*default_data_atom,*default_data_vel;
|
||||
|
||||
struct Method {
|
||||
void **pdata;
|
||||
int *datatype;
|
||||
int *cols;
|
||||
int **maxcols;
|
||||
int *collength;
|
||||
void **plength;
|
||||
int *index;
|
||||
std::vector<void *> pdata;
|
||||
std::vector<int> datatype;
|
||||
std::vector<int> cols;
|
||||
std::vector<int*> maxcols;
|
||||
std::vector<int> collength;
|
||||
std::vector<void *> plength;
|
||||
std::vector<int> index;
|
||||
|
||||
void resize(int nfield);
|
||||
};
|
||||
|
||||
Method mgrow,mcopy;
|
||||
@ -219,9 +221,7 @@ class AtomVec : protected Pointers {
|
||||
int grow_nmax_bonus(int);
|
||||
void setup_fields();
|
||||
int process_fields(char *, const char *, Method *);
|
||||
void create_method(int, Method *);
|
||||
void init_method(Method *);
|
||||
void destroy_method(Method *);
|
||||
void init_method(int, Method *);
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@ -237,15 +237,12 @@ ComputeChunkAtom::ComputeChunkAtom(LAMMPS *lmp, int narg, char **arg) :
|
||||
else if (strcmp(arg[iarg+1],"y") == 0) idim = 1;
|
||||
else if (strcmp(arg[iarg+1],"z") == 0) idim = 2;
|
||||
else error->all(FLERR,"Illegal compute chunk/atom command");
|
||||
minflag[idim] = COORD;
|
||||
if (strcmp(arg[iarg+2],"lower") == 0) minflag[idim] = LOWER;
|
||||
else minflag[idim] = COORD;
|
||||
if (minflag[idim] == COORD)
|
||||
minvalue[idim] = utils::numeric(FLERR,arg[iarg+2],false,lmp);
|
||||
else minvalue[idim] = utils::numeric(FLERR,arg[iarg+2],false,lmp);
|
||||
maxflag[idim] = COORD;
|
||||
if (strcmp(arg[iarg+3],"upper") == 0) maxflag[idim] = UPPER;
|
||||
else maxflag[idim] = COORD;
|
||||
if (maxflag[idim] == COORD)
|
||||
maxvalue[idim] = utils::numeric(FLERR,arg[iarg+3],false,lmp);
|
||||
else error->all(FLERR,"Illegal compute chunk/atom command");
|
||||
else maxvalue[idim] = utils::numeric(FLERR,arg[iarg+3],false,lmp);
|
||||
iarg += 4;
|
||||
} else if (strcmp(arg[iarg],"units") == 0) {
|
||||
if (iarg+2 > narg) error->all(FLERR,"Illegal compute chunk/atom command");
|
||||
|
||||
@ -36,8 +36,6 @@
|
||||
|
||||
using namespace LAMMPS_NS;
|
||||
|
||||
#define MAXLINE 1024
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
Force::Force(LAMMPS *lmp) : Pointers(lmp)
|
||||
|
||||
@ -30,11 +30,13 @@
|
||||
#include "region.h"
|
||||
#include "tokenizer.h"
|
||||
#include "variable.h"
|
||||
#include "exceptions.h"
|
||||
|
||||
#include <cmath>
|
||||
#include <cstring>
|
||||
#include <map>
|
||||
#include <utility>
|
||||
#include <vector>
|
||||
|
||||
using namespace LAMMPS_NS;
|
||||
|
||||
@ -151,12 +153,14 @@ void Group::assign(int narg, char **arg)
|
||||
// add a new group if igroup = -1
|
||||
|
||||
int igroup = find(arg[0]);
|
||||
bool created = false;
|
||||
|
||||
if (igroup == -1) {
|
||||
if (ngroup == MAX_GROUP) error->all(FLERR,"Too many groups");
|
||||
igroup = find_unused();
|
||||
names[igroup] = utils::strdup(arg[0]);
|
||||
ngroup++;
|
||||
created = true;
|
||||
}
|
||||
|
||||
double **x = atom->x;
|
||||
@ -164,6 +168,7 @@ void Group::assign(int narg, char **arg)
|
||||
int nlocal = atom->nlocal;
|
||||
int bit = bitmask[igroup];
|
||||
|
||||
try {
|
||||
// style = region
|
||||
// add to group if atom is in region
|
||||
|
||||
@ -380,7 +385,7 @@ void Group::assign(int narg, char **arg)
|
||||
if (narg < 4) error->all(FLERR,"Illegal group command");
|
||||
|
||||
int length = narg-2;
|
||||
int *list = new int[length];
|
||||
std::vector<int> list(length);
|
||||
|
||||
int jgroup;
|
||||
for (int iarg = 2; iarg < narg; iarg++) {
|
||||
@ -409,8 +414,6 @@ void Group::assign(int narg, char **arg)
|
||||
if (mask[i] & otherbit) mask[i] &= inverse;
|
||||
}
|
||||
|
||||
delete [] list;
|
||||
|
||||
// style = union
|
||||
|
||||
} else if (strcmp(arg[1],"union") == 0) {
|
||||
@ -418,7 +421,7 @@ void Group::assign(int narg, char **arg)
|
||||
if (narg < 3) error->all(FLERR,"Illegal group command");
|
||||
|
||||
int length = narg-2;
|
||||
int *list = new int[length];
|
||||
std::vector<int> list(length);
|
||||
|
||||
int jgroup;
|
||||
for (int iarg = 2; iarg < narg; iarg++) {
|
||||
@ -439,8 +442,6 @@ void Group::assign(int narg, char **arg)
|
||||
if (mask[i] & otherbit) mask[i] |= bit;
|
||||
}
|
||||
|
||||
delete [] list;
|
||||
|
||||
// style = intersect
|
||||
|
||||
} else if (strcmp(arg[1],"intersect") == 0) {
|
||||
@ -448,7 +449,7 @@ void Group::assign(int narg, char **arg)
|
||||
if (narg < 4) error->all(FLERR,"Illegal group command");
|
||||
|
||||
int length = narg-2;
|
||||
int *list = new int[length];
|
||||
std::vector<int> list(length);
|
||||
|
||||
int jgroup;
|
||||
for (int iarg = 2; iarg < narg; iarg++) {
|
||||
@ -472,8 +473,6 @@ void Group::assign(int narg, char **arg)
|
||||
if (ok) mask[i] |= bit;
|
||||
}
|
||||
|
||||
delete [] list;
|
||||
|
||||
// style = dynamic
|
||||
// create a new FixGroup to dynamically determine atoms in group
|
||||
|
||||
@ -514,6 +513,16 @@ void Group::assign(int narg, char **arg)
|
||||
|
||||
} else error->all(FLERR,"Illegal group command");
|
||||
|
||||
} catch (LAMMPSException & e) {
|
||||
// undo created group in case of an error
|
||||
if (created) {
|
||||
delete [] names[igroup];
|
||||
names[igroup] = nullptr;
|
||||
ngroup--;
|
||||
}
|
||||
throw e;
|
||||
}
|
||||
|
||||
// print stats for changed group
|
||||
|
||||
int n;
|
||||
@ -539,13 +548,12 @@ void Group::assign(int narg, char **arg)
|
||||
void Group::assign(const std::string &groupcmd)
|
||||
{
|
||||
auto args = utils::split_words(groupcmd);
|
||||
char **newarg = new char*[args.size()];
|
||||
std::vector<char*> newarg(args.size());
|
||||
int i=0;
|
||||
for (const auto &arg : args) {
|
||||
newarg[i++] = (char *)arg.c_str();
|
||||
}
|
||||
assign(args.size(),newarg);
|
||||
delete[] newarg;
|
||||
assign(args.size(),newarg.data());
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
|
||||
@ -964,13 +964,12 @@ void Modify::add_fix(int narg, char **arg, int trysuffix)
|
||||
void Modify::add_fix(const std::string &fixcmd, int trysuffix)
|
||||
{
|
||||
auto args = utils::split_words(fixcmd);
|
||||
char **newarg = new char*[args.size()];
|
||||
int i=0;
|
||||
std::vector<char *> newarg(args.size());
|
||||
int i = 0;
|
||||
for (const auto &arg : args) {
|
||||
newarg[i++] = (char *)arg.c_str();
|
||||
}
|
||||
add_fix(args.size(),newarg,trysuffix);
|
||||
delete[] newarg;
|
||||
add_fix(args.size(),newarg.data(),trysuffix);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -36,7 +36,6 @@
|
||||
using namespace LAMMPS_NS;
|
||||
using namespace MathConst;
|
||||
|
||||
#define MAXLINE 1024
|
||||
#define DELTA 4
|
||||
#define PGDELTA 1
|
||||
#define MAXNEIGH 24
|
||||
|
||||
@ -547,6 +547,15 @@ void PairHybrid::init_style()
|
||||
if (used == 0) error->all(FLERR,"Pair hybrid sub-style is not used");
|
||||
}
|
||||
|
||||
// The GPU library uses global data for each pair style, so the
|
||||
// same style must not be used multiple times
|
||||
|
||||
for (istyle = 0; istyle < nstyles; istyle++) {
|
||||
bool is_gpu = (((PairHybrid *)styles[istyle])->suffix_flag & Suffix::GPU);
|
||||
if (multiple[istyle] && is_gpu)
|
||||
error->all(FLERR,"GPU package styles must not be used multiple times");
|
||||
}
|
||||
|
||||
// check if special_lj/special_coul overrides are compatible
|
||||
|
||||
for (istyle = 0; istyle < nstyles; istyle++) {
|
||||
|
||||
@ -27,8 +27,6 @@
|
||||
|
||||
using namespace LAMMPS_NS;
|
||||
|
||||
#define MAXLINE 2048
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
Run::Run(LAMMPS *lmp) : Command(lmp) {}
|
||||
|
||||
@ -412,7 +412,7 @@ void Variable::set(int narg, char **arg)
|
||||
if (style[ivar] != EQUAL)
|
||||
error->all(FLERR,"Cannot redefine variable as a different style");
|
||||
delete [] data[ivar][0];
|
||||
copy(1,&arg[2],data[ivar]);
|
||||
data[ivar][0] = utils::strdup(arg[2]);
|
||||
replaceflag = 1;
|
||||
} else {
|
||||
if (nvar == maxvar) grow();
|
||||
@ -421,7 +421,7 @@ void Variable::set(int narg, char **arg)
|
||||
which[nvar] = 0;
|
||||
pad[nvar] = 0;
|
||||
data[nvar] = new char*[num[nvar]];
|
||||
copy(1,&arg[2],data[nvar]);
|
||||
data[nvar][0] = utils::strdup(arg[2]);
|
||||
data[nvar][1] = new char[VALUELENGTH];
|
||||
strcpy(data[nvar][1],"(undefined)");
|
||||
}
|
||||
@ -438,7 +438,7 @@ void Variable::set(int narg, char **arg)
|
||||
if (style[ivar] != ATOM)
|
||||
error->all(FLERR,"Cannot redefine variable as a different style");
|
||||
delete [] data[ivar][0];
|
||||
copy(1,&arg[2],data[ivar]);
|
||||
data[ivar][0] = utils::strdup(arg[2]);
|
||||
replaceflag = 1;
|
||||
} else {
|
||||
if (nvar == maxvar) grow();
|
||||
@ -447,7 +447,7 @@ void Variable::set(int narg, char **arg)
|
||||
which[nvar] = 0;
|
||||
pad[nvar] = 0;
|
||||
data[nvar] = new char*[num[nvar]];
|
||||
copy(1,&arg[2],data[nvar]);
|
||||
data[nvar][0] = utils::strdup(arg[2]);
|
||||
}
|
||||
|
||||
// VECTOR
|
||||
@ -462,7 +462,7 @@ void Variable::set(int narg, char **arg)
|
||||
if (style[ivar] != VECTOR)
|
||||
error->all(FLERR,"Cannot redefine variable as a different style");
|
||||
delete [] data[ivar][0];
|
||||
copy(1,&arg[2],data[ivar]);
|
||||
data[ivar][0] = utils::strdup(arg[2]);
|
||||
replaceflag = 1;
|
||||
} else {
|
||||
if (nvar == maxvar) grow();
|
||||
@ -471,7 +471,7 @@ void Variable::set(int narg, char **arg)
|
||||
which[nvar] = 0;
|
||||
pad[nvar] = 0;
|
||||
data[nvar] = new char*[num[nvar]];
|
||||
copy(1,&arg[2],data[nvar]);
|
||||
data[nvar][0] = utils::strdup(arg[2]);
|
||||
}
|
||||
|
||||
// PYTHON
|
||||
@ -488,7 +488,7 @@ void Variable::set(int narg, char **arg)
|
||||
if (style[ivar] != PYTHON)
|
||||
error->all(FLERR,"Cannot redefine variable as a different style");
|
||||
delete [] data[ivar][0];
|
||||
copy(1,&arg[2],data[ivar]);
|
||||
data[ivar][0] = utils::strdup(arg[2]);
|
||||
replaceflag = 1;
|
||||
} else {
|
||||
if (nvar == maxvar) grow();
|
||||
@ -497,7 +497,7 @@ void Variable::set(int narg, char **arg)
|
||||
which[nvar] = 1;
|
||||
pad[nvar] = 0;
|
||||
data[nvar] = new char*[num[nvar]];
|
||||
copy(1,&arg[2],data[nvar]);
|
||||
data[nvar][0] = utils::strdup(arg[2]);
|
||||
data[nvar][1] = new char[VALUELENGTH];
|
||||
strcpy(data[nvar][1],"(undefined)");
|
||||
}
|
||||
|
||||
@ -7,6 +7,7 @@ add_test(NAME RunLammps
|
||||
COMMAND $<TARGET_FILE:lmp> -log none -echo none -in in.empty
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})
|
||||
set_tests_properties(RunLammps PROPERTIES
|
||||
ENVIRONMENT "TSAN_OPTIONS='ignore_noninstrumented_modules=1'"
|
||||
PASS_REGULAR_EXPRESSION "^LAMMPS \\([0-9]+ [A-Za-z]+ 2[0-9][0-9][0-9]\\)")
|
||||
|
||||
if(BUILD_MPI)
|
||||
|
||||
@ -297,7 +297,7 @@ TEST_F(GroupTest, Dynamic)
|
||||
command("group grow delete");
|
||||
command("variable ramp equal step");
|
||||
END_HIDE_OUTPUT();
|
||||
ASSERT_EQ(group->ngroup, 4);
|
||||
ASSERT_EQ(group->ngroup, 3);
|
||||
|
||||
TEST_FAILURE(".*ERROR: Group dynamic cannot reference itself.*",
|
||||
command("group half dynamic half region top"););
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
---
|
||||
lammps_version: 10 Feb 2021
|
||||
date_generated: Fri Feb 26 23:09:02 2021
|
||||
lammps_version: 8 Apr 2021
|
||||
date_generated: Mon Apr 19 08:49:08 2021
|
||||
epsilon: 1e-11
|
||||
skip_tests: single
|
||||
prerequisites: ! |
|
||||
@ -14,7 +14,7 @@ pair_coeff: ! |
|
||||
2 2 eam Ni_u3.eam
|
||||
extract: ! ""
|
||||
natoms: 32
|
||||
init_vdwl: 0.713225916338978
|
||||
init_vdwl: 0.7132259163389776
|
||||
init_coul: 0
|
||||
init_stress: ! |2-
|
||||
2.6556151567263032e+02 2.6660724159085703e+02 2.4812081237895359e+02 6.0264893464561915e+00 -6.6027371615114303e+00 -1.4187579099120772e+01
|
||||
@ -51,7 +51,7 @@ init_forces: ! |2
|
||||
30 -8.7442364632334701e-01 -8.5922993943854902e+00 -3.1671240722317777e+00
|
||||
31 3.1880080741982892e+00 -5.0021160844369490e+00 -2.7083467494366831e-01
|
||||
32 -1.5986786450380142e+01 -5.5759911113046883e+00 -1.5504124024744577e+00
|
||||
run_vdwl: 0.669352105052575
|
||||
run_vdwl: 0.6693521050525746
|
||||
run_coul: 0
|
||||
run_stress: ! |2-
|
||||
2.6541041873586806e+02 2.6644256162479292e+02 2.4793398704069506e+02 5.9903981717659827e+00 -6.6045526000630410e+00 -1.4160943794248436e+01
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
---
|
||||
lammps_version: 10 Feb 2021
|
||||
date_generated: Fri Feb 26 23:09:03 2021
|
||||
lammps_version: 8 Apr 2021
|
||||
date_generated: Mon Apr 19 08:49:08 2021
|
||||
epsilon: 5e-12
|
||||
skip_tests: single
|
||||
prerequisites: ! |
|
||||
@ -14,7 +14,7 @@ pair_coeff: ! |
|
||||
* * eam/fs AlFe_mm.eam.fs NULL Al
|
||||
extract: ! ""
|
||||
natoms: 32
|
||||
init_vdwl: 15.6583494469006
|
||||
init_vdwl: 15.658349446900637
|
||||
init_coul: 0
|
||||
init_stress: ! |2-
|
||||
3.1757662346015599e+02 3.1488042003987044e+02 2.9518192213010605e+02 8.0970202601485379e+00 -4.6038792816319125e+00 -1.1521259274290610e+01
|
||||
@ -51,7 +51,7 @@ init_forces: ! |2
|
||||
30 -2.0584055270338175e+00 -5.2207163606526530e+00 -4.6304543222177532e+00
|
||||
31 1.2014109675977875e+00 -6.5554529419137078e+00 2.1453874832093329e+00
|
||||
32 -1.5986786450380142e+01 -5.5759911113046883e+00 -1.5504124024744577e+00
|
||||
run_vdwl: 15.6055369596825
|
||||
run_vdwl: 15.605536959682482
|
||||
run_coul: 0
|
||||
run_stress: ! |2-
|
||||
3.1739734448741643e+02 3.1467775824072135e+02 2.9494960877836593e+02 8.0575431550134713e+00 -4.6069278562709943e+00 -1.1484582135772436e+01
|
||||
|
||||
@ -2,7 +2,6 @@
|
||||
lammps_version: 10 Feb 2021
|
||||
date_generated: Fri Feb 26 23:09:20 2021
|
||||
epsilon: 5e-13
|
||||
skip_tests: gpu
|
||||
prerequisites: ! |
|
||||
pair tersoff
|
||||
pre_commands: ! |
|
||||
|
||||
@ -1,8 +1,7 @@
|
||||
---
|
||||
lammps_version: 10 Feb 2021
|
||||
date_generated: Fri Feb 26 23:09:20 2021
|
||||
epsilon: 5e-11
|
||||
skip_tests: gpu
|
||||
epsilon: 5e-9
|
||||
prerequisites: ! |
|
||||
pair tersoff/zbl
|
||||
pre_commands: ! |
|
||||
|
||||
@ -1,8 +1,7 @@
|
||||
---
|
||||
lammps_version: 10 Feb 2021
|
||||
date_generated: Fri Feb 26 23:08:45 2021
|
||||
epsilon: 5e-14
|
||||
skip_tests: gpu
|
||||
lammps_version: 8 Apr 2021
|
||||
date_generated: Mon Apr 19 08:49:07 2021
|
||||
epsilon: 7.5e-14
|
||||
prerequisites: ! |
|
||||
atom full
|
||||
pair lj/cut
|
||||
@ -17,86 +16,85 @@ pair_coeff: ! |
|
||||
1 2 lj/cut 0.01 1.75 8
|
||||
1 3 lj/cut 0.02 2.85 8
|
||||
1 4 lj/cut 0.0173205 2.8 8
|
||||
1 5 lj/cut 0.0173205 2.8 8
|
||||
2 2 lj/cut 0.005 1 8
|
||||
2 3 lj/cut 0.01 2.1 8
|
||||
2 4 lj/cut 0.005 0.5 8
|
||||
2 5 lj/cut 0.00866025 2.05 8
|
||||
3 3 lj/cut 0.02 3.2 8
|
||||
3 4 lj/cut 0.0173205 3.15 8
|
||||
3 5 lj/cut 0.0173205 3.15 8
|
||||
4 4 lj/cut 0.015 3.1 8
|
||||
4 5 lj/cut 0.015 3.1 8
|
||||
5 5 lj/cut 0.015 3.1 8
|
||||
* * coul/cut
|
||||
3 3 none
|
||||
extract: ! ""
|
||||
natoms: 29
|
||||
init_vdwl: 749.237031537357
|
||||
init_coul: -127.494586297384
|
||||
init_vdwl: 745.8729165577952
|
||||
init_coul: -138.51281549901438
|
||||
init_stress: ! |2-
|
||||
2.1525607963688685e+03 2.1557327421151899e+03 4.6078904881742919e+03 -7.6038602729615206e+02 1.6844266627640316e+01 6.6957549356541904e+02
|
||||
2.1433945387773583e+03 2.1438418525427405e+03 4.5749493230631624e+03 -7.5161300805564053e+02 2.2812993218099149e+00 6.7751226426357493e+02
|
||||
init_forces: ! |2
|
||||
1 -2.1092656751925425e+01 2.6988675971196511e+02 3.3315496490210148e+02
|
||||
1 -1.9649291084632637e+01 2.6691357149380127e+02 3.3265232188338541e+02
|
||||
2 1.5859534558925552e+02 1.2807631885753918e+02 -1.8817306436807144e+02
|
||||
3 -1.3530454720678361e+02 -3.8712939850050407e+02 -1.4565941679363837e+02
|
||||
3 -1.3530567831970495e+02 -3.8712983044177196e+02 -1.4566129338928388e+02
|
||||
4 -7.8195539840070643e+00 2.1451967639963558e+00 -5.9041143405612999e+00
|
||||
5 -2.9163954623584245e+00 -3.3469203159528891e+00 1.2074681739853981e+01
|
||||
6 -8.2989063447195736e+02 9.6019318342576571e+02 1.1479359629470548e+03
|
||||
7 5.7874538635311936e+01 -3.3533985555183068e+02 -1.7140659049826711e+03
|
||||
8 1.4280513303191131e+02 -1.0509295075299345e+02 4.0233495763755388e+02
|
||||
6 -8.2989098462283039e+02 9.6019325436904921e+02 1.1479348548947717e+03
|
||||
7 6.6019203897045301e+01 -3.4002739206175022e+02 -1.6963964881803979e+03
|
||||
8 1.3359110241269076e+02 -9.8018932606492385e+01 3.8583797257557939e+02
|
||||
9 8.0984846358566287e+01 7.9600519879262990e+01 3.5197302607961126e+02
|
||||
10 5.3089511229361369e+02 -6.0998478582862322e+02 -1.8376190026890427e+02
|
||||
10 5.3089359350918085e+02 -6.0998285656765029e+02 -1.8376081267141316e+02
|
||||
11 -3.3416993160125812e+00 -4.7792759715873308e+00 -1.0199030124309976e+01
|
||||
12 2.0837574127335213e+01 9.8678992274266921e+00 -6.6547856883058829e+00
|
||||
12 2.0835873540321462e+01 9.8712254444709888e+00 -6.6533607886298407e+00
|
||||
13 7.7163253261199216e+00 -3.2213746930547997e+00 -1.5767800864580894e-01
|
||||
14 -4.6138299494911639e+00 1.1336312962250332e+00 -8.7660603717255832e+00
|
||||
15 1.6301594996052212e-02 8.3212544078493291e+00 2.0473863128880430e+00
|
||||
16 4.6221152690976908e+02 -3.3124444344467344e+02 -1.1865036959698600e+03
|
||||
17 -4.5568726200724092e+02 3.2159231068141992e+02 1.1980747895060381e+03
|
||||
18 1.2559081069243214e+00 6.6417071126352401e+00 -9.8829024661057083e+00
|
||||
16 4.6221076301291345e+02 -3.3124285139751140e+02 -1.1865012258764175e+03
|
||||
17 -4.5606960458862824e+02 3.2217194951510470e+02 1.1974188947377352e+03
|
||||
18 1.2642503785059469e+00 6.6487748605328285e+00 -9.8967964193854954e+00
|
||||
19 1.6184514948299680e+00 -1.6594104323923884e+00 5.6561121961572223e+00
|
||||
20 -3.4526823962510336e+00 -3.1794201827804485e+00 4.2593058942069533e+00
|
||||
21 -6.9075184494915916e+01 -8.0130885501011278e+01 2.1539206802020570e+02
|
||||
21 -6.9068952751967188e+01 -8.0138116375988346e+01 2.1538477896980064e+02
|
||||
22 -1.0659100672969126e+02 -2.5122518903211912e+01 -1.6283765584018167e+02
|
||||
23 1.7515797811309091e+02 1.0400246780074602e+02 -5.2024018223038112e+01
|
||||
24 3.4171625917777114e+01 -2.0194713552213176e+02 1.0982444762500101e+02
|
||||
24 3.4173068949839667e+01 -2.0194449586908348e+02 1.0982812303394964e+02
|
||||
25 -1.4493448920889654e+02 2.0799041369281703e+01 -1.2091050237305346e+02
|
||||
26 1.0983611557367320e+02 1.8026252731144598e+02 1.2199612526237862e+01
|
||||
27 4.8962849172262665e+01 -2.1594262411895852e+02 8.6423873663236122e+01
|
||||
27 4.8960638929347951e+01 -2.1594451942422438e+02 8.6425489362011916e+01
|
||||
28 -1.7556665080686602e+02 7.2243004627719102e+01 -1.1798867746650107e+02
|
||||
29 1.2734696054095977e+02 1.4335517724642804e+02 3.2138218235426962e+01
|
||||
run_vdwl: 719.583657033589
|
||||
run_coul: -127.40544584254
|
||||
run_vdwl: 716.3802195867241
|
||||
run_coul: -138.41949137400766
|
||||
run_stress: ! |2-
|
||||
2.1066855251881925e+03 2.1118463017620702e+03 4.3411898896739367e+03 -7.3939094916433964e+02 3.4004309224046892e+01 6.3091802194682043e+02
|
||||
2.0979303990927456e+03 2.1001765345686881e+03 4.3095704231054315e+03 -7.3090278796437826e+02 1.9971774954468970e+01 6.3854079301261561e+02
|
||||
run_forces: ! |2
|
||||
1 -1.8063372896871861e+01 2.6678105157873705e+02 3.2402996659149238e+02
|
||||
2 1.5330358878115447e+02 1.2380492572678898e+02 -1.8151333240574237e+02
|
||||
3 -1.3354888440944052e+02 -3.7931758440809585e+02 -1.4288689214683646e+02
|
||||
4 -7.7881294728555828e+00 2.1395223669670709e+00 -5.8946911982403414e+00
|
||||
5 -2.9015406841040750e+00 -3.3190775902304690e+00 1.2028378254388521e+01
|
||||
6 -8.0488833369818803e+02 9.1802981835006187e+02 1.0244099127408372e+03
|
||||
7 5.5465440662485150e+01 -3.1049131627300432e+02 -1.5711945284966396e+03
|
||||
8 1.3295629283853211e+02 -9.6566834572636509e+01 3.9097872808487460e+02
|
||||
9 7.8594917874857543e+01 7.6787239820699739e+01 3.4114513928465578e+02
|
||||
10 5.2093084326233679e+02 -5.9871672888830824e+02 -1.8144904320802175e+02
|
||||
11 -3.3489474910616370e+00 -4.7299066233626039e+00 -1.0148722292306179e+01
|
||||
12 2.0817110693939330e+01 9.8621648346024777e+00 -6.7801624810903709e+00
|
||||
13 7.6705047254095406e+00 -3.1868508087899996e+00 -1.5820764985177732e-01
|
||||
14 -4.5784791310044675e+00 1.1138053855319887e+00 -8.6502065778611730e+00
|
||||
15 -2.0858645012343142e-03 8.3343285345071436e+00 2.0653788728248101e+00
|
||||
16 4.3381526742384807e+02 -3.1216388880293573e+02 -1.1109931745334770e+03
|
||||
17 -4.2715774864577224e+02 3.0231264864237801e+02 1.1227484174344033e+03
|
||||
18 1.2031503133104606e+00 6.6109154581424221e+00 -9.8172457746610178e+00
|
||||
19 1.6542029696015907e+00 -1.6435312394752812e+00 5.6634735276627497e+00
|
||||
20 -3.4397850729417945e+00 -3.1640002526012512e+00 4.1983600861482540e+00
|
||||
21 -6.8065111490654829e+01 -7.8373161130023504e+01 2.1145341222255522e+02
|
||||
22 -1.0497862711706458e+02 -2.4878742273401844e+01 -1.5988817620288421e+02
|
||||
23 1.7253257365878264e+02 1.0200250230245655e+02 -5.1030905034776815e+01
|
||||
24 3.5759299481226734e+01 -2.0057859782619599e+02 1.1032111627497152e+02
|
||||
25 -1.4570195714964908e+02 2.0679748005808605e+01 -1.2162175868970056e+02
|
||||
26 1.0901403460528100e+02 1.7901644500696690e+02 1.2412674623332103e+01
|
||||
27 4.8035883250870448e+01 -2.1205445789284894e+02 8.4315888267103702e+01
|
||||
28 -1.7229323056476886e+02 7.0823266235363889e+01 -1.1557273097021344e+02
|
||||
29 1.2500312314724302e+02 1.4088629633289813e+02 3.1828931397054006e+01
|
||||
1 -1.6610877533029917e+01 2.6383021332799052e+02 3.2353483319348879e+02
|
||||
2 1.5330154436698174e+02 1.2380568506592064e+02 -1.8151165007810525e+02
|
||||
3 -1.3355888938990938e+02 -3.7933844699879148e+02 -1.4289670293816388e+02
|
||||
4 -7.7881120826204668e+00 2.1395098313701606e+00 -5.8946811108039316e+00
|
||||
5 -2.9015331574965137e+00 -3.3190957550906650e+00 1.2028358182322860e+01
|
||||
6 -8.0526764288323773e+02 9.1843645125221315e+02 1.0247463799396066e+03
|
||||
7 6.3415313059583099e+01 -3.1516725367592539e+02 -1.5545584841600896e+03
|
||||
8 1.2443895440675962e+02 -8.9966546620018491e+01 3.7528288654519253e+02
|
||||
9 7.8562021792928846e+01 7.6737772485099740e+01 3.4097956793351517e+02
|
||||
10 5.2084083656240523e+02 -5.9861234059469723e+02 -1.8138805681750645e+02
|
||||
11 -3.3489824667518393e+00 -4.7298446901938807e+00 -1.0148711690275450e+01
|
||||
12 2.0815589888478105e+01 9.8654168641522730e+00 -6.7785848461804141e+00
|
||||
13 7.6704892224392722e+00 -3.1868449584865046e+00 -1.5821377982473980e-01
|
||||
14 -4.5785422362324342e+00 1.1138107530543817e+00 -8.6501509346025998e+00
|
||||
15 -2.1389037192471316e-03 8.3343251445103643e+00 2.0653551218031234e+00
|
||||
16 4.3381854759590340e+02 -3.1216576452973555e+02 -1.1109981398263690e+03
|
||||
17 -4.2754398440828430e+02 3.0289566960675381e+02 1.1220989215843697e+03
|
||||
18 1.2114513551044401e+00 6.6180216089215458e+00 -9.8312525087926925e+00
|
||||
19 1.6542558848822984e+00 -1.6435031778340830e+00 5.6635143081937196e+00
|
||||
20 -3.4397798875877807e+00 -3.1640142907323199e+00 4.1983853511543821e+00
|
||||
21 -6.8058847895033125e+01 -7.8380439852912886e+01 2.1144611822725810e+02
|
||||
22 -1.0497864675042641e+02 -2.4878735013483009e+01 -1.5988818740798348e+02
|
||||
23 1.7253258234009186e+02 1.0200252121753527e+02 -5.1030908277968685e+01
|
||||
24 3.5760727178399790e+01 -2.0057598226072813e+02 1.1032480117076591e+02
|
||||
25 -1.4570194437506802e+02 2.0679739580300286e+01 -1.2162176434722556e+02
|
||||
26 1.0901404321356092e+02 1.7901646282634897e+02 1.2412667553028452e+01
|
||||
27 4.8033700837518651e+01 -2.1205635024551196e+02 8.4317526475629421e+01
|
||||
28 -1.7229323238986416e+02 7.0823275743089638e+01 -1.1557274387241809e+02
|
||||
29 1.2500309665422407e+02 1.4088628735688107e+02 3.1828917009980870e+01
|
||||
...
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
---
|
||||
lammps_version: 10 Feb 2021
|
||||
date_generated: Fri Feb 26 23:08:45 2021
|
||||
lammps_version: 8 Apr 2021
|
||||
date_generated: Mon Apr 19 08:49:07 2021
|
||||
epsilon: 5e-14
|
||||
skip_tests: gpu intel omp
|
||||
prerequisites: ! |
|
||||
@ -31,74 +31,75 @@ pair_coeff: ! |
|
||||
5 5 lj/cut 0.015 3.1 8
|
||||
* * coul/cut 1
|
||||
* * coul/cut 2
|
||||
2 3 none
|
||||
extract: ! ""
|
||||
natoms: 29
|
||||
init_vdwl: 749.237031537357
|
||||
init_coul: -127.494586297384
|
||||
init_vdwl: 695.3728483503972
|
||||
init_coul: 118.95803822933868
|
||||
init_stress: ! |2-
|
||||
2.1525607963688685e+03 2.1557327421151899e+03 4.6078904881742919e+03 -7.6038602729615206e+02 1.6844266627640316e+01 6.6957549356541904e+02
|
||||
2.1020038760662910e+03 2.1696900014167491e+03 4.2400143530641753e+03 -8.4820804228720078e+02 3.1662186032408862e+01 6.7609982605789560e+02
|
||||
init_forces: ! |2
|
||||
1 -2.1092656751925425e+01 2.6988675971196511e+02 3.3315496490210148e+02
|
||||
2 1.5859534558925552e+02 1.2807631885753918e+02 -1.8817306436807144e+02
|
||||
1 1.2395744433084418e+02 4.0360040310773837e+02 1.4710329775938777e+02
|
||||
2 2.0403866219573294e+00 3.7427015227202860e+00 -5.2095053499948687e+00
|
||||
3 -1.3530454720678361e+02 -3.8712939850050407e+02 -1.4565941679363837e+02
|
||||
4 -7.8195539840070643e+00 2.1451967639963558e+00 -5.9041143405612999e+00
|
||||
5 -2.9163954623584245e+00 -3.3469203159528891e+00 1.2074681739853981e+01
|
||||
6 -8.2989063447195736e+02 9.6019318342576571e+02 1.1479359629470548e+03
|
||||
7 5.7874538635311936e+01 -3.3533985555183068e+02 -1.7140659049826711e+03
|
||||
8 1.4280513303191131e+02 -1.0509295075299345e+02 4.0233495763755388e+02
|
||||
9 8.0984846358566287e+01 7.9600519879262990e+01 3.5197302607961126e+02
|
||||
10 5.3089511229361369e+02 -6.0998478582862322e+02 -1.8376190026890427e+02
|
||||
11 -3.3416993160125812e+00 -4.7792759715873308e+00 -1.0199030124309976e+01
|
||||
12 2.0837574127335213e+01 9.8678992274266921e+00 -6.6547856883058829e+00
|
||||
13 7.7163253261199216e+00 -3.2213746930547997e+00 -1.5767800864580894e-01
|
||||
14 -4.6138299494911639e+00 1.1336312962250332e+00 -8.7660603717255832e+00
|
||||
15 1.6301594996052212e-02 8.3212544078493291e+00 2.0473863128880430e+00
|
||||
16 4.6221152690976908e+02 -3.3124444344467344e+02 -1.1865036959698600e+03
|
||||
17 -4.5568726200724092e+02 3.2159231068141992e+02 1.1980747895060381e+03
|
||||
18 1.2559081069243214e+00 6.6417071126352401e+00 -9.8829024661057083e+00
|
||||
19 1.6184514948299680e+00 -1.6594104323923884e+00 5.6561121961572223e+00
|
||||
20 -3.4526823962510336e+00 -3.1794201827804485e+00 4.2593058942069533e+00
|
||||
4 -8.8457203481064290e+00 2.0775655304814062e+00 -6.4577920902830810e+00
|
||||
5 -3.8621595793596168e+00 -3.4155992315339034e+00 1.2662823025931699e+01
|
||||
6 -8.2989063447195713e+02 9.6019318342576582e+02 1.1479359629470543e+03
|
||||
7 5.7874538635311936e+01 -3.3533985555183062e+02 -1.7140659049826709e+03
|
||||
8 2.1951760889665016e+02 -2.7745841022748479e+01 7.5004437999744698e+02
|
||||
9 5.2714873038389127e+00 -8.4861250407806690e+00 6.9224510478542918e+00
|
||||
10 5.3089511229361347e+02 -6.0998478582862344e+02 -1.8376190026890421e+02
|
||||
11 -2.8872927401613704e+00 -5.8162507264509147e+00 -1.0845838127234256e+01
|
||||
12 2.0837574127335216e+01 9.8678992274266957e+00 -6.6547856883058802e+00
|
||||
13 8.7535743331999196e+00 -3.5826004829028451e+00 -5.0574000969376898e-01
|
||||
14 -3.5497769084795245e+00 7.9766504428704821e-01 -1.0037637362299094e+01
|
||||
15 1.9984402152167433e+00 8.5838951595651096e+00 1.4145761197403108e+00
|
||||
16 4.6221152690976896e+02 -3.3124444344467344e+02 -1.1865036959698600e+03
|
||||
17 -4.5568726200724080e+02 3.2159231068141997e+02 1.1980747895060381e+03
|
||||
18 1.2559081069243216e+00 6.6417071126352401e+00 -9.8829024661057083e+00
|
||||
19 3.1958200177362119e+00 3.7689524813885311e-01 4.2824321381874042e-01
|
||||
20 -1.2082334569560751e+00 -9.0511517312734613e-01 9.8083091385568755e-01
|
||||
21 -6.9075184494915916e+01 -8.0130885501011278e+01 2.1539206802020570e+02
|
||||
22 -1.0659100672969126e+02 -2.5122518903211912e+01 -1.6283765584018167e+02
|
||||
23 1.7515797811309091e+02 1.0400246780074602e+02 -5.2024018223038112e+01
|
||||
24 3.4171625917777114e+01 -2.0194713552213176e+02 1.0982444762500101e+02
|
||||
25 -1.4493448920889654e+02 2.0799041369281703e+01 -1.2091050237305346e+02
|
||||
26 1.0983611557367320e+02 1.8026252731144598e+02 1.2199612526237862e+01
|
||||
27 4.8962849172262665e+01 -2.1594262411895852e+02 8.6423873663236122e+01
|
||||
28 -1.7556665080686602e+02 7.2243004627719102e+01 -1.1798867746650107e+02
|
||||
29 1.2734696054095977e+02 1.4335517724642804e+02 3.2138218235426962e+01
|
||||
run_vdwl: 719.583657033589
|
||||
run_coul: -127.40544584254
|
||||
22 -1.0570319068625072e+02 -2.6153578761410891e+01 -1.6388724340449593e+02
|
||||
23 1.7632012115728725e+02 1.0321660965756321e+02 -5.2838552485947986e+01
|
||||
24 3.4171625917777135e+01 -2.0194713552213176e+02 1.0982444762500104e+02
|
||||
25 -1.4171132869700503e+02 2.4473995934890809e+01 -1.1380863842227539e+02
|
||||
26 1.1207773375764390e+02 1.8255009969585140e+02 1.5493459542368809e+01
|
||||
27 4.8962849172262672e+01 -2.1594262411895849e+02 8.6423873663236122e+01
|
||||
28 -1.7737980202409483e+02 6.9833302792655687e+01 -1.1687995083239473e+02
|
||||
29 1.2576338082394257e+02 1.4027600476554844e+02 3.4298300872164091e+01
|
||||
run_vdwl: 666.6114372300175
|
||||
run_coul: 119.0349803664172
|
||||
run_stress: ! |2-
|
||||
2.1066855251881925e+03 2.1118463017620702e+03 4.3411898896739367e+03 -7.3939094916433964e+02 3.4004309224046892e+01 6.3091802194682043e+02
|
||||
2.0554653461439952e+03 2.1240816159348624e+03 3.9864296321079441e+03 -8.2113807711720642e+02 4.5860921368817714e+01 6.3795624388863928e+02
|
||||
run_forces: ! |2
|
||||
1 -1.8063372896871861e+01 2.6678105157873705e+02 3.2402996659149238e+02
|
||||
2 1.5330358878115447e+02 1.2380492572678898e+02 -1.8151333240574237e+02
|
||||
3 -1.3354888440944052e+02 -3.7931758440809585e+02 -1.4288689214683646e+02
|
||||
4 -7.7881294728555828e+00 2.1395223669670709e+00 -5.8946911982403414e+00
|
||||
5 -2.9015406841040750e+00 -3.3190775902304690e+00 1.2028378254388521e+01
|
||||
6 -8.0488833369818803e+02 9.1802981835006187e+02 1.0244099127408372e+03
|
||||
7 5.5465440662485150e+01 -3.1049131627300432e+02 -1.5711945284966396e+03
|
||||
8 1.3295629283853211e+02 -9.6566834572636509e+01 3.9097872808487460e+02
|
||||
9 7.8594917874857543e+01 7.6787239820699739e+01 3.4114513928465578e+02
|
||||
10 5.2093084326233679e+02 -5.9871672888830824e+02 -1.8144904320802175e+02
|
||||
11 -3.3489474910616370e+00 -4.7299066233626039e+00 -1.0148722292306179e+01
|
||||
12 2.0817110693939330e+01 9.8621648346024777e+00 -6.7801624810903709e+00
|
||||
13 7.6705047254095406e+00 -3.1868508087899996e+00 -1.5820764985177732e-01
|
||||
14 -4.5784791310044675e+00 1.1138053855319887e+00 -8.6502065778611730e+00
|
||||
15 -2.0858645012343142e-03 8.3343285345071436e+00 2.0653788728248101e+00
|
||||
16 4.3381526742384807e+02 -3.1216388880293573e+02 -1.1109931745334770e+03
|
||||
17 -4.2715774864577224e+02 3.0231264864237801e+02 1.1227484174344033e+03
|
||||
18 1.2031503133104606e+00 6.6109154581424221e+00 -9.8172457746610178e+00
|
||||
19 1.6542029696015907e+00 -1.6435312394752812e+00 5.6634735276627497e+00
|
||||
20 -3.4397850729417945e+00 -3.1640002526012512e+00 4.1983600861482540e+00
|
||||
21 -6.8065111490654829e+01 -7.8373161130023504e+01 2.1145341222255522e+02
|
||||
22 -1.0497862711706458e+02 -2.4878742273401844e+01 -1.5988817620288421e+02
|
||||
23 1.7253257365878264e+02 1.0200250230245655e+02 -5.1030905034776815e+01
|
||||
24 3.5759299481226734e+01 -2.0057859782619599e+02 1.1032111627497152e+02
|
||||
25 -1.4570195714964908e+02 2.0679748005808605e+01 -1.2162175868970056e+02
|
||||
26 1.0901403460528100e+02 1.7901644500696690e+02 1.2412674623332103e+01
|
||||
27 4.8035883250870448e+01 -2.1205445789284894e+02 8.4315888267103702e+01
|
||||
28 -1.7229323056476886e+02 7.0823266235363889e+01 -1.1557273097021344e+02
|
||||
29 1.2500312314724302e+02 1.4088629633289813e+02 3.1828931397054006e+01
|
||||
1 1.2147752778287347e+02 3.9534374510798301e+02 1.4413605468707195e+02
|
||||
2 2.0399930128993224e+00 3.7557805682682748e+00 -5.2058063128492336e+00
|
||||
3 -1.3333096721751764e+02 -3.7844737951764535e+02 -1.4238961467845959e+02
|
||||
4 -8.8134959904656007e+00 2.0713309772867512e+00 -6.4488585600230390e+00
|
||||
5 -3.8477726201647444e+00 -3.3895758075040905e+00 1.2617145909886416e+01
|
||||
6 -8.0167356407303771e+02 9.1511139207343115e+02 1.0260272560535318e+03
|
||||
7 5.5505611657656395e+01 -3.1051895449278589e+02 -1.5710947343097826e+03
|
||||
8 2.0529374503578478e+02 -2.0214215494247814e+01 7.2625230302681450e+02
|
||||
9 5.2759827822743706e+00 -8.5029606929125237e+00 6.9437749095564918e+00
|
||||
10 5.1965622207475565e+02 -5.9755369618722887e+02 -1.8157960265809501e+02
|
||||
11 -2.8945778423069450e+00 -5.7662137070620867e+00 -1.0795655996511190e+01
|
||||
12 2.0805414458419623e+01 9.8601745071951186e+00 -6.7782082590913761e+00
|
||||
13 8.7071353977142216e+00 -3.5468381013374746e+00 -5.0622413568933977e-01
|
||||
14 -3.5154376369702902e+00 7.7780954572734984e-01 -9.9213826027447922e+00
|
||||
15 1.9841048852047882e+00 8.5994997942103542e+00 1.4318674533257378e+00
|
||||
16 4.3381844145946962e+02 -3.1216471119732176e+02 -1.1109885080754987e+03
|
||||
17 -4.2715530816964593e+02 3.0229606646197493e+02 1.1227416717947804e+03
|
||||
18 1.2084471423281700e+00 6.6044276302722391e+00 -9.8277754487894136e+00
|
||||
19 3.2313284340457584e+00 3.9423765207539685e-01 4.3538203547548804e-01
|
||||
20 -1.1969830459758257e+00 -8.8960771143457151e-01 9.2526061301410900e-01
|
||||
21 -6.8060732684000939e+01 -7.8361174093266939e+01 2.1144116321844479e+02
|
||||
22 -1.0408301224632098e+02 -2.5910595170511762e+01 -1.6092979318531198e+02
|
||||
23 1.7368084263289987e+02 1.0120586644080414e+02 -5.1841492516928824e+01
|
||||
24 3.5901478353702402e+01 -2.0053113579605662e+02 1.1040539818330446e+02
|
||||
25 -1.4257916099779564e+02 2.4374225442971877e+01 -1.1459703108843671e+02
|
||||
26 1.1121725716987784e+02 1.8123540984908496e+02 1.5706480723289609e+01
|
||||
27 4.7997433858479745e+01 -2.1209575374436324e+02 8.4297950741699410e+01
|
||||
28 -1.7410976565710496e+02 6.8409754929264125e+01 -1.1446187451410728e+02
|
||||
29 1.2345981204292134e+02 1.3785309073312925e+02 3.4004852992123624e+01
|
||||
...
|
||||
|
||||
@ -1,99 +1,99 @@
|
||||
---
|
||||
lammps_version: 10 Feb 2021
|
||||
date_generated: Fri Feb 26 23:08:45 2021
|
||||
lammps_version: 8 Apr 2021
|
||||
date_generated: Mon Apr 19 08:49:07 2021
|
||||
epsilon: 5e-14
|
||||
skip_tests: gpu
|
||||
prerequisites: ! |
|
||||
atom full
|
||||
pair lj/cut
|
||||
pair lj96/cut
|
||||
pre_commands: ! ""
|
||||
post_commands: ! ""
|
||||
input_file: in.fourmol
|
||||
pair_style: hybrid lj/cut 8.0 lj/cut 8.0
|
||||
pair_style: hybrid lj/cut 8.0 lj96/cut 8.0
|
||||
pair_coeff: ! |
|
||||
1 1 lj/cut 1 0.02 2.5 8
|
||||
1 2 lj/cut 1 0.01 1.75 8
|
||||
1 3 lj/cut 1 0.02 2.85 8
|
||||
1 4 lj/cut 1 0.0173205 2.8 8
|
||||
1 5 lj/cut 1 0.0173205 2.8 8
|
||||
2 2 lj/cut 1 0.005 1 8
|
||||
2 3 lj/cut 1 0.01 2.1 8
|
||||
2 4 lj/cut 2 0.005 0.5 8
|
||||
2 5 lj/cut 2 0.00866025 2.05 8
|
||||
3 3 lj/cut 2 0.02 3.2 8
|
||||
3 4 lj/cut 2 0.0173205 3.15 8
|
||||
3 5 lj/cut 2 0.0173205 3.15 8
|
||||
4 4 lj/cut 2 0.015 3.1 8
|
||||
4 5 lj/cut 2 0.015 3.1 8
|
||||
5 5 lj/cut 2 0.015 3.1 8
|
||||
1 1 lj/cut 0.02 2.5 8
|
||||
1 2 lj/cut 0.01 1.75 8
|
||||
1 3 lj/cut 0.02 2.85 8
|
||||
1 4 lj/cut 0.0173205 2.8 8
|
||||
1 5 none
|
||||
2 2 lj/cut 0.005 1 8
|
||||
2 3 lj/cut 0.01 2.1 8
|
||||
2 4 lj96/cut 0.005 0.5 8
|
||||
2 5 lj96/cut 0.00866025 2.05 8
|
||||
3 3 lj96/cut 0.02 3.2 8
|
||||
3 4 lj96/cut 0.0173205 3.15 8
|
||||
3 5 lj96/cut 0.0173205 3.15 8
|
||||
4 4 lj96/cut 0.015 3.1 8
|
||||
4 5 none
|
||||
5 5 lj96/cut 0.015 3.1 8
|
||||
extract: ! ""
|
||||
natoms: 29
|
||||
init_vdwl: 749.237031537357
|
||||
init_vdwl: 652.4450882982227
|
||||
init_coul: 0
|
||||
init_stress: ! |2-
|
||||
2.1793853434038251e+03 2.1988955172192786e+03 4.6653977523326275e+03 -7.5956547636050641e+02 2.4751536734034119e+01 6.6652028436400667e+02
|
||||
1.6199549089538609e+03 1.8652222871458566e+03 4.3555170935393007e+03 -9.5632547516887212e+02 -2.2845869578774162e+02 6.9982627975055175e+02
|
||||
init_forces: ! |2
|
||||
1 -2.3333390280895383e+01 2.6994567613322732e+02 3.3272827850356794e+02
|
||||
2 1.5828554630414868e+02 1.3025008843535846e+02 -1.8629682358935690e+02
|
||||
3 -1.3528903738169089e+02 -3.8704313358320059e+02 -1.4568978437133126e+02
|
||||
4 -7.8711096705893420e+00 2.1350518625373542e+00 -5.5954532185548151e+00
|
||||
5 -2.5176757268228527e+00 -4.0521510681020221e+00 1.2152704057877008e+01
|
||||
6 -8.3190662465252262e+02 9.6394149462625705e+02 1.1509093566509250e+03
|
||||
7 5.8203388932513640e+01 -3.3608997951626816e+02 -1.7179617996573054e+03
|
||||
8 1.4451392284291583e+02 -1.0927475861089046e+02 3.9990593492420493e+02
|
||||
9 7.9156945283097571e+01 8.5273009783986680e+01 3.5032175698445252e+02
|
||||
10 5.3118875219105416e+02 -6.1040990859419469e+02 -1.8355872642619312e+02
|
||||
11 -2.3530157267965532e+00 -5.9077640073819744e+00 -9.6590723955414326e+00
|
||||
12 1.7527155146800411e+01 1.0633119523437488e+01 -7.9254398064483143e+00
|
||||
13 8.0986409579532861e+00 -3.2098088264781510e+00 -1.4896399843793828e-01
|
||||
14 -3.3852721292265100e+00 6.8636181241903504e-01 -8.7507190862499726e+00
|
||||
15 -2.0454999188605286e-01 8.4846165523049883e+00 3.0131615419406708e+00
|
||||
16 4.6326310311812085e+02 -3.3087715736498177e+02 -1.1893024561782547e+03
|
||||
17 -4.5334300923766710e+02 3.1554283255882558e+02 1.2058417793481196e+03
|
||||
18 -1.8862623280672657e-02 -3.3402010907951640e-02 3.1000479299095243e-02
|
||||
19 3.1843079640570080e-04 -2.3918627818763423e-04 1.7427252638513441e-03
|
||||
20 -9.9760831209706009e-04 -1.0209184826753088e-03 3.6910972636601454e-04
|
||||
21 -7.1566125273265527e+01 -8.1615678329920812e+01 2.2589561408339878e+02
|
||||
22 -1.0808835729977487e+02 -2.6193787235943859e+01 -1.6957904943161384e+02
|
||||
23 1.7964455474779510e+02 1.0782097695276961e+02 -5.6305786479140700e+01
|
||||
24 3.6591406576585001e+01 -2.1181587621785556e+02 1.1218301872572404e+02
|
||||
25 -1.4851489147738829e+02 2.3907118122949107e+01 -1.2485634873166315e+02
|
||||
26 1.1191129453598201e+02 1.8789774664223359e+02 1.2650137204319886e+01
|
||||
27 5.1810388677546058e+01 -2.2705458321213791e+02 9.0849111082069683e+01
|
||||
28 -1.8041307121444072e+02 7.7534042932772934e+01 -1.2206956760706599e+02
|
||||
29 1.2861057254925004e+02 1.4952711274394565e+02 3.1216025556267869e+01
|
||||
run_vdwl: 719.443281677466
|
||||
1 -2.3333467289742931e+01 2.6993142283476851e+02 3.3272495963292283e+02
|
||||
2 1.5828552013445056e+02 1.3025008546972211e+02 -1.8629688302475225e+02
|
||||
3 -1.3529016849461223e+02 -3.8704356552446848e+02 -1.4569166096697677e+02
|
||||
4 -7.8711116846129050e+00 2.1350517679284451e+00 -5.5954561911890046e+00
|
||||
5 -2.5177006460693390e+00 -4.0521653208614632e+00 1.2152678277353530e+01
|
||||
6 -8.3190697480339566e+02 9.6394156556954056e+02 1.1509082485986419e+03
|
||||
7 6.4961865086373535e+01 -3.3998877273576284e+02 -1.7032949977108992e+03
|
||||
8 1.3800067755917669e+02 -1.0575764259058835e+02 3.8568183849544192e+02
|
||||
9 7.9156940582018805e+01 8.5272978047670051e+01 3.5032172427046436e+02
|
||||
10 5.3118723340662132e+02 -6.1040797933322176e+02 -1.8355763882870201e+02
|
||||
11 -2.3531003777844695e+00 -5.9077049537176469e+00 -9.6590265504356907e+00
|
||||
12 1.7525454559786660e+01 1.0636445740481784e+01 -7.9240149067722738e+00
|
||||
13 8.0985903919880737e+00 -3.2096212808671210e+00 -1.4884740337815178e-01
|
||||
14 -3.3853022166233191e+00 6.8640988271648729e-01 -8.7507072432538457e+00
|
||||
15 -2.0454983537269980e-01 8.4846157143527687e+00 3.0131531921339136e+00
|
||||
16 4.6326233922126522e+02 -3.3087556531781973e+02 -1.1892999860848122e+03
|
||||
17 -4.5359533332836713e+02 3.1593155242296575e+02 1.2054040116538242e+03
|
||||
18 -1.2313292578060062e-02 -2.5378393942268991e-02 2.2968315649798128e-02
|
||||
19 3.0439100375925543e-04 -2.4779478988349023e-04 1.7258398467618651e-03
|
||||
20 -9.8045055969651082e-04 -1.0028949153285463e-03 3.5715001758946177e-04
|
||||
21 -5.7186294103147572e+00 -6.6344147796080684e+00 1.8654007864095536e+01
|
||||
22 -8.9567671655515344e+00 -2.1701845330290590e+00 -1.4052631842883260e+01
|
||||
23 1.4673371058172327e+01 8.8071981142288021e+00 -4.5994772330864269e+00
|
||||
24 3.2769508891728725e+00 -1.7316771489185900e+01 9.3887574366841235e+00
|
||||
25 -1.2406052232816045e+01 1.9955673026898786e+00 -1.0432202322872895e+01
|
||||
26 9.1216838958879958e+00 1.5316110435596807e+01 1.0304939537049307e+00
|
||||
27 3.8455233865293490e+00 -1.8678583225803411e+01 7.2399697763695485e+00
|
||||
28 -1.4536949587460585e+01 6.2480560831561052e+00 -9.8361741655762192e+00
|
||||
29 1.0692946253413785e+01 1.2432540782763471e+01 2.5948100184389560e+00
|
||||
run_vdwl: 624.1198434527859
|
||||
run_coul: 0
|
||||
run_stress: ! |2-
|
||||
2.1330153957371017e+03 2.1547728168285512e+03 4.3976497417710170e+03 -7.3873328448298525e+02 4.1743821105367225e+01 6.2788012209191243e+02
|
||||
1.5811055300513408e+03 1.8260026652593124e+03 4.0928122296059910e+03 -9.3274940961565028e+02 -2.0869586127604293e+02 6.5975565836651401e+02
|
||||
run_forces: ! |2
|
||||
1 -2.0299419751359796e+01 2.6686193378822901e+02 3.2358785870694004e+02
|
||||
2 1.5298617928491248e+02 1.2596516341409225e+02 -1.7961292655338647e+02
|
||||
3 -1.3353630652439793e+02 -3.7923748696131213e+02 -1.4291839793625775e+02
|
||||
4 -7.8374717836161771e+00 2.1276610789823414e+00 -5.5845014473820624e+00
|
||||
5 -2.5014258630866699e+00 -4.0250131424704385e+00 1.2103512372025625e+01
|
||||
6 -8.0681462887292412e+02 9.2165637136761688e+02 1.0270795806932804e+03
|
||||
7 5.5780279349903594e+01 -3.1117530951561696e+02 -1.5746991292869038e+03
|
||||
8 1.3452983055534955e+02 -1.0064659350255846e+02 3.8851791558207583e+02
|
||||
9 7.6746213883426122e+01 8.2501469877402286e+01 3.3944351200617950e+02
|
||||
10 5.2128033527695618e+02 -5.9920098848285909e+02 -1.8126029815043356e+02
|
||||
11 -2.3573118090915246e+00 -5.8616944550888350e+00 -9.6049808811326240e+00
|
||||
12 1.7503975847822890e+01 1.0626930310560827e+01 -8.0603160272054950e+00
|
||||
13 8.0530313322973104e+00 -3.1756495170399104e+00 -1.4618315664740525e-01
|
||||
14 -3.3416065168069760e+00 6.6492606336082127e-01 -8.6345131440469647e+00
|
||||
15 -2.2253843262374870e-01 8.5025661635348619e+00 3.0369735873081569e+00
|
||||
16 4.3476311264989528e+02 -3.1171086735551455e+02 -1.1135217194927461e+03
|
||||
17 -4.2469846140777202e+02 2.9615411776780638e+02 1.1302573488400678e+03
|
||||
18 -1.8849981672825901e-02 -3.3371636477421286e-02 3.0986293443778724e-02
|
||||
19 3.0940277774413972e-04 -2.4634536455373055e-04 1.7433360008861018e-03
|
||||
20 -9.8648131277150768e-04 -1.0112587134526944e-03 3.6932948773965422e-04
|
||||
21 -7.0490745283106705e+01 -7.9749153581142281e+01 2.2171003384646417e+02
|
||||
22 -1.0638717908920059e+02 -2.5949502163177943e+01 -1.6645589526812256e+02
|
||||
23 1.7686797710735050e+02 1.0571018898885526e+02 -5.5243337084099444e+01
|
||||
24 3.8206017656281247e+01 -2.1022820141992992e+02 1.1260711266189016e+02
|
||||
25 -1.4918881473530885e+02 2.3762151395876515e+01 -1.2549188139143089e+02
|
||||
26 1.1097059498808326e+02 1.8645503634228552e+02 1.2861559677865269e+01
|
||||
27 5.0800844984832011e+01 -2.2296588090685447e+02 8.8607367716323097e+01
|
||||
28 -1.7694190504288861e+02 7.6029945485181912e+01 -1.1950518150242056e+02
|
||||
29 1.2614894925528131e+02 1.4694250820033537e+02 3.0893386672863009e+01
|
||||
1 -2.0299545735132892e+01 2.6684807204226053e+02 3.2358468359237850e+02
|
||||
2 1.5298613010577799e+02 1.2596515036763115e+02 -1.7961295708782035e+02
|
||||
3 -1.3353752998744326e+02 -3.7923796991710333e+02 -1.4292028045209116e+02
|
||||
4 -7.8374742335759366e+00 2.1276610876297597e+00 -5.5845047399918775e+00
|
||||
5 -2.5014507165598512e+00 -4.0250273077928105e+00 1.2103486006755219e+01
|
||||
6 -8.0709614974024726e+02 9.2196952917801661e+02 1.0273844835710092e+03
|
||||
7 6.2368964790102126e+01 -3.1505972760991460e+02 -1.5609074758304780e+03
|
||||
8 1.2853739032019485e+02 -9.7465044500250556e+01 3.7497119240743029e+02
|
||||
9 7.6715909814250395e+01 8.2459997325499288e+01 3.3929722449258207e+02
|
||||
10 5.2123917690492942e+02 -5.9914969452129674e+02 -1.8122078898785443e+02
|
||||
11 -2.3573941156945706e+00 -5.8616368783617920e+00 -9.6049336125719105e+00
|
||||
12 1.7502383808896312e+01 1.0630235744520755e+01 -8.0588289450962680e+00
|
||||
13 8.0529802801748964e+00 -3.1754616291151323e+00 -1.4606677296755816e-01
|
||||
14 -3.3416363973176253e+00 6.6497430894639287e-01 -8.6345016037082427e+00
|
||||
15 -2.2253805990966902e-01 8.5025662406844038e+00 3.0369660480415672e+00
|
||||
16 4.3476506269170443e+02 -3.1171159958023998e+02 -1.1135242200065077e+03
|
||||
17 -4.2495337371832613e+02 2.9654505216420324e+02 1.1298239214745126e+03
|
||||
18 -1.2304275579819248e-02 -2.5351950229154721e-02 2.2962838569349546e-02
|
||||
19 2.9523284665120854e-04 -2.5507040924857842e-04 1.7263527188201720e-03
|
||||
20 -9.6972071754998339e-04 -9.9365617456234753e-04 3.5770286471788313e-04
|
||||
21 -5.7779283683910396e+00 -6.6373783567402054e+00 1.8717023177597437e+01
|
||||
22 -9.0188479017520962e+00 -2.2015411814231656e+00 -1.4100630927846634e+01
|
||||
23 1.4794749299535622e+01 8.8415202426425061e+00 -4.6144921197234865e+00
|
||||
24 3.4171983592341331e+00 -1.7549081284618467e+01 9.5729670271818517e+00
|
||||
25 -1.2674530181010821e+01 2.0106979870159911e+00 -1.0661184439552951e+01
|
||||
26 9.2499114441813344e+00 1.5533293107821931e+01 1.0752648395769842e+00
|
||||
27 3.9098603108147572e+00 -1.8759688298395208e+01 7.2506773670471274e+00
|
||||
28 -1.4631015477945336e+01 6.2801033491768763e+00 -9.8799560206646078e+00
|
||||
29 1.0722675266961424e+01 1.2481598596015642e+01 2.6278846486097209e+00
|
||||
...
|
||||
|
||||
99
unittest/force-styles/tests/mol-pair-hybrid_multiple.yaml
Normal file
99
unittest/force-styles/tests/mol-pair-hybrid_multiple.yaml
Normal file
@ -0,0 +1,99 @@
|
||||
---
|
||||
lammps_version: 8 Apr 2021
|
||||
date_generated: Mon Apr 19 08:49:08 2021
|
||||
epsilon: 5e-14
|
||||
skip_tests: gpu
|
||||
prerequisites: ! |
|
||||
atom full
|
||||
pair lj/cut
|
||||
pre_commands: ! ""
|
||||
post_commands: ! ""
|
||||
input_file: in.fourmol
|
||||
pair_style: hybrid lj/cut 8.0 lj/cut 8.0
|
||||
pair_coeff: ! |
|
||||
1 1 lj/cut 1 0.02 2.5 8
|
||||
1 2 lj/cut 1 0.01 1.75 8
|
||||
1 3 lj/cut 1 0.02 2.85 8
|
||||
1 4 lj/cut 1 0.0173205 2.8 8
|
||||
1 5 lj/cut 1 0.0173205 2.8 8
|
||||
2 2 lj/cut 1 0.005 1 8
|
||||
2 3 none
|
||||
2 4 lj/cut 2 0.005 0.5 8
|
||||
2 5 lj/cut 2 0.00866025 2.05 8
|
||||
3 3 lj/cut 2 0.02 3.2 8
|
||||
3 4 lj/cut 2 0.0173205 3.15 8
|
||||
3 5 lj/cut 2 0.0173205 3.15 8
|
||||
4 4 none
|
||||
4 5 lj/cut 2 0.015 3.1 8
|
||||
5 5 lj/cut 2 0.015 3.1 8
|
||||
extract: ! ""
|
||||
natoms: 29
|
||||
init_vdwl: 695.3923515458562
|
||||
init_coul: 0
|
||||
init_stress: ! |2-
|
||||
2.0701694962880379e+03 2.1161697936676396e+03 4.2064778387649758e+03 -8.5392301766114281e+02 5.8381311611070338e+01 6.7526909503583579e+02
|
||||
init_forces: ! |2
|
||||
1 1.3470193899351008e+02 3.9971667505559770e+02 1.4653534158640173e+02
|
||||
2 -2.5920146506056333e-04 -3.7955921659898438e-03 1.6073626919112927e-04
|
||||
3 -1.3528903738169089e+02 -3.8704313358320059e+02 -1.4568978437133126e+02
|
||||
4 -7.8050743980642938e+00 2.1869547823331810e+00 -5.5398195700937443e+00
|
||||
5 -2.3463115265684147e+00 -3.6110080311379984e+00 1.1991043207479338e+01
|
||||
6 -8.3190662465252262e+02 9.6394149462625705e+02 1.1509093566509250e+03
|
||||
7 5.8196056725569250e+01 -3.3609532232737348e+02 -1.7179637678770343e+03
|
||||
8 2.2371752997318714e+02 -2.4044581303870338e+01 7.5018536133648945e+02
|
||||
9 -1.9409760262620549e-03 7.2485476558358224e-03 5.8859368216628563e-03
|
||||
10 5.3118875219105416e+02 -6.1040990859419469e+02 -1.8355872642619312e+02
|
||||
11 -2.3694888595131456e+00 -5.8683646131501845e+00 -9.6273569602169200e+00
|
||||
12 1.7527155146800411e+01 1.0633119523437488e+01 -7.9254398064483143e+00
|
||||
13 8.1017386753150031e+00 -3.2103099553624541e+00 -1.4999876338278073e-01
|
||||
14 -3.3827233651141047e+00 6.8626763970182614e-01 -8.7541119515926020e+00
|
||||
15 -2.2835033173800551e-01 8.4695347876005833e+00 3.0205948609978988e+00
|
||||
16 4.6326310311812085e+02 -3.3087715736498177e+02 -1.1893024561782547e+03
|
||||
17 -4.5334049545249684e+02 3.1553975228548006e+02 1.2058468481979494e+03
|
||||
18 -1.4044201506550015e-02 -2.4978926457057571e-02 2.7899849198216014e-02
|
||||
19 5.7908066872909211e-04 2.3580122518177659e-05 9.4432839946607169e-04
|
||||
20 -7.9929144000317922e-04 -8.5923998915859100e-04 9.3688470857894682e-05
|
||||
21 -7.1566125273265527e+01 -8.1615678329920812e+01 2.2589561408339878e+02
|
||||
22 -1.0808832728447032e+02 -2.6193822094038484e+01 -1.6957908491609356e+02
|
||||
23 1.7964458878508086e+02 1.0782095393625858e+02 -5.6305810335528790e+01
|
||||
24 3.6591406576585001e+01 -2.1181587621785556e+02 1.1218301872572404e+02
|
||||
25 -1.4851247198601720e+02 2.3908563011127814e+01 -1.2485206982576771e+02
|
||||
26 1.1191155617819715e+02 1.8789792679177191e+02 1.2650470167620387e+01
|
||||
27 5.1810388677546058e+01 -2.2705458321213791e+02 9.0849111082069683e+01
|
||||
28 -1.8041314710135907e+02 7.7533961534478649e+01 -1.2206952271304674e+02
|
||||
29 1.2861042716162333e+02 1.4952690328401346e+02 3.1216205256769118e+01
|
||||
run_vdwl: 666.4782147617275
|
||||
run_coul: 0
|
||||
run_stress: ! |2-
|
||||
2.0230459789503245e+03 2.0702509496053467e+03 3.9518738620330496e+03 -8.2693736200387241e+02 7.2394119974104541e+01 6.3708810010786885e+02
|
||||
run_forces: ! |2
|
||||
1 1.3222884765649096e+02 3.9147464530754542e+02 1.4358022294156322e+02
|
||||
2 -3.0864727869908275e-04 -3.8828117503160744e-03 1.7172318042670622e-04
|
||||
3 -1.3332620470087795e+02 -3.7836092101534376e+02 -1.4242041283928734e+02
|
||||
4 -7.7728646036501301e+00 2.1785693730418103e+00 -5.5299592481691731e+00
|
||||
5 -2.3308414297947593e+00 -3.5861079994724223e+00 1.1943272718268586e+01
|
||||
6 -8.0362787449170855e+02 9.1873908852320062e+02 1.0286784127827473e+03
|
||||
7 5.5811219820327509e+01 -3.1120381969697877e+02 -1.5746114945931058e+03
|
||||
8 2.0944769168608951e+02 -1.6467844308363212e+01 7.2633940157846291e+02
|
||||
9 -1.8576332682468917e-03 7.0788521064532543e-03 5.6952330037911550e-03
|
||||
10 5.1993646731938259e+02 -5.9797705136296099e+02 -1.8137145374090557e+02
|
||||
11 -2.3735947029864999e+00 -5.8227345663909000e+00 -9.5735721932593005e+00
|
||||
12 1.7496750082385656e+01 1.0626428651973894e+01 -8.0588816332352362e+00
|
||||
13 8.0561193459222018e+00 -3.1761461937053199e+00 -1.4721657561379659e-01
|
||||
14 -3.3390327331317540e+00 6.6483212295920502e-01 -8.6379436016166640e+00
|
||||
15 -2.4691219203353357e-01 8.4871512091352503e+00 3.0445957174405320e+00
|
||||
16 4.3476322109548175e+02 -3.1171106479661643e+02 -1.1135217352066604e+03
|
||||
17 -4.2469483753690730e+02 2.9614920041309318e+02 1.1302640053436066e+03
|
||||
18 -1.4041685725000265e-02 -2.4956350669900162e-02 2.7904010910612693e-02
|
||||
19 5.7049372682756931e-04 1.6554736417528457e-05 9.4341990684141492e-04
|
||||
20 -7.8849148841722897e-04 -8.4994368910122327e-04 9.4566031895818034e-05
|
||||
21 -7.0490744649332854e+01 -7.9749153638697052e+01 2.2171003329264727e+02
|
||||
22 -1.0638714881331208e+02 -2.5949537046722948e+01 -1.6645593048575904e+02
|
||||
23 1.7686801069212282e+02 1.0571016567965997e+02 -5.5243360803916154e+01
|
||||
24 3.8206094080913594e+01 -2.1022820935692107e+02 1.1260716750436217e+02
|
||||
25 -1.4918646093941553e+02 2.3763610305920544e+01 -1.2548765023777884e+02
|
||||
26 1.1097085296101896e+02 1.8645520999549970e+02 1.2861892631557549e+01
|
||||
27 5.0800842221321886e+01 -2.2296588391583720e+02 8.8607366497542188e+01
|
||||
28 -1.7694198089845398e+02 7.6029863930484495e+01 -1.1950513646089449e+02
|
||||
29 1.2614880669418112e+02 1.4694230208476219e+02 3.0893567658970003e+01
|
||||
...
|
||||
@ -2,7 +2,6 @@
|
||||
lammps_version: 10 Feb 2021
|
||||
date_generated: Fri Feb 26 23:08:45 2021
|
||||
epsilon: 7e-14
|
||||
skip_tests: gpu
|
||||
prerequisites: ! |
|
||||
atom full
|
||||
pair lj/charmm/coul/charmm
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
---
|
||||
lammps_version: 10 Feb 2021
|
||||
date_generated: Fri Feb 26 23:08:56 2021
|
||||
lammps_version: 8 Apr 2021
|
||||
date_generated: Mon Apr 19 08:49:08 2021
|
||||
epsilon: 5e-14
|
||||
prerequisites: ! |
|
||||
atom full
|
||||
@ -15,8 +15,8 @@ pair_coeff: ! |
|
||||
* * python py_pot.LJCutFourMol 1 2 3 4 5
|
||||
extract: ! ""
|
||||
natoms: 29
|
||||
init_vdwl: 769.435514792906
|
||||
init_coul: -127.494586297384
|
||||
init_vdwl: 769.4355147929056
|
||||
init_coul: -127.49458629738443
|
||||
init_stress: ! |2-
|
||||
2.2678521911648518e+03 2.2247029630324569e+03 4.6668446509523028e+03 -7.1863043563709800e+02 6.6980305204573611e+01 6.6425623166019000e+02
|
||||
init_forces: ! |2
|
||||
@ -49,8 +49,8 @@ init_forces: ! |2
|
||||
27 5.8858131514524516e+01 -2.5934658519982310e+02 1.0378659589349859e+02
|
||||
28 -2.1004851662389484e+02 8.7061736878465183e+01 -1.4131944246679177e+02
|
||||
29 1.5193395589309270e+02 1.7194075642255194e+02 3.8106025733269696e+01
|
||||
run_vdwl: 738.975921529802
|
||||
run_coul: -127.388878149465
|
||||
run_vdwl: 738.9759215298017
|
||||
run_coul: -127.38887814946516
|
||||
run_stress: ! |2-
|
||||
2.2173727908784563e+03 2.1780484935540412e+03 4.3978310588967724e+03 -6.9936430337437957e+02 8.2321786589523725e+01 6.2596079360064653e+02
|
||||
run_forces: ! |2
|
||||
|
||||
@ -48,7 +48,7 @@
|
||||
|
||||
using LAMMPS_NS::utils::split_words;
|
||||
|
||||
static void create_molecule_files()
|
||||
static void create_molecule_files(const std::string & h2o_filename, const std::string & co2_filename)
|
||||
{
|
||||
// create molecule files
|
||||
const char h2o_file[] = "# Water molecule. SPC/E model.\n\n3 atoms\n2 bonds\n1 angles\n\n"
|
||||
@ -73,18 +73,16 @@ static void create_molecule_files()
|
||||
"Special Bond Counts\n\n1 2 0 0\n2 1 1 0\n3 1 1 0\n\n"
|
||||
"Special Bonds\n\n1 2 3\n2 1 3\n3 1 2\n\n";
|
||||
|
||||
FILE *fp = fopen("tmp.h2o.mol", "w");
|
||||
FILE *fp = fopen(h2o_filename.c_str(), "w");
|
||||
if (fp) {
|
||||
fputs(h2o_file, fp);
|
||||
fclose(fp);
|
||||
}
|
||||
rename("tmp.h2o.mol", "h2o.mol");
|
||||
fp = fopen("tmp.co2.mol", "w");
|
||||
fp = fopen(co2_filename.c_str(), "w");
|
||||
if (fp) {
|
||||
fputs(co2_file, fp);
|
||||
fclose(fp);
|
||||
}
|
||||
rename("tmp.co2.mol", "co2.mol");
|
||||
}
|
||||
|
||||
// whether to print verbose output (i.e. not capturing LAMMPS screen output).
|
||||
@ -97,6 +95,15 @@ using ::testing::Eq;
|
||||
|
||||
class AtomStyleTest : public LAMMPSTest {
|
||||
protected:
|
||||
static void SetUpTestSuite() {
|
||||
create_molecule_files("h2o.mol", "co2.mol");
|
||||
}
|
||||
|
||||
static void TearDownTestSuite() {
|
||||
remove("h2o.mol");
|
||||
remove("co2.mol");
|
||||
}
|
||||
|
||||
void SetUp() override
|
||||
{
|
||||
testbinary = "AtomStyleTest";
|
||||
@ -2618,7 +2625,6 @@ TEST_F(AtomStyleTest, body_nparticle)
|
||||
TEST_F(AtomStyleTest, template)
|
||||
{
|
||||
if (!LAMMPS::is_installed_pkg("MOLECULE")) GTEST_SKIP();
|
||||
create_molecule_files();
|
||||
BEGIN_HIDE_OUTPUT();
|
||||
command("molecule twomols h2o.mol co2.mol offset 2 1 1 0 0");
|
||||
command("atom_style template twomols");
|
||||
@ -3014,7 +3020,6 @@ TEST_F(AtomStyleTest, template)
|
||||
TEST_F(AtomStyleTest, template_charge)
|
||||
{
|
||||
if (!LAMMPS::is_installed_pkg("MOLECULE")) GTEST_SKIP();
|
||||
create_molecule_files();
|
||||
BEGIN_HIDE_OUTPUT();
|
||||
command("molecule twomols h2o.mol co2.mol offset 2 1 1 0 0");
|
||||
command("atom_style hybrid template twomols charge");
|
||||
|
||||
@ -35,7 +35,7 @@ using utils::split_words;
|
||||
#define test_name test_info_->name()
|
||||
|
||||
|
||||
static void create_molecule_files()
|
||||
static void create_molecule_files(const std::string & h2o_filename, const std::string & co2_filename)
|
||||
{
|
||||
// create molecule files
|
||||
const char h2o_file[] = "# Water molecule. SPC/E model.\n\n3 atoms\n2 bonds\n1 angles\n\n"
|
||||
@ -60,18 +60,16 @@ static void create_molecule_files()
|
||||
"Special Bond Counts\n\n1 2 0 0\n2 1 1 0\n3 1 1 0\n\n"
|
||||
"Special Bonds\n\n1 2 3\n2 1 3\n3 1 2\n\n";
|
||||
|
||||
FILE *fp = fopen("tmp.h2o.mol", "w");
|
||||
FILE *fp = fopen(h2o_filename.c_str(), "w");
|
||||
if (fp) {
|
||||
fputs(h2o_file, fp);
|
||||
fclose(fp);
|
||||
}
|
||||
rename("tmp.h2o.mol", "h2o.mol");
|
||||
fp = fopen("tmp.co2.mol", "w");
|
||||
fp = fopen(co2_filename.c_str(), "w");
|
||||
if (fp) {
|
||||
fputs(co2_file, fp);
|
||||
fclose(fp);
|
||||
}
|
||||
rename("tmp.co2.mol", "co2.mol");
|
||||
}
|
||||
|
||||
// whether to print verbose output (i.e. not capturing LAMMPS screen output).
|
||||
@ -79,26 +77,30 @@ bool verbose = false;
|
||||
|
||||
class MoleculeFileTest : public LAMMPSTest {
|
||||
protected:
|
||||
static void SetUpTestSuite() {
|
||||
create_molecule_files("moltest.h2o.mol", "moltest.co2.mol");
|
||||
}
|
||||
|
||||
static void TearDownTestSuite() {
|
||||
remove("moltest.h2o.mol");
|
||||
remove("moltest.co2.mol");
|
||||
}
|
||||
|
||||
void SetUp() override
|
||||
{
|
||||
testbinary = "MoleculeFileTest";
|
||||
LAMMPSTest::SetUp();
|
||||
ASSERT_NE(lmp, nullptr);
|
||||
BEGIN_HIDE_OUTPUT();
|
||||
create_molecule_files();
|
||||
END_HIDE_OUTPUT();
|
||||
}
|
||||
|
||||
void TearDown() override
|
||||
{
|
||||
LAMMPSTest::TearDown();
|
||||
remove("h2o.mol");
|
||||
remove("co2.mol");
|
||||
}
|
||||
|
||||
void run_mol_cmd(const std::string &name, const std::string &args, const std::string &content)
|
||||
{
|
||||
std::string file = name + ".mol";
|
||||
std::string file = fmt::format("moltest_{}.mol", name);
|
||||
FILE *fp = fopen(file.c_str(), "w");
|
||||
fputs(content.c_str(), fp);
|
||||
fclose(fp);
|
||||
@ -195,7 +197,7 @@ TEST_F(MoleculeFileTest, twomols)
|
||||
TEST_F(MoleculeFileTest, twofiles)
|
||||
{
|
||||
BEGIN_CAPTURE_OUTPUT();
|
||||
command("molecule twomols h2o.mol co2.mol offset 2 1 1 0 0");
|
||||
command("molecule twomols moltest.h2o.mol moltest.co2.mol offset 2 1 1 0 0");
|
||||
auto output = END_CAPTURE_OUTPUT();
|
||||
ASSERT_THAT(output, MatchesRegex(".*Read molecule template twomols:.*1 molecules.*3 atoms "
|
||||
"with max type 2.*2 bonds with max type 1.*"
|
||||
|
||||
@ -42,6 +42,9 @@ using ::testing::MatchesRegex;
|
||||
auto mesg = ::testing::internal::GetCapturedStdout(); \
|
||||
ASSERT_THAT(mesg, MatchesRegex(errmsg)); \
|
||||
} \
|
||||
else { \
|
||||
std::cerr << "[ ] [ INFO ] Skipping death test (no exception support) \n"; \
|
||||
} \
|
||||
}
|
||||
|
||||
// whether to print verbose output (i.e. not capturing LAMMPS screen output).
|
||||
|
||||
Reference in New Issue
Block a user