changed file names and added a lj12-5 function type in OPENMP pkg.
This commit is contained in:
@ -17,32 +17,32 @@
|
|||||||
------------------------------------------------------------------------- */
|
------------------------------------------------------------------------- */
|
||||||
|
|
||||||
#include "omp_compat.h"
|
#include "omp_compat.h"
|
||||||
#include "angle_sdk_omp.h"
|
#include "angle_spica_omp.h"
|
||||||
#include <cmath>
|
#include <cmath>
|
||||||
#include "atom.h"
|
#include "atom.h"
|
||||||
#include "neighbor.h"
|
#include "neighbor.h"
|
||||||
|
|
||||||
#include "comm.h"
|
#include "comm.h"
|
||||||
#include "force.h"
|
#include "force.h"
|
||||||
#include "lj_sdk_common.h"
|
#include "lj_spica_common.h"
|
||||||
|
|
||||||
#include "suffix.h"
|
#include "suffix.h"
|
||||||
using namespace LAMMPS_NS;
|
using namespace LAMMPS_NS;
|
||||||
using namespace LJSDKParms;
|
using namespace LJSPICAParms;
|
||||||
|
|
||||||
#define SMALL 0.001
|
#define SMALL 0.001
|
||||||
|
|
||||||
/* ---------------------------------------------------------------------- */
|
/* ---------------------------------------------------------------------- */
|
||||||
|
|
||||||
AngleSDKOMP::AngleSDKOMP(class LAMMPS *lmp)
|
AngleSPICAOMP::AngleSPICAOMP(class LAMMPS *lmp)
|
||||||
: AngleSDK(lmp), ThrOMP(lmp,THR_ANGLE)
|
: AngleSPICA(lmp), ThrOMP(lmp,THR_ANGLE)
|
||||||
{
|
{
|
||||||
suffix_flag |= Suffix::OMP;
|
suffix_flag |= Suffix::OMP;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ---------------------------------------------------------------------- */
|
/* ---------------------------------------------------------------------- */
|
||||||
|
|
||||||
void AngleSDKOMP::compute(int eflag, int vflag)
|
void AngleSPICAOMP::compute(int eflag, int vflag)
|
||||||
{
|
{
|
||||||
ev_init(eflag,vflag);
|
ev_init(eflag,vflag);
|
||||||
|
|
||||||
@ -81,7 +81,7 @@ void AngleSDKOMP::compute(int eflag, int vflag)
|
|||||||
}
|
}
|
||||||
|
|
||||||
template <int EVFLAG, int EFLAG, int NEWTON_BOND>
|
template <int EVFLAG, int EFLAG, int NEWTON_BOND>
|
||||||
void AngleSDKOMP::eval(int nfrom, int nto, ThrData * const thr)
|
void AngleSPICAOMP::eval(int nfrom, int nto, ThrData * const thr)
|
||||||
{
|
{
|
||||||
int i1,i2,i3,n,type;
|
int i1,i2,i3,n,type;
|
||||||
double delx1,dely1,delz1,delx2,dely2,delz2,delx3,dely3,delz3;
|
double delx1,dely1,delz1,delx2,dely2,delz2,delx3,dely3,delz3;
|
||||||
@ -171,6 +171,13 @@ void AngleSDKOMP::eval(int nfrom, int nto, ThrData * const thr)
|
|||||||
|
|
||||||
f13 = r6inv*(lj1[type1][type3]*r6inv - lj2[type1][type3]);
|
f13 = r6inv*(lj1[type1][type3]*r6inv - lj2[type1][type3]);
|
||||||
if (EFLAG) e13 = r6inv*(lj3[type1][type3]*r6inv - lj4[type1][type3]);
|
if (EFLAG) e13 = r6inv*(lj3[type1][type3]*r6inv - lj4[type1][type3]);
|
||||||
|
|
||||||
|
} else if (ljt == LJ12_5) {
|
||||||
|
const double r5inv = r2inv*r2inv*sqrt(r2inv);
|
||||||
|
const double r7inv = r5inv*r2inv;
|
||||||
|
|
||||||
|
f13 = r5inv*(lj1[type1][type3]*r7inv - lj2[type1][type3]);
|
||||||
|
if (EFLAG) e13 = r5inv*(lj3[type1][type3]*r7inv - lj4[type1][type3]);
|
||||||
}
|
}
|
||||||
|
|
||||||
// make sure energy is 0.0 at the cutoff.
|
// make sure energy is 0.0 at the cutoff.
|
||||||
@ -17,22 +17,23 @@
|
|||||||
|
|
||||||
#ifdef ANGLE_CLASS
|
#ifdef ANGLE_CLASS
|
||||||
// clang-format off
|
// clang-format off
|
||||||
AngleStyle(sdk/omp,AngleSDKOMP);
|
AngleStyle(spica/omp,AngleSPICAOMP);
|
||||||
|
AngleStyle(sdk/omp,AngleSPICAOMP);
|
||||||
// clang-format on
|
// clang-format on
|
||||||
#else
|
#else
|
||||||
|
|
||||||
#ifndef LMP_ANGLE_SDK_OMP_H
|
#ifndef LMP_ANGLE_SPICA_OMP_H
|
||||||
#define LMP_ANGLE_SDK_OMP_H
|
#define LMP_ANGLE_SPICA_OMP_H
|
||||||
|
|
||||||
#include "angle_sdk.h"
|
#include "angle_spica.h"
|
||||||
#include "thr_omp.h"
|
#include "thr_omp.h"
|
||||||
|
|
||||||
namespace LAMMPS_NS {
|
namespace LAMMPS_NS {
|
||||||
|
|
||||||
class AngleSDKOMP : public AngleSDK, public ThrOMP {
|
class AngleSPICAOMP : public AngleSPICA, public ThrOMP {
|
||||||
|
|
||||||
public:
|
public:
|
||||||
AngleSDKOMP(class LAMMPS *lmp);
|
AngleSPICAOMP(class LAMMPS *lmp);
|
||||||
void compute(int, int) override;
|
void compute(int, int) override;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
@ -13,8 +13,8 @@
|
|||||||
Contributing author: Axel Kohlmeyer (Temple U)
|
Contributing author: Axel Kohlmeyer (Temple U)
|
||||||
------------------------------------------------------------------------- */
|
------------------------------------------------------------------------- */
|
||||||
|
|
||||||
#include "pair_lj_sdk_coul_long_omp.h"
|
#include "pair_lj_spica_coul_long_omp.h"
|
||||||
#include "lj_sdk_common.h"
|
#include "lj_spica_common.h"
|
||||||
|
|
||||||
#include "atom.h"
|
#include "atom.h"
|
||||||
#include "comm.h"
|
#include "comm.h"
|
||||||
@ -26,11 +26,11 @@
|
|||||||
|
|
||||||
#include "omp_compat.h"
|
#include "omp_compat.h"
|
||||||
using namespace LAMMPS_NS;
|
using namespace LAMMPS_NS;
|
||||||
using namespace LJSDKParms;
|
using namespace LJSPICAParms;
|
||||||
/* ---------------------------------------------------------------------- */
|
/* ---------------------------------------------------------------------- */
|
||||||
|
|
||||||
PairLJSDKCoulLongOMP::PairLJSDKCoulLongOMP(LAMMPS *lmp) :
|
PairLJSPICACoulLongOMP::PairLJSPICACoulLongOMP(LAMMPS *lmp) :
|
||||||
PairLJSDKCoulLong(lmp), ThrOMP(lmp, THR_PAIR)
|
PairLJSPICACoulLong(lmp), ThrOMP(lmp, THR_PAIR)
|
||||||
{
|
{
|
||||||
suffix_flag |= Suffix::OMP;
|
suffix_flag |= Suffix::OMP;
|
||||||
respa_enable = 0;
|
respa_enable = 0;
|
||||||
@ -38,7 +38,7 @@ PairLJSDKCoulLongOMP::PairLJSDKCoulLongOMP(LAMMPS *lmp) :
|
|||||||
|
|
||||||
/* ---------------------------------------------------------------------- */
|
/* ---------------------------------------------------------------------- */
|
||||||
|
|
||||||
void PairLJSDKCoulLongOMP::compute(int eflag, int vflag)
|
void PairLJSPICACoulLongOMP::compute(int eflag, int vflag)
|
||||||
{
|
{
|
||||||
ev_init(eflag,vflag);
|
ev_init(eflag,vflag);
|
||||||
|
|
||||||
@ -78,7 +78,7 @@ void PairLJSDKCoulLongOMP::compute(int eflag, int vflag)
|
|||||||
/* ---------------------------------------------------------------------- */
|
/* ---------------------------------------------------------------------- */
|
||||||
|
|
||||||
template <int EVFLAG, int EFLAG, int NEWTON_PAIR>
|
template <int EVFLAG, int EFLAG, int NEWTON_PAIR>
|
||||||
void PairLJSDKCoulLongOMP::eval_thr(int iifrom, int iito, ThrData * const thr)
|
void PairLJSPICACoulLongOMP::eval_thr(int iifrom, int iito, ThrData * const thr)
|
||||||
{
|
{
|
||||||
|
|
||||||
const auto * _noalias const x = (dbl3_t *) atom->x[0];
|
const auto * _noalias const x = (dbl3_t *) atom->x[0];
|
||||||
@ -195,6 +195,15 @@ void PairLJSDKCoulLongOMP::eval_thr(int iifrom, int iito, ThrData * const thr)
|
|||||||
if (EFLAG)
|
if (EFLAG)
|
||||||
evdwl = r6inv*(lj3[itype][jtype]*r6inv
|
evdwl = r6inv*(lj3[itype][jtype]*r6inv
|
||||||
- lj4[itype][jtype]) - offset[itype][jtype];
|
- lj4[itype][jtype]) - offset[itype][jtype];
|
||||||
|
|
||||||
|
} else if (ljt == LJ12_5) {
|
||||||
|
const double r5inv = r2inv*r2inv*sqrt(r2inv);
|
||||||
|
const double r7inv = r5inv*r2inv;
|
||||||
|
forcelj = r5inv*(lj1[itype][jtype]*r7inv
|
||||||
|
- lj2[itype][jtype]);
|
||||||
|
if (EFLAG)
|
||||||
|
evdwl = r5inv*(lj3[itype][jtype]*r7inv
|
||||||
|
- lj4[itype][jtype]) - offset[itype][jtype];
|
||||||
}
|
}
|
||||||
|
|
||||||
if (sbindex) {
|
if (sbindex) {
|
||||||
@ -228,10 +237,10 @@ void PairLJSDKCoulLongOMP::eval_thr(int iifrom, int iito, ThrData * const thr)
|
|||||||
|
|
||||||
/* ---------------------------------------------------------------------- */
|
/* ---------------------------------------------------------------------- */
|
||||||
|
|
||||||
double PairLJSDKCoulLongOMP::memory_usage()
|
double PairLJSPICACoulLongOMP::memory_usage()
|
||||||
{
|
{
|
||||||
double bytes = memory_usage_thr();
|
double bytes = memory_usage_thr();
|
||||||
bytes += PairLJSDKCoulLong::memory_usage();
|
bytes += PairLJSPICACoulLong::memory_usage();
|
||||||
|
|
||||||
return bytes;
|
return bytes;
|
||||||
}
|
}
|
||||||
@ -17,22 +17,23 @@
|
|||||||
|
|
||||||
#ifdef PAIR_CLASS
|
#ifdef PAIR_CLASS
|
||||||
// clang-format off
|
// clang-format off
|
||||||
PairStyle(lj/sdk/coul/long/omp,PairLJSDKCoulLongOMP);
|
PairStyle(lj/spica/coul/long/omp,PairLJSPICACoulLongOMP);
|
||||||
|
PairStyle(lj/sdk/coul/long/omp,PairLJSPICACoulLongOMP);
|
||||||
// clang-format on
|
// clang-format on
|
||||||
#else
|
#else
|
||||||
|
|
||||||
#ifndef LMP_PAIR_LJ_SDK_COUL_LONG_OMP_H
|
#ifndef LMP_PAIR_LJ_SPICA_COUL_LONG_OMP_H
|
||||||
#define LMP_PAIR_LJ_SDK_COUL_LONG_OMP_H
|
#define LMP_PAIR_LJ_SPICA_COUL_LONG_OMP_H
|
||||||
|
|
||||||
#include "pair_lj_sdk_coul_long.h"
|
#include "pair_lj_spica_coul_long.h"
|
||||||
#include "thr_omp.h"
|
#include "thr_omp.h"
|
||||||
|
|
||||||
namespace LAMMPS_NS {
|
namespace LAMMPS_NS {
|
||||||
|
|
||||||
class PairLJSDKCoulLongOMP : public PairLJSDKCoulLong, public ThrOMP {
|
class PairLJSPICACoulLongOMP : public PairLJSPICACoulLong, public ThrOMP {
|
||||||
|
|
||||||
public:
|
public:
|
||||||
PairLJSDKCoulLongOMP(class LAMMPS *);
|
PairLJSPICACoulLongOMP(class LAMMPS *);
|
||||||
|
|
||||||
void compute(int, int) override;
|
void compute(int, int) override;
|
||||||
double memory_usage() override;
|
double memory_usage() override;
|
||||||
@ -14,8 +14,8 @@
|
|||||||
This style is a simplified re-implementation of the CG/CMM pair style
|
This style is a simplified re-implementation of the CG/CMM pair style
|
||||||
------------------------------------------------------------------------- */
|
------------------------------------------------------------------------- */
|
||||||
|
|
||||||
#include "pair_lj_sdk_coul_msm_omp.h"
|
#include "pair_lj_spica_coul_msm_omp.h"
|
||||||
#include "lj_sdk_common.h"
|
#include "lj_spica_common.h"
|
||||||
|
|
||||||
#include "atom.h"
|
#include "atom.h"
|
||||||
#include "comm.h"
|
#include "comm.h"
|
||||||
@ -29,11 +29,11 @@
|
|||||||
|
|
||||||
#include "omp_compat.h"
|
#include "omp_compat.h"
|
||||||
using namespace LAMMPS_NS;
|
using namespace LAMMPS_NS;
|
||||||
using namespace LJSDKParms;
|
using namespace LJSPICAParms;
|
||||||
/* ---------------------------------------------------------------------- */
|
/* ---------------------------------------------------------------------- */
|
||||||
|
|
||||||
PairLJSDKCoulMSMOMP::PairLJSDKCoulMSMOMP(LAMMPS *lmp) :
|
PairLJSPICACoulMSMOMP::PairLJSPICACoulMSMOMP(LAMMPS *lmp) :
|
||||||
PairLJSDKCoulMSM(lmp), ThrOMP(lmp, THR_PAIR)
|
PairLJSPICACoulMSM(lmp), ThrOMP(lmp, THR_PAIR)
|
||||||
{
|
{
|
||||||
suffix_flag |= Suffix::OMP;
|
suffix_flag |= Suffix::OMP;
|
||||||
respa_enable = 0;
|
respa_enable = 0;
|
||||||
@ -41,7 +41,7 @@ PairLJSDKCoulMSMOMP::PairLJSDKCoulMSMOMP(LAMMPS *lmp) :
|
|||||||
|
|
||||||
/* ---------------------------------------------------------------------- */
|
/* ---------------------------------------------------------------------- */
|
||||||
|
|
||||||
void PairLJSDKCoulMSMOMP::compute(int eflag, int vflag)
|
void PairLJSPICACoulMSMOMP::compute(int eflag, int vflag)
|
||||||
{
|
{
|
||||||
if (force->kspace->scalar_pressure_flag)
|
if (force->kspace->scalar_pressure_flag)
|
||||||
error->all(FLERR,"Must use 'kspace_modify pressure/scalar no' "
|
error->all(FLERR,"Must use 'kspace_modify pressure/scalar no' "
|
||||||
@ -85,7 +85,7 @@ void PairLJSDKCoulMSMOMP::compute(int eflag, int vflag)
|
|||||||
/* ---------------------------------------------------------------------- */
|
/* ---------------------------------------------------------------------- */
|
||||||
|
|
||||||
template <int EVFLAG, int EFLAG, int NEWTON_PAIR>
|
template <int EVFLAG, int EFLAG, int NEWTON_PAIR>
|
||||||
void PairLJSDKCoulMSMOMP::eval_msm_thr(int iifrom, int iito, ThrData * const thr)
|
void PairLJSPICACoulMSMOMP::eval_msm_thr(int iifrom, int iito, ThrData * const thr)
|
||||||
{
|
{
|
||||||
|
|
||||||
const double * const * const x = atom->x;
|
const double * const * const x = atom->x;
|
||||||
@ -194,6 +194,15 @@ void PairLJSDKCoulMSMOMP::eval_msm_thr(int iifrom, int iito, ThrData * const thr
|
|||||||
if (EFLAG)
|
if (EFLAG)
|
||||||
evdwl = r6inv*(lj3[itype][jtype]*r6inv
|
evdwl = r6inv*(lj3[itype][jtype]*r6inv
|
||||||
- lj4[itype][jtype]) - offset[itype][jtype];
|
- lj4[itype][jtype]) - offset[itype][jtype];
|
||||||
|
|
||||||
|
} else if (ljt == LJ12_5) {
|
||||||
|
const double r5inv = r2inv*r2inv*sqrt(r2inv);
|
||||||
|
const double r7inv = r5inv*r2inv;
|
||||||
|
forcelj = r5inv*(lj1[itype][jtype]*r7inv
|
||||||
|
- lj2[itype][jtype]);
|
||||||
|
if (EFLAG)
|
||||||
|
evdwl = r5inv*(lj3[itype][jtype]*r7inv
|
||||||
|
- lj4[itype][jtype]) - offset[itype][jtype];
|
||||||
}
|
}
|
||||||
|
|
||||||
if (sbindex) {
|
if (sbindex) {
|
||||||
@ -227,10 +236,10 @@ void PairLJSDKCoulMSMOMP::eval_msm_thr(int iifrom, int iito, ThrData * const thr
|
|||||||
|
|
||||||
/* ---------------------------------------------------------------------- */
|
/* ---------------------------------------------------------------------- */
|
||||||
|
|
||||||
double PairLJSDKCoulMSMOMP::memory_usage()
|
double PairLJSPICACoulMSMOMP::memory_usage()
|
||||||
{
|
{
|
||||||
double bytes = memory_usage_thr();
|
double bytes = memory_usage_thr();
|
||||||
bytes += PairLJSDKCoulMSM::memory_usage();
|
bytes += PairLJSPICACoulMSM::memory_usage();
|
||||||
|
|
||||||
return bytes;
|
return bytes;
|
||||||
}
|
}
|
||||||
@ -17,22 +17,23 @@
|
|||||||
|
|
||||||
#ifdef PAIR_CLASS
|
#ifdef PAIR_CLASS
|
||||||
// clang-format off
|
// clang-format off
|
||||||
PairStyle(lj/sdk/coul/msm/omp,PairLJSDKCoulMSMOMP);
|
PairStyle(lj/spica/coul/msm/omp,PairLJSPICACoulMSMOMP);
|
||||||
|
PairStyle(lj/sdk/coul/msm/omp,PairLJSPICACoulMSMOMP);
|
||||||
// clang-format on
|
// clang-format on
|
||||||
#else
|
#else
|
||||||
|
|
||||||
#ifndef LMP_PAIR_LJ_SDK_COUL_MSM_OMP_H
|
#ifndef LMP_PAIR_LJ_SPICA_COUL_MSM_OMP_H
|
||||||
#define LMP_PAIR_LJ_SDK_COUL_MSM_OMP_H
|
#define LMP_PAIR_LJ_SPICA_COUL_MSM_OMP_H
|
||||||
|
|
||||||
#include "pair_lj_sdk_coul_msm.h"
|
#include "pair_lj_spica_coul_msm.h"
|
||||||
#include "thr_omp.h"
|
#include "thr_omp.h"
|
||||||
|
|
||||||
namespace LAMMPS_NS {
|
namespace LAMMPS_NS {
|
||||||
|
|
||||||
class PairLJSDKCoulMSMOMP : public PairLJSDKCoulMSM, public ThrOMP {
|
class PairLJSPICACoulMSMOMP : public PairLJSPICACoulMSM, public ThrOMP {
|
||||||
|
|
||||||
public:
|
public:
|
||||||
PairLJSDKCoulMSMOMP(class LAMMPS *);
|
PairLJSPICACoulMSMOMP(class LAMMPS *);
|
||||||
|
|
||||||
void compute(int, int) override;
|
void compute(int, int) override;
|
||||||
double memory_usage() override;
|
double memory_usage() override;
|
||||||
@ -14,8 +14,8 @@
|
|||||||
This style is a simplified re-implementation of the CG/CMM pair style
|
This style is a simplified re-implementation of the CG/CMM pair style
|
||||||
------------------------------------------------------------------------- */
|
------------------------------------------------------------------------- */
|
||||||
|
|
||||||
#include "pair_lj_sdk_omp.h"
|
#include "pair_lj_spica_omp.h"
|
||||||
#include "lj_sdk_common.h"
|
#include "lj_spica_common.h"
|
||||||
|
|
||||||
#include "atom.h"
|
#include "atom.h"
|
||||||
#include "comm.h"
|
#include "comm.h"
|
||||||
@ -27,12 +27,12 @@
|
|||||||
|
|
||||||
#include "omp_compat.h"
|
#include "omp_compat.h"
|
||||||
using namespace LAMMPS_NS;
|
using namespace LAMMPS_NS;
|
||||||
using namespace LJSDKParms;
|
using namespace LJSPICAParms;
|
||||||
|
|
||||||
/* ---------------------------------------------------------------------- */
|
/* ---------------------------------------------------------------------- */
|
||||||
|
|
||||||
PairLJSDKOMP::PairLJSDKOMP(LAMMPS *lmp) :
|
PairLJSPICAOMP::PairLJSPICAOMP(LAMMPS *lmp) :
|
||||||
PairLJSDK(lmp), ThrOMP(lmp, THR_PAIR)
|
PairLJSPICA(lmp), ThrOMP(lmp, THR_PAIR)
|
||||||
{
|
{
|
||||||
suffix_flag |= Suffix::OMP;
|
suffix_flag |= Suffix::OMP;
|
||||||
respa_enable = 0;
|
respa_enable = 0;
|
||||||
@ -40,7 +40,7 @@ PairLJSDKOMP::PairLJSDKOMP(LAMMPS *lmp) :
|
|||||||
|
|
||||||
/* ---------------------------------------------------------------------- */
|
/* ---------------------------------------------------------------------- */
|
||||||
|
|
||||||
void PairLJSDKOMP::compute(int eflag, int vflag)
|
void PairLJSPICAOMP::compute(int eflag, int vflag)
|
||||||
{
|
{
|
||||||
ev_init(eflag,vflag);
|
ev_init(eflag,vflag);
|
||||||
|
|
||||||
@ -80,7 +80,7 @@ void PairLJSDKOMP::compute(int eflag, int vflag)
|
|||||||
/* ---------------------------------------------------------------------- */
|
/* ---------------------------------------------------------------------- */
|
||||||
|
|
||||||
template <int EVFLAG, int EFLAG, int NEWTON_PAIR>
|
template <int EVFLAG, int EFLAG, int NEWTON_PAIR>
|
||||||
void PairLJSDKOMP::eval_thr(int iifrom, int iito, ThrData * const thr)
|
void PairLJSPICAOMP::eval_thr(int iifrom, int iito, ThrData * const thr)
|
||||||
{
|
{
|
||||||
int i,j,ii,jj,jtype;
|
int i,j,ii,jj,jtype;
|
||||||
double xtmp,ytmp,ztmp,delx,dely,delz,evdwl,fpair;
|
double xtmp,ytmp,ztmp,delx,dely,delz,evdwl,fpair;
|
||||||
@ -153,6 +153,15 @@ void PairLJSDKOMP::eval_thr(int iifrom, int iito, ThrData * const thr)
|
|||||||
if (EFLAG)
|
if (EFLAG)
|
||||||
evdwl = r6inv*(lj3[itype][jtype]*r6inv
|
evdwl = r6inv*(lj3[itype][jtype]*r6inv
|
||||||
- lj4[itype][jtype]) - offset[itype][jtype];
|
- lj4[itype][jtype]) - offset[itype][jtype];
|
||||||
|
|
||||||
|
} else if (ljt == LJ12_5) {
|
||||||
|
const double r5inv = r2inv*r2inv*sqrt(r2inv);
|
||||||
|
const double r7inv = r5inv*r2inv;
|
||||||
|
forcelj = r5inv*(lj1[itype][jtype]*r7inv
|
||||||
|
- lj2[itype][jtype]);
|
||||||
|
if (EFLAG)
|
||||||
|
evdwl = r5inv*(lj3[itype][jtype]*r7inv
|
||||||
|
- lj4[itype][jtype]) - offset[itype][jtype];
|
||||||
} else continue;
|
} else continue;
|
||||||
|
|
||||||
fpair = factor_lj*forcelj*r2inv;
|
fpair = factor_lj*forcelj*r2inv;
|
||||||
@ -179,10 +188,10 @@ void PairLJSDKOMP::eval_thr(int iifrom, int iito, ThrData * const thr)
|
|||||||
|
|
||||||
/* ---------------------------------------------------------------------- */
|
/* ---------------------------------------------------------------------- */
|
||||||
|
|
||||||
double PairLJSDKOMP::memory_usage()
|
double PairLJSPICAOMP::memory_usage()
|
||||||
{
|
{
|
||||||
double bytes = memory_usage_thr();
|
double bytes = memory_usage_thr();
|
||||||
bytes += PairLJSDK::memory_usage();
|
bytes += PairLJSPICA::memory_usage();
|
||||||
|
|
||||||
return bytes;
|
return bytes;
|
||||||
}
|
}
|
||||||
@ -17,22 +17,23 @@
|
|||||||
|
|
||||||
#ifdef PAIR_CLASS
|
#ifdef PAIR_CLASS
|
||||||
// clang-format off
|
// clang-format off
|
||||||
PairStyle(lj/sdk/omp,PairLJSDKOMP);
|
PairStyle(lj/spica/omp,PairLJSPICAOMP);
|
||||||
|
PairStyle(lj/sdk/omp,PairLJSPICAOMP);
|
||||||
// clang-format on
|
// clang-format on
|
||||||
#else
|
#else
|
||||||
|
|
||||||
#ifndef LMP_PAIR_LJ_SDK_OMP_H
|
#ifndef LMP_PAIR_LJ_SPICA_OMP_H
|
||||||
#define LMP_PAIR_LJ_SDK_OMP_H
|
#define LMP_PAIR_LJ_SPICA_OMP_H
|
||||||
|
|
||||||
#include "pair_lj_sdk.h"
|
#include "pair_lj_spica.h"
|
||||||
#include "thr_omp.h"
|
#include "thr_omp.h"
|
||||||
|
|
||||||
namespace LAMMPS_NS {
|
namespace LAMMPS_NS {
|
||||||
|
|
||||||
class PairLJSDKOMP : public PairLJSDK, public ThrOMP {
|
class PairLJSPICAOMP : public PairLJSPICA, public ThrOMP {
|
||||||
|
|
||||||
public:
|
public:
|
||||||
PairLJSDKOMP(class LAMMPS *);
|
PairLJSPICAOMP(class LAMMPS *);
|
||||||
|
|
||||||
void compute(int, int) override;
|
void compute(int, int) override;
|
||||||
double memory_usage() override;
|
double memory_usage() override;
|
||||||
@ -1042,7 +1042,7 @@ void ThrOMP::ev_tally_thr(Angle * const angle, const int i, const int j, const i
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* ----------------------------------------------------------------------
|
/* ----------------------------------------------------------------------
|
||||||
tally energy and virial from 1-3 repulsion of SDK angle into accumulators
|
tally energy and virial from 1-3 repulsion of SPICA angle into accumulators
|
||||||
------------------------------------------------------------------------- */
|
------------------------------------------------------------------------- */
|
||||||
|
|
||||||
void ThrOMP::ev_tally13_thr(Angle * const angle, const int i1, const int i3,
|
void ThrOMP::ev_tally13_thr(Angle * const angle, const int i1, const int i3,
|
||||||
|
|||||||
Reference in New Issue
Block a user