Merge pull request #4190 from alphataubio/kokkos-unit-testing
Improve Kokkos unit testing
This commit is contained in:
@ -23,7 +23,7 @@ KOKKOS_DEVICES ?= "OpenMP"
|
||||
# NVIDIA: Kepler,Kepler30,Kepler32,Kepler35,Kepler37,Maxwell,Maxwell50,Maxwell52,Maxwell53,Pascal60,Pascal61,Volta70,Volta72,Turing75,Ampere80,Ampere86,Ada89,Hopper90
|
||||
# ARM: ARMv80,ARMv81,ARMv8-ThunderX,ARMv8-TX2,A64FX,ARMv9-Grace
|
||||
# IBM: Power8,Power9
|
||||
# AMD-GPUS: AMD_GFX906,AMD_GFX908,AMD_GFX90A,AMD_GFX940,AMD_GFX942,AMD_GFX1030,AMD_GFX1100
|
||||
# AMD-GPUS: AMD_GFX906,AMD_GFX908,AMD_GFX90A,AMD_GFX940,AMD_GFX942,AMD_GFX1030,AMD_GFX1100,AMD_GFX1103
|
||||
# AMD-CPUS: AMDAVX,Zen,Zen2,Zen3
|
||||
# Intel-GPUs: Intel_Gen,Intel_Gen9,Intel_Gen11,Intel_Gen12LP,Intel_DG1,Intel_XeHP,Intel_PVC
|
||||
KOKKOS_ARCH ?= ""
|
||||
@ -465,6 +465,7 @@ KOKKOS_INTERNAL_USE_ARCH_AMD_GFX1100 := $(call kokkos_has_string,$(KOKKOS_ARCH),
|
||||
ifeq ($(KOKKOS_INTERNAL_USE_ARCH_AMD_GFX1100), 0)
|
||||
KOKKOS_INTERNAL_USE_ARCH_AMD_GFX1100 := $(call kokkos_has_string,$(KOKKOS_ARCH),NAVI1100)
|
||||
endif
|
||||
KOKKOS_INTERNAL_USE_ARCH_AMD_GFX1103 := $(call kokkos_has_string,$(KOKKOS_ARCH),AMD_GFX1103)
|
||||
|
||||
# Any AVX?
|
||||
KOKKOS_INTERNAL_USE_ARCH_AVX := $(shell expr $(KOKKOS_INTERNAL_USE_ARCH_SNB) + $(KOKKOS_INTERNAL_USE_ARCH_AMDAVX))
|
||||
@ -1158,6 +1159,11 @@ ifeq ($(KOKKOS_INTERNAL_USE_ARCH_AMD_GFX1100), 1)
|
||||
tmp := $(call kokkos_append_header,"$H""define KOKKOS_ARCH_AMD_GPU")
|
||||
KOKKOS_INTERNAL_HIP_ARCH_FLAG := --offload-arch=gfx1100
|
||||
endif
|
||||
ifeq ($(KOKKOS_INTERNAL_USE_ARCH_AMD_GFX1103), 1)
|
||||
tmp := $(call kokkos_append_header,"$H""define KOKKOS_ARCH_AMD_GFX1103")
|
||||
tmp := $(call kokkos_append_header,"$H""define KOKKOS_ARCH_AMD_GPU")
|
||||
KOKKOS_INTERNAL_HIP_ARCH_FLAG := --offload-arch=gfx1103
|
||||
endif
|
||||
|
||||
|
||||
ifeq ($(KOKKOS_INTERNAL_USE_HIP), 1)
|
||||
|
||||
@ -120,6 +120,7 @@
|
||||
#cmakedefine KOKKOS_ARCH_AMD_GFX942
|
||||
#cmakedefine KOKKOS_ARCH_AMD_GFX1030
|
||||
#cmakedefine KOKKOS_ARCH_AMD_GFX1100
|
||||
#cmakedefine KOKKOS_ARCH_AMD_GFX1103
|
||||
#cmakedefine KOKKOS_ARCH_AMD_GPU
|
||||
#cmakedefine KOKKOS_ARCH_VEGA // deprecated
|
||||
#cmakedefine KOKKOS_ARCH_VEGA906 // deprecated
|
||||
|
||||
@ -103,9 +103,9 @@ LIST(APPEND CORRESPONDING_AMD_FLAGS gfx90a gfx90a gfx908 gfx908)
|
||||
LIST(APPEND SUPPORTED_AMD_GPUS MI50/60 MI50/60)
|
||||
LIST(APPEND SUPPORTED_AMD_ARCHS VEGA906 AMD_GFX906)
|
||||
LIST(APPEND CORRESPONDING_AMD_FLAGS gfx906 gfx906)
|
||||
LIST(APPEND SUPPORTED_AMD_GPUS RX7900XTX RX7900XTX V620/W6800 V620/W6800)
|
||||
LIST(APPEND SUPPORTED_AMD_ARCHS NAVI1100 AMD_GFX1100 NAVI1030 AMD_GFX1030)
|
||||
LIST(APPEND CORRESPONDING_AMD_FLAGS gfx1100 gfx1100 gfx1030 gfx1030)
|
||||
LIST(APPEND SUPPORTED_AMD_GPUS PHOENIX RX7900XTX V620/W6800 V620/W6800)
|
||||
LIST(APPEND SUPPORTED_AMD_ARCHS AMD_GFX1103 AMD_GFX1100 NAVI1030 AMD_GFX1030)
|
||||
LIST(APPEND CORRESPONDING_AMD_FLAGS gfx1103 gfx1100 gfx1030 gfx1030)
|
||||
|
||||
#FIXME CAN BE REPLACED WITH LIST_ZIP IN CMAKE 3.17
|
||||
FOREACH(ARCH IN LISTS SUPPORTED_AMD_ARCHS)
|
||||
|
||||
@ -35,7 +35,8 @@ struct HIPTraits {
|
||||
static constexpr int WarpSize = 64;
|
||||
static constexpr int WarpIndexMask = 0x003f; /* hexadecimal for 63 */
|
||||
static constexpr int WarpIndexShift = 6; /* WarpSize == 1 << WarpShift*/
|
||||
#elif defined(KOKKOS_ARCH_AMD_GFX1030) || defined(KOKKOS_ARCH_AMD_GFX1100)
|
||||
#elif defined(KOKKOS_ARCH_AMD_GFX1030) || defined(KOKKOS_ARCH_AMD_GFX1100) || \
|
||||
defined(KOKKOS_ARCH_AMD_GFX1103)
|
||||
static constexpr int WarpSize = 32;
|
||||
static constexpr int WarpIndexMask = 0x001f; /* hexadecimal for 31 */
|
||||
static constexpr int WarpIndexShift = 5; /* WarpSize == 1 << WarpShift*/
|
||||
|
||||
@ -143,7 +143,7 @@ class ParallelScan<FunctorType, Kokkos::RangePolicy<Traits...>,
|
||||
local_offset_value = element_values(team_id, i - 1);
|
||||
// FIXME_OPENMPTARGET We seem to access memory illegaly on AMD GPUs
|
||||
#if defined(KOKKOS_ARCH_AMD_GPU) && !defined(KOKKOS_ARCH_AMD_GFX1030) && \
|
||||
!defined(KOKKOS_ARCH_AMD_GFX1100)
|
||||
!defined(KOKKOS_ARCH_AMD_GFX1100) && !defined(KOKKOS_ARCH_AMD_GFX1103)
|
||||
if constexpr (Analysis::Reducer::has_join_member_function()) {
|
||||
if constexpr (std::is_void_v<WorkTag>)
|
||||
a_functor_reducer.get_functor().join(local_offset_value,
|
||||
|
||||
@ -752,6 +752,9 @@ void pre_initialize_internal(const Kokkos::InitializationSettings& settings) {
|
||||
#elif defined(KOKKOS_ARCH_AMD_GFX1100)
|
||||
declare_configuration_metadata("architecture", "GPU architecture",
|
||||
"AMD_GFX1100");
|
||||
#elif defined(KOKKOS_ARCH_AMD_GFX1103)
|
||||
declare_configuration_metadata("architecture", "GPU architecture",
|
||||
"AMD_GFX1103");
|
||||
|
||||
#else
|
||||
declare_configuration_metadata("architecture", "GPU architecture", "none");
|
||||
|
||||
@ -164,6 +164,7 @@ display_help_text() {
|
||||
echo " AMD_GFX942 = AMD GPU MI300 GFX942"
|
||||
echo " AMD_GFX1030 = AMD GPU V620/W6800 GFX1030"
|
||||
echo " AMD_GFX1100 = AMD GPU RX 7900 XT(X) GFX1100"
|
||||
echo " AMD_GFX1103 = AMD APU Radeon 740M/760M/780M/880M/890M GFX1103"
|
||||
echo " [ARM]"
|
||||
echo " ARMV80 = ARMv8.0 Compatible CPU"
|
||||
echo " ARMV81 = ARMv8.1 Compatible CPU"
|
||||
|
||||
@ -563,7 +563,6 @@ void DomainKokkos::operator()(TagDomain_image_flip, const int &i) const {
|
||||
void DomainKokkos::lamda2x(int n)
|
||||
{
|
||||
atomKK->sync(Device,X_MASK);
|
||||
|
||||
x = atomKK->k_x.view<LMPDeviceType>();
|
||||
|
||||
copymode = 1;
|
||||
@ -573,6 +572,21 @@ void DomainKokkos::lamda2x(int n)
|
||||
atomKK->modified(Device,X_MASK);
|
||||
}
|
||||
|
||||
void DomainKokkos::lamda2x(int n, int groupbit_in)
|
||||
{
|
||||
atomKK->sync(Device,X_MASK);
|
||||
x = atomKK->k_x.view<LMPDeviceType>();
|
||||
mask = atomKK->k_mask.view<LMPDeviceType>();
|
||||
mask = atomKK->k_mask.view<LMPDeviceType>();
|
||||
groupbit = groupbit_in;
|
||||
|
||||
copymode = 1;
|
||||
Kokkos::parallel_for(Kokkos::RangePolicy<LMPDeviceType, TagDomain_lamda2x_group>(0,n),*this);
|
||||
copymode = 0;
|
||||
|
||||
atomKK->modified(Device,X_MASK);
|
||||
}
|
||||
|
||||
KOKKOS_INLINE_FUNCTION
|
||||
void DomainKokkos::operator()(TagDomain_lamda2x, const int &i) const {
|
||||
const double xi1 = x(i,1);
|
||||
@ -582,6 +596,17 @@ void DomainKokkos::operator()(TagDomain_lamda2x, const int &i) const {
|
||||
x(i,2) = h[2]*xi2 + boxlo[2];
|
||||
}
|
||||
|
||||
KOKKOS_INLINE_FUNCTION
|
||||
void DomainKokkos::operator()(TagDomain_lamda2x_group, const int &i) const {
|
||||
if (mask[i] & groupbit) {
|
||||
const double xi1 = x(i,1);
|
||||
const double xi2 = x(i,2);
|
||||
x(i,0) = h[0]*x(i,0) + h[5]*xi1 + h[4]*xi2 + boxlo[0];
|
||||
x(i,1) = h[1]*xi1 + h[3]*xi2 + boxlo[1];
|
||||
x(i,2) = h[2]*xi2 + boxlo[2];
|
||||
}
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
convert box coords to triclinic 0-1 lamda coords for all N atoms
|
||||
lamda = H^-1 (x - x0)
|
||||
@ -590,7 +615,6 @@ void DomainKokkos::operator()(TagDomain_lamda2x, const int &i) const {
|
||||
void DomainKokkos::x2lamda(int n)
|
||||
{
|
||||
atomKK->sync(Device,X_MASK);
|
||||
|
||||
x = atomKK->k_x.view<LMPDeviceType>();
|
||||
|
||||
copymode = 1;
|
||||
@ -600,6 +624,20 @@ void DomainKokkos::x2lamda(int n)
|
||||
atomKK->modified(Device,X_MASK);
|
||||
}
|
||||
|
||||
void DomainKokkos::x2lamda(int n, int groupbit_in)
|
||||
{
|
||||
atomKK->sync(Device,X_MASK);
|
||||
x = atomKK->k_x.view<LMPDeviceType>();
|
||||
mask = atomKK->k_mask.view<LMPDeviceType>();
|
||||
groupbit = groupbit_in;
|
||||
|
||||
copymode = 1;
|
||||
Kokkos::parallel_for(Kokkos::RangePolicy<LMPDeviceType, TagDomain_x2lamda_group>(0,n),*this);
|
||||
copymode = 0;
|
||||
|
||||
atomKK->modified(Device,X_MASK);
|
||||
}
|
||||
|
||||
KOKKOS_INLINE_FUNCTION
|
||||
void DomainKokkos::operator()(TagDomain_x2lamda, const int &i) const {
|
||||
F_FLOAT delta[3];
|
||||
@ -612,3 +650,17 @@ void DomainKokkos::operator()(TagDomain_x2lamda, const int &i) const {
|
||||
x(i,2) = h_inv[2]*delta[2];
|
||||
}
|
||||
|
||||
KOKKOS_INLINE_FUNCTION
|
||||
void DomainKokkos::operator()(TagDomain_x2lamda_group, const int &i) const {
|
||||
if (mask[i] & groupbit) {
|
||||
F_FLOAT delta[3];
|
||||
delta[0] = x(i,0) - boxlo[0];
|
||||
delta[1] = x(i,1) - boxlo[1];
|
||||
delta[2] = x(i,2) - boxlo[2];
|
||||
|
||||
x(i,0) = h_inv[0]*delta[0] + h_inv[5]*delta[1] + h_inv[4]*delta[2];
|
||||
x(i,1) = h_inv[1]*delta[1] + h_inv[3]*delta[2];
|
||||
x(i,2) = h_inv[2]*delta[2];
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -24,7 +24,9 @@ namespace LAMMPS_NS {
|
||||
struct TagDomain_remap_all{};
|
||||
struct TagDomain_image_flip{};
|
||||
struct TagDomain_lamda2x{};
|
||||
struct TagDomain_lamda2x_group{};
|
||||
struct TagDomain_x2lamda{};
|
||||
struct TagDomain_x2lamda_group{};
|
||||
|
||||
class DomainKokkos : public Domain {
|
||||
public:
|
||||
@ -35,7 +37,9 @@ class DomainKokkos : public Domain {
|
||||
void remap_all();
|
||||
void image_flip(int, int, int);
|
||||
void x2lamda(int) override;
|
||||
void x2lamda(int,int) override;
|
||||
void lamda2x(int) override;
|
||||
void lamda2x(int,int) override;
|
||||
// forward remaining x2lamda() and lambda2x() variants to parent class
|
||||
void x2lamda(double *a, double *b) override { Domain::x2lamda(a,b); }
|
||||
void lamda2x(double *a, double *b) override { Domain::lamda2x(a,b); }
|
||||
@ -54,18 +58,26 @@ class DomainKokkos : public Domain {
|
||||
KOKKOS_INLINE_FUNCTION
|
||||
void operator()(TagDomain_lamda2x, const int&) const;
|
||||
|
||||
KOKKOS_INLINE_FUNCTION
|
||||
void operator()(TagDomain_lamda2x_group, const int&) const;
|
||||
|
||||
KOKKOS_INLINE_FUNCTION
|
||||
void operator()(TagDomain_x2lamda, const int&) const;
|
||||
|
||||
KOKKOS_INLINE_FUNCTION
|
||||
void operator()(TagDomain_x2lamda_group, const int&) const;
|
||||
|
||||
static KOKKOS_INLINE_FUNCTION
|
||||
Few<double,3> unmap(Few<double,3> prd, Few<double,6> h, int triclinic,
|
||||
Few<double,3> x, imageint image);
|
||||
|
||||
private:
|
||||
int groupbit;
|
||||
double lo[3],hi[3],period[3];
|
||||
int n_flip, m_flip, p_flip;
|
||||
ArrayTypes<LMPDeviceType>::t_x_array x;
|
||||
ArrayTypes<LMPDeviceType>::t_imageint_1d image;
|
||||
ArrayTypes<LMPDeviceType>::t_int_1d mask;
|
||||
};
|
||||
|
||||
KOKKOS_INLINE_FUNCTION
|
||||
|
||||
@ -13,7 +13,8 @@
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
Contributing author: Pieter in 't Veld (SNL)
|
||||
Contributing author: Pieter in 't Veld (SNL)
|
||||
Refactoring (2024/08): Mitch Murphy (alphataubio@gmail.com)
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
#include "fix_deform_kokkos.h"
|
||||
@ -21,31 +22,14 @@
|
||||
#include "atom_kokkos.h"
|
||||
#include "atom_masks.h"
|
||||
#include "domain_kokkos.h"
|
||||
#include "force.h"
|
||||
#include "input.h"
|
||||
#include "irregular.h"
|
||||
#include "kspace.h"
|
||||
#include "math_const.h"
|
||||
#include "modify.h"
|
||||
#include "update.h"
|
||||
#include "variable.h"
|
||||
|
||||
#include <cmath>
|
||||
|
||||
using namespace LAMMPS_NS;
|
||||
using namespace FixConst;
|
||||
using namespace MathConst;
|
||||
|
||||
enum{NONE=0,FINAL,DELTA,SCALE,VEL,ERATE,TRATE,VOLUME,WIGGLE,VARIABLE};
|
||||
enum{ONE_FROM_ONE,ONE_FROM_TWO,TWO_FROM_ONE};
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
FixDeformKokkos::FixDeformKokkos(LAMMPS *lmp, int narg, char **arg) : FixDeform(lmp, narg, arg)
|
||||
{
|
||||
kokkosable = 1;
|
||||
domainKK = (DomainKokkos *) domain;
|
||||
|
||||
datamask_read = EMPTY_MASK;
|
||||
datamask_modify = EMPTY_MASK;
|
||||
}
|
||||
@ -62,308 +46,16 @@ FixDeformKokkos::FixDeformKokkos(LAMMPS *lmp, int narg, char **arg) : FixDeform(
|
||||
|
||||
void FixDeformKokkos::pre_exchange()
|
||||
{
|
||||
if (flip == 0) return;
|
||||
|
||||
domain->yz = set[3].tilt_target = set[3].tilt_flip;
|
||||
domain->xz = set[4].tilt_target = set[4].tilt_flip;
|
||||
domain->xy = set[5].tilt_target = set[5].tilt_flip;
|
||||
domain->set_global_box();
|
||||
domain->set_local_box();
|
||||
|
||||
domainKK->image_flip(flipxy,flipxz,flipyz);
|
||||
|
||||
domainKK->remap_all();
|
||||
|
||||
domainKK->x2lamda(atom->nlocal);
|
||||
atomKK->sync(Host,ALL_MASK);
|
||||
irregular->migrate_atoms();
|
||||
FixDeform::pre_exchange();
|
||||
atomKK->modified(Host,ALL_MASK);
|
||||
domainKK->lamda2x(atom->nlocal);
|
||||
|
||||
flip = 0;
|
||||
}
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
void FixDeformKokkos::end_of_step()
|
||||
{
|
||||
int i;
|
||||
|
||||
double delta = update->ntimestep - update->beginstep;
|
||||
if (delta != 0.0) delta /= update->endstep - update->beginstep;
|
||||
|
||||
// wrap variable evaluations with clear/add
|
||||
|
||||
if (varflag) modify->clearstep_compute();
|
||||
|
||||
// set new box size
|
||||
// for NONE, target is current box size
|
||||
// for TRATE, set target directly based on current time, also set h_rate
|
||||
// for WIGGLE, set target directly based on current time, also set h_rate
|
||||
// for VARIABLE, set target directly via variable eval, also set h_rate
|
||||
// for others except VOLUME, target is linear value between start and stop
|
||||
|
||||
for (i = 0; i < 3; i++) {
|
||||
if (set[i].style == NONE) {
|
||||
set[i].lo_target = domain->boxlo[i];
|
||||
set[i].hi_target = domain->boxhi[i];
|
||||
} else if (set[i].style == TRATE) {
|
||||
double delt = (update->ntimestep - update->beginstep) * update->dt;
|
||||
set[i].lo_target = 0.5*(set[i].lo_start+set[i].hi_start) -
|
||||
0.5*((set[i].hi_start-set[i].lo_start) * exp(set[i].rate*delt));
|
||||
set[i].hi_target = 0.5*(set[i].lo_start+set[i].hi_start) +
|
||||
0.5*((set[i].hi_start-set[i].lo_start) * exp(set[i].rate*delt));
|
||||
h_rate[i] = set[i].rate * domain->h[i];
|
||||
h_ratelo[i] = -0.5*h_rate[i];
|
||||
} else if (set[i].style == WIGGLE) {
|
||||
double delt = (update->ntimestep - update->beginstep) * update->dt;
|
||||
set[i].lo_target = set[i].lo_start -
|
||||
0.5*set[i].amplitude * sin(MY_2PI*delt/set[i].tperiod);
|
||||
set[i].hi_target = set[i].hi_start +
|
||||
0.5*set[i].amplitude * sin(MY_2PI*delt/set[i].tperiod);
|
||||
h_rate[i] = MY_2PI/set[i].tperiod * set[i].amplitude *
|
||||
cos(MY_2PI*delt/set[i].tperiod);
|
||||
h_ratelo[i] = -0.5*h_rate[i];
|
||||
} else if (set[i].style == VARIABLE) {
|
||||
double del = input->variable->compute_equal(set[i].hvar);
|
||||
set[i].lo_target = set[i].lo_start - 0.5*del;
|
||||
set[i].hi_target = set[i].hi_start + 0.5*del;
|
||||
h_rate[i] = input->variable->compute_equal(set[i].hratevar);
|
||||
h_ratelo[i] = -0.5*h_rate[i];
|
||||
} else if (set[i].style != VOLUME) {
|
||||
set[i].lo_target = set[i].lo_start +
|
||||
delta*(set[i].lo_stop - set[i].lo_start);
|
||||
set[i].hi_target = set[i].hi_start +
|
||||
delta*(set[i].hi_stop - set[i].hi_start);
|
||||
}
|
||||
}
|
||||
|
||||
// set new box size for VOLUME dims that are linked to other dims
|
||||
// NOTE: still need to set h_rate for these dims
|
||||
|
||||
for (i = 0; i < 3; i++) {
|
||||
if (set[i].style != VOLUME) continue;
|
||||
|
||||
if (set[i].substyle == ONE_FROM_ONE) {
|
||||
set[i].lo_target = 0.5*(set[i].lo_start+set[i].hi_start) -
|
||||
0.5*(set[i].vol_start /
|
||||
(set[set[i].dynamic1].hi_target -
|
||||
set[set[i].dynamic1].lo_target) /
|
||||
(set[set[i].fixed].hi_start-set[set[i].fixed].lo_start));
|
||||
set[i].hi_target = 0.5*(set[i].lo_start+set[i].hi_start) +
|
||||
0.5*(set[i].vol_start /
|
||||
(set[set[i].dynamic1].hi_target -
|
||||
set[set[i].dynamic1].lo_target) /
|
||||
(set[set[i].fixed].hi_start-set[set[i].fixed].lo_start));
|
||||
|
||||
} else if (set[i].substyle == ONE_FROM_TWO) {
|
||||
set[i].lo_target = 0.5*(set[i].lo_start+set[i].hi_start) -
|
||||
0.5*(set[i].vol_start /
|
||||
(set[set[i].dynamic1].hi_target -
|
||||
set[set[i].dynamic1].lo_target) /
|
||||
(set[set[i].dynamic2].hi_target -
|
||||
set[set[i].dynamic2].lo_target));
|
||||
set[i].hi_target = 0.5*(set[i].lo_start+set[i].hi_start) +
|
||||
0.5*(set[i].vol_start /
|
||||
(set[set[i].dynamic1].hi_target -
|
||||
set[set[i].dynamic1].lo_target) /
|
||||
(set[set[i].dynamic2].hi_target -
|
||||
set[set[i].dynamic2].lo_target));
|
||||
|
||||
} else if (set[i].substyle == TWO_FROM_ONE) {
|
||||
set[i].lo_target = 0.5*(set[i].lo_start+set[i].hi_start) -
|
||||
0.5*sqrt(set[i].vol_start /
|
||||
(set[set[i].dynamic1].hi_target -
|
||||
set[set[i].dynamic1].lo_target) /
|
||||
(set[set[i].fixed].hi_start -
|
||||
set[set[i].fixed].lo_start) *
|
||||
(set[i].hi_start - set[i].lo_start));
|
||||
set[i].hi_target = 0.5*(set[i].lo_start+set[i].hi_start) +
|
||||
0.5*sqrt(set[i].vol_start /
|
||||
(set[set[i].dynamic1].hi_target -
|
||||
set[set[i].dynamic1].lo_target) /
|
||||
(set[set[i].fixed].hi_start -
|
||||
set[set[i].fixed].lo_start) *
|
||||
(set[i].hi_start - set[i].lo_start));
|
||||
}
|
||||
}
|
||||
|
||||
// for triclinic, set new box shape
|
||||
// for NONE, target is current tilt
|
||||
// for TRATE, set target directly based on current time. also set h_rate
|
||||
// for WIGGLE, set target directly based on current time. also set h_rate
|
||||
// for VARIABLE, set target directly via variable eval. also set h_rate
|
||||
// for other styles, target is linear value between start and stop values
|
||||
|
||||
if (triclinic) {
|
||||
double *h = domain->h;
|
||||
|
||||
for (i = 3; i < 6; i++) {
|
||||
if (set[i].style == NONE) {
|
||||
if (i == 5) set[i].tilt_target = domain->xy;
|
||||
else if (i == 4) set[i].tilt_target = domain->xz;
|
||||
else if (i == 3) set[i].tilt_target = domain->yz;
|
||||
} else if (set[i].style == TRATE) {
|
||||
double delt = (update->ntimestep - update->beginstep) * update->dt;
|
||||
set[i].tilt_target = set[i].tilt_start * exp(set[i].rate*delt);
|
||||
h_rate[i] = set[i].rate * domain->h[i];
|
||||
} else if (set[i].style == WIGGLE) {
|
||||
double delt = (update->ntimestep - update->beginstep) * update->dt;
|
||||
set[i].tilt_target = set[i].tilt_start +
|
||||
set[i].amplitude * sin(MY_2PI*delt/set[i].tperiod);
|
||||
h_rate[i] = MY_2PI/set[i].tperiod * set[i].amplitude *
|
||||
cos(MY_2PI*delt/set[i].tperiod);
|
||||
} else if (set[i].style == VARIABLE) {
|
||||
double delta_tilt = input->variable->compute_equal(set[i].hvar);
|
||||
set[i].tilt_target = set[i].tilt_start + delta_tilt;
|
||||
h_rate[i] = input->variable->compute_equal(set[i].hratevar);
|
||||
} else {
|
||||
set[i].tilt_target = set[i].tilt_start +
|
||||
delta*(set[i].tilt_stop - set[i].tilt_start);
|
||||
}
|
||||
|
||||
// tilt_target can be large positive or large negative value
|
||||
// add/subtract box lengths until tilt_target is closest to current value
|
||||
|
||||
int idenom = 0;
|
||||
if (i == 5) idenom = 0;
|
||||
else if (i == 4) idenom = 0;
|
||||
else if (i == 3) idenom = 1;
|
||||
double denom = set[idenom].hi_target - set[idenom].lo_target;
|
||||
|
||||
double current = h[i]/h[idenom];
|
||||
|
||||
while (set[i].tilt_target/denom - current > 0.0)
|
||||
set[i].tilt_target -= denom;
|
||||
while (set[i].tilt_target/denom - current < 0.0)
|
||||
set[i].tilt_target += denom;
|
||||
if (fabs(set[i].tilt_target/denom - 1.0 - current) <
|
||||
fabs(set[i].tilt_target/denom - current))
|
||||
set[i].tilt_target -= denom;
|
||||
}
|
||||
}
|
||||
|
||||
if (varflag) modify->addstep_compute(update->ntimestep + nevery);
|
||||
|
||||
// if any tilt ratios exceed 0.5, set flip = 1 and compute new tilt values
|
||||
// do not flip in x or y if non-periodic (can tilt but not flip)
|
||||
// this is b/c the box length would be changed (dramatically) by flip
|
||||
// if yz tilt exceeded, adjust C vector by one B vector
|
||||
// if xz tilt exceeded, adjust C vector by one A vector
|
||||
// if xy tilt exceeded, adjust B vector by one A vector
|
||||
// check yz first since it may change xz, then xz check comes after
|
||||
// flip is performed on next timestep, before reneighboring in pre-exchange()
|
||||
|
||||
if (triclinic && flipflag) {
|
||||
double xprd = set[0].hi_target - set[0].lo_target;
|
||||
double yprd = set[1].hi_target - set[1].lo_target;
|
||||
double xprdinv = 1.0 / xprd;
|
||||
double yprdinv = 1.0 / yprd;
|
||||
if (set[3].tilt_target*yprdinv < -0.5 ||
|
||||
set[3].tilt_target*yprdinv > 0.5 ||
|
||||
set[4].tilt_target*xprdinv < -0.5 ||
|
||||
set[4].tilt_target*xprdinv > 0.5 ||
|
||||
set[5].tilt_target*xprdinv < -0.5 ||
|
||||
set[5].tilt_target*xprdinv > 0.5) {
|
||||
set[3].tilt_flip = set[3].tilt_target;
|
||||
set[4].tilt_flip = set[4].tilt_target;
|
||||
set[5].tilt_flip = set[5].tilt_target;
|
||||
|
||||
flipxy = flipxz = flipyz = 0;
|
||||
|
||||
if (domain->yperiodic) {
|
||||
if (set[3].tilt_flip*yprdinv < -0.5) {
|
||||
set[3].tilt_flip += yprd;
|
||||
set[4].tilt_flip += set[5].tilt_flip;
|
||||
flipyz = 1;
|
||||
} else if (set[3].tilt_flip*yprdinv > 0.5) {
|
||||
set[3].tilt_flip -= yprd;
|
||||
set[4].tilt_flip -= set[5].tilt_flip;
|
||||
flipyz = -1;
|
||||
}
|
||||
}
|
||||
if (domain->xperiodic) {
|
||||
if (set[4].tilt_flip*xprdinv < -0.5) {
|
||||
set[4].tilt_flip += xprd;
|
||||
flipxz = 1;
|
||||
}
|
||||
if (set[4].tilt_flip*xprdinv > 0.5) {
|
||||
set[4].tilt_flip -= xprd;
|
||||
flipxz = -1;
|
||||
}
|
||||
if (set[5].tilt_flip*xprdinv < -0.5) {
|
||||
set[5].tilt_flip += xprd;
|
||||
flipxy = 1;
|
||||
}
|
||||
if (set[5].tilt_flip*xprdinv > 0.5) {
|
||||
set[5].tilt_flip -= xprd;
|
||||
flipxy = -1;
|
||||
}
|
||||
}
|
||||
|
||||
flip = 0;
|
||||
if (flipxy || flipxz || flipyz) flip = 1;
|
||||
if (flip) next_reneighbor = update->ntimestep + 1;
|
||||
}
|
||||
}
|
||||
|
||||
// convert atoms and rigid bodies to lamda coords
|
||||
|
||||
if (remapflag == Domain::X_REMAP) {
|
||||
int nlocal = atom->nlocal;
|
||||
|
||||
domainKK->x2lamda(nlocal);
|
||||
|
||||
if (rfix.size() > 0) {
|
||||
atomKK->sync(Host,ALL_MASK);
|
||||
for (auto &ifix : rfix)
|
||||
ifix->deform(0);
|
||||
atomKK->modified(Host,ALL_MASK);
|
||||
}
|
||||
}
|
||||
|
||||
// reset global and local box to new size/shape
|
||||
// only if deform fix is controlling the dimension
|
||||
|
||||
if (set[0].style) {
|
||||
domain->boxlo[0] = set[0].lo_target;
|
||||
domain->boxhi[0] = set[0].hi_target;
|
||||
}
|
||||
if (set[1].style) {
|
||||
domain->boxlo[1] = set[1].lo_target;
|
||||
domain->boxhi[1] = set[1].hi_target;
|
||||
}
|
||||
if (set[2].style) {
|
||||
domain->boxlo[2] = set[2].lo_target;
|
||||
domain->boxhi[2] = set[2].hi_target;
|
||||
}
|
||||
if (triclinic) {
|
||||
if (set[3].style) domain->yz = set[3].tilt_target;
|
||||
if (set[4].style) domain->xz = set[4].tilt_target;
|
||||
if (set[5].style) domain->xy = set[5].tilt_target;
|
||||
}
|
||||
|
||||
domain->set_global_box();
|
||||
domain->set_local_box();
|
||||
|
||||
// convert atoms and rigid bodies back to box coords
|
||||
|
||||
if (remapflag == Domain::X_REMAP) {
|
||||
int nlocal = atom->nlocal;
|
||||
|
||||
domainKK->lamda2x(nlocal);
|
||||
|
||||
if (rfix.size() > 0) {
|
||||
atomKK->sync(Host,ALL_MASK);
|
||||
for (auto &ifix : rfix)
|
||||
ifix->deform(1);
|
||||
atomKK->modified(Host,ALL_MASK);
|
||||
}
|
||||
}
|
||||
|
||||
// redo KSpace coeffs since box has changed
|
||||
|
||||
if (kspace_flag) force->kspace->setup();
|
||||
atomKK->sync(Host,ALL_MASK);
|
||||
FixDeform::end_of_step();
|
||||
atomKK->modified(Host,ALL_MASK);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -34,13 +34,9 @@ class FixDeformKokkos : public FixDeform {
|
||||
void pre_exchange() override;
|
||||
void end_of_step() override;
|
||||
|
||||
private:
|
||||
class DomainKokkos *domainKK;
|
||||
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
||||
@ -13,22 +13,23 @@
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
Contributing author: Trung Nguyen (U Chicago)
|
||||
Contributing authors: Trung Nguyen (U Chicago)
|
||||
Mitch Murphy (alphataubio at gmail)
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
#include "fix_efield_kokkos.h"
|
||||
|
||||
#include "atom_kokkos.h"
|
||||
#include "update.h"
|
||||
#include "modify.h"
|
||||
#include "domain_kokkos.h"
|
||||
#include "region.h"
|
||||
#include "input.h"
|
||||
#include "variable.h"
|
||||
#include "memory_kokkos.h"
|
||||
#include "error.h"
|
||||
#include "atom_masks.h"
|
||||
#include "domain_kokkos.h"
|
||||
#include "error.h"
|
||||
#include "input.h"
|
||||
#include "kokkos_base.h"
|
||||
#include "memory_kokkos.h"
|
||||
#include "modify_kokkos.h"
|
||||
#include "region.h"
|
||||
#include "update.h"
|
||||
#include "variable.h"
|
||||
|
||||
using namespace LAMMPS_NS;
|
||||
using namespace FixConst;
|
||||
@ -44,12 +45,12 @@ FixEfieldKokkos<DeviceType>::FixEfieldKokkos(LAMMPS *lmp, int narg, char **arg)
|
||||
kokkosable = 1;
|
||||
atomKK = (AtomKokkos *) atom;
|
||||
execution_space = ExecutionSpaceFromDevice<DeviceType>::space;
|
||||
datamask_read = EMPTY_MASK;
|
||||
datamask_modify = EMPTY_MASK;
|
||||
datamask_read = X_MASK | F_MASK | TORQUE_MASK | Q_MASK | MU_MASK | IMAGE_MASK | MASK_MASK;
|
||||
datamask_modify = F_MASK | TORQUE_MASK;
|
||||
|
||||
memory->destroy(efield);
|
||||
memoryKK->create_kokkos(k_efield,efield,maxatom,4,"efield:efield");
|
||||
d_efield = k_efield.view<DeviceType>();
|
||||
d_efield = k_efield.template view<DeviceType>();
|
||||
}
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
@ -60,7 +61,7 @@ FixEfieldKokkos<DeviceType>::~FixEfieldKokkos()
|
||||
if (copymode) return;
|
||||
|
||||
memoryKK->destroy_kokkos(k_efield,efield);
|
||||
efield = nullptr;
|
||||
memoryKK->destroy_kokkos(k_vatom,vatom);
|
||||
}
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
@ -77,17 +78,30 @@ void FixEfieldKokkos<DeviceType>::init()
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
template<class DeviceType>
|
||||
void FixEfieldKokkos<DeviceType>::post_force(int /*vflag*/)
|
||||
void FixEfieldKokkos<DeviceType>::post_force(int vflag)
|
||||
{
|
||||
atomKK->sync(execution_space, X_MASK | F_MASK | Q_MASK | IMAGE_MASK | MASK_MASK);
|
||||
atomKK->sync(execution_space, datamask_read);
|
||||
|
||||
x = atomKK->k_x.view<DeviceType>();
|
||||
f = atomKK->k_f.view<DeviceType>();
|
||||
q = atomKK->k_q.view<DeviceType>();
|
||||
image = atomKK->k_image.view<DeviceType>();
|
||||
mask = atomKK->k_mask.view<DeviceType>();
|
||||
d_x = atomKK->k_x.template view<DeviceType>();
|
||||
d_f = atomKK->k_f.template view<DeviceType>();
|
||||
d_q = atomKK->k_q.template view<DeviceType>();
|
||||
d_mu = atomKK->k_mu.template view<DeviceType>();
|
||||
d_torque = atomKK->k_torque.template view<DeviceType>();
|
||||
d_image = atomKK->k_image.template view<DeviceType>();
|
||||
d_mask = atomKK->k_mask.template view<DeviceType>();
|
||||
int nlocal = atomKK->nlocal;
|
||||
|
||||
int nlocal = atom->nlocal;
|
||||
// virial setup
|
||||
|
||||
v_init(vflag);
|
||||
|
||||
// reallocate per-atom arrays if necessary
|
||||
|
||||
if (vflag_atom) {
|
||||
memoryKK->destroy_kokkos(k_vatom,vatom);
|
||||
memoryKK->create_kokkos(k_vatom,vatom,maxvatom,"efield:vatom");
|
||||
d_vatom = k_vatom.template view<DeviceType>();
|
||||
}
|
||||
|
||||
// update region if necessary
|
||||
|
||||
@ -111,53 +125,24 @@ void FixEfieldKokkos<DeviceType>::post_force(int /*vflag*/)
|
||||
d_efield = k_efield.view<DeviceType>();
|
||||
}
|
||||
|
||||
fsum[0] = fsum[1] = fsum[2] = fsum[3] = 0.0;
|
||||
double_4 fsum_kk;
|
||||
force_flag = 0;
|
||||
double result[10] = {0.0};
|
||||
|
||||
if (varflag == CONSTANT) {
|
||||
|
||||
prd = domain->prd;
|
||||
h = domain->h;
|
||||
triclinic = domain->triclinic;
|
||||
copymode = 1;
|
||||
|
||||
// It would be more concise to use the operators below, but there is still an issue with unwrap (TODO below)
|
||||
//Kokkos::parallel_reduce(Kokkos::RangePolicy<DeviceType, TagFixEfieldConstant>(0,nlocal),*this,fsum_kk);
|
||||
|
||||
{
|
||||
// local variables for lambda capture
|
||||
auto prd = Few<double,3>(domain->prd);
|
||||
auto h = Few<double,6>(domain->h);
|
||||
auto triclinic = domain->triclinic;
|
||||
auto l_ex = ex;
|
||||
auto l_ey = ey;
|
||||
auto l_ez = ez;
|
||||
|
||||
auto l_x = x;
|
||||
auto l_q = q;
|
||||
auto l_f = f;
|
||||
auto l_mask = mask;
|
||||
auto l_image = image;
|
||||
auto l_groupbit = groupbit;
|
||||
|
||||
Kokkos::parallel_reduce(nlocal, LAMMPS_LAMBDA(const int& i, double_4& fsum_kk) {
|
||||
if (l_mask[i] & l_groupbit) {
|
||||
Few<double,3> x_i;
|
||||
x_i[0] = l_x(i,0);
|
||||
x_i[1] = l_x(i,1);
|
||||
x_i[2] = l_x(i,2);
|
||||
auto unwrap = DomainKokkos::unmap(prd,h,triclinic,x_i,l_image(i));
|
||||
auto qtmp = l_q(i);
|
||||
auto fx = qtmp * l_ex;
|
||||
auto fy = qtmp * l_ey;
|
||||
auto fz = qtmp * l_ez;
|
||||
l_f(i,0) += fx;
|
||||
l_f(i,1) += fy;
|
||||
l_f(i,2) += fz;
|
||||
fsum_kk.d0 -= fx * unwrap[0] + fy * unwrap[1] + fz * unwrap[2];
|
||||
fsum_kk.d1 += fx;
|
||||
fsum_kk.d2 += fy;
|
||||
fsum_kk.d3 += fz;
|
||||
}
|
||||
},fsum_kk);
|
||||
}
|
||||
if(qflag && muflag)
|
||||
Kokkos::parallel_reduce(Kokkos::RangePolicy<DeviceType, TagFixEfieldConstant<1,1> >(0,nlocal),*this,result);
|
||||
else if(qflag && !muflag)
|
||||
Kokkos::parallel_reduce(Kokkos::RangePolicy<DeviceType, TagFixEfieldConstant<1,0> >(0,nlocal),*this,result);
|
||||
else if(!qflag && muflag)
|
||||
Kokkos::parallel_reduce(Kokkos::RangePolicy<DeviceType, TagFixEfieldConstant<0,1> >(0,nlocal),*this,result);
|
||||
else
|
||||
Kokkos::parallel_reduce(Kokkos::RangePolicy<DeviceType, TagFixEfieldConstant<0,0> >(0,nlocal),*this,result);
|
||||
|
||||
copymode = 0;
|
||||
|
||||
@ -167,19 +152,7 @@ void FixEfieldKokkos<DeviceType>::post_force(int /*vflag*/)
|
||||
|
||||
atomKK->sync(Host,ALL_MASK); // this can be removed when variable class is ported to Kokkos
|
||||
|
||||
modify->clearstep_compute();
|
||||
|
||||
if (xstyle == EQUAL) ex = input->variable->compute_equal(xvar);
|
||||
else if (xstyle == ATOM)
|
||||
input->variable->compute_atom(xvar,igroup,&efield[0][0],4,0);
|
||||
if (ystyle == EQUAL) ey = input->variable->compute_equal(yvar);
|
||||
else if (ystyle == ATOM)
|
||||
input->variable->compute_atom(yvar,igroup,&efield[0][1],4,0);
|
||||
if (zstyle == EQUAL) ez = input->variable->compute_equal(zvar);
|
||||
else if (zstyle == ATOM)
|
||||
input->variable->compute_atom(zvar,igroup,&efield[0][2],4,0);
|
||||
|
||||
modify->addstep_compute(update->ntimestep + 1);
|
||||
FixEfield::update_efield_variables();
|
||||
|
||||
if (varflag == ATOM) { // this can be removed when variable class is ported to Kokkos
|
||||
k_efield.modify<LMPHostType>();
|
||||
@ -187,121 +160,154 @@ void FixEfieldKokkos<DeviceType>::post_force(int /*vflag*/)
|
||||
}
|
||||
|
||||
copymode = 1;
|
||||
// It would be more concise to use the operators below, but there is still an issue with unwrap (TODO below)
|
||||
//Kokkos::parallel_reduce(Kokkos::RangePolicy<DeviceType, TagFixEfieldNonConstant>(0,nlocal),*this,fsum_kk);
|
||||
{
|
||||
// local variables for lambda capture
|
||||
auto prd = Few<double,3>(domain->prd);
|
||||
auto h = Few<double,6>(domain->h);
|
||||
auto triclinic = domain->triclinic;
|
||||
auto l_ex = ex;
|
||||
auto l_ey = ey;
|
||||
auto l_ez = ez;
|
||||
auto l_d_efield = d_efield;
|
||||
|
||||
auto l_x = x;
|
||||
auto l_q = q;
|
||||
auto l_f = f;
|
||||
auto l_mask = mask;
|
||||
auto l_image = image;
|
||||
auto l_groupbit = groupbit;
|
||||
auto l_xstyle = xstyle;
|
||||
auto l_ystyle = ystyle;
|
||||
auto l_zstyle = zstyle;
|
||||
|
||||
Kokkos::parallel_reduce(nlocal, LAMMPS_LAMBDA(const int& i, double_4& fsum_kk) {
|
||||
if (l_mask[i] & l_groupbit) {
|
||||
Few<double,3> x_i;
|
||||
x_i[0] = l_x(i,0);
|
||||
x_i[1] = l_x(i,1);
|
||||
x_i[2] = l_x(i,2);
|
||||
auto unwrap = DomainKokkos::unmap(prd,h,triclinic,x_i,l_image(i));
|
||||
auto qtmp = l_q(i);
|
||||
auto fx = qtmp * l_ex;
|
||||
auto fy = qtmp * l_ey;
|
||||
auto fz = qtmp * l_ez;
|
||||
if (l_xstyle == ATOM) l_f(i,0) += qtmp * l_d_efield(i,0);
|
||||
else if (l_xstyle) l_f(i,0) += fx;
|
||||
if (l_ystyle == ATOM) l_f(i,1) += qtmp * l_d_efield(i,1);
|
||||
else if (l_ystyle) l_f(i,1) += fy;
|
||||
if (l_zstyle == ATOM) l_f(i,2) += qtmp * l_d_efield(i,2);
|
||||
else if (l_zstyle) l_f(i,2) += fz;
|
||||
fsum_kk.d0 -= fx * unwrap[0] + fy * unwrap[1] + fz * unwrap[2];
|
||||
fsum_kk.d1 += fx;
|
||||
fsum_kk.d2 += fy;
|
||||
fsum_kk.d3 += fz;
|
||||
}
|
||||
},fsum_kk);
|
||||
}
|
||||
if(qflag && muflag)
|
||||
Kokkos::parallel_reduce(Kokkos::RangePolicy<DeviceType, TagFixEfieldNonConstant<1,1> >(0,nlocal),*this,result);
|
||||
else if(qflag && !muflag)
|
||||
Kokkos::parallel_reduce(Kokkos::RangePolicy<DeviceType, TagFixEfieldNonConstant<1,0> >(0,nlocal),*this,result);
|
||||
else if(!qflag && muflag)
|
||||
Kokkos::parallel_reduce(Kokkos::RangePolicy<DeviceType, TagFixEfieldNonConstant<0,1> >(0,nlocal),*this,result);
|
||||
else
|
||||
Kokkos::parallel_reduce(Kokkos::RangePolicy<DeviceType, TagFixEfieldNonConstant<0,0> >(0,nlocal),*this,result);
|
||||
|
||||
copymode = 0;
|
||||
|
||||
}
|
||||
|
||||
atomKK->modified(execution_space, F_MASK);
|
||||
atomKK->modified(execution_space, datamask_modify);
|
||||
|
||||
fsum[0] = fsum_kk.d0;
|
||||
fsum[1] = fsum_kk.d1;
|
||||
fsum[2] = fsum_kk.d2;
|
||||
fsum[3] = fsum_kk.d3;
|
||||
}
|
||||
fsum[0]=result[0];
|
||||
fsum[1]=result[1];
|
||||
fsum[2]=result[2];
|
||||
fsum[3]=result[3];
|
||||
|
||||
template<class DeviceType>
|
||||
KOKKOS_INLINE_FUNCTION
|
||||
void FixEfieldKokkos<DeviceType>::operator()(TagFixEfieldConstant, const int &i, double_4& fsum_kk) const {
|
||||
if (mask[i] & groupbit) {
|
||||
if (region && !d_match[i]) return;
|
||||
if (vflag_global) {
|
||||
virial[0] += result[4];
|
||||
virial[1] += result[5];
|
||||
virial[2] += result[6];
|
||||
virial[3] += result[7];
|
||||
virial[4] += result[8];
|
||||
virial[5] += result[9];
|
||||
}
|
||||
|
||||
auto prd = Few<double,3>(domain->prd);
|
||||
auto h = Few<double,6>(domain->h);
|
||||
auto triclinic = domain->triclinic;
|
||||
Few<double,3> x_i;
|
||||
x_i[0] = x(i,0);
|
||||
x_i[1] = x(i,1);
|
||||
x_i[2] = x(i,2);
|
||||
auto unwrap = DomainKokkos::unmap(prd,h,triclinic,x_i,image(i));
|
||||
const F_FLOAT qtmp = q(i);
|
||||
const F_FLOAT fx = qtmp * ex;
|
||||
const F_FLOAT fy = qtmp * ey;
|
||||
const F_FLOAT fz = qtmp * ez;
|
||||
f(i,0) += fx;
|
||||
f(i,1) += fy;
|
||||
f(i,2) += fz;
|
||||
// TODO: access to unwrap below crashes
|
||||
fsum_kk.d0 -= fx * unwrap[0] + fy * unwrap[1] + fz * unwrap[2];
|
||||
fsum_kk.d1 += fx;
|
||||
fsum_kk.d2 += fy;
|
||||
fsum_kk.d3 += fz;
|
||||
if (vflag_atom) {
|
||||
k_vatom.template modify<DeviceType>();
|
||||
k_vatom.template sync<LMPHostType>();
|
||||
}
|
||||
}
|
||||
|
||||
template<class DeviceType>
|
||||
template<int QFLAG, int MUFLAG>
|
||||
KOKKOS_INLINE_FUNCTION
|
||||
void FixEfieldKokkos<DeviceType>::operator()(TagFixEfieldNonConstant, const int &i, double_4& fsum_kk) const {
|
||||
auto prd = Few<double,3>(domain->prd);
|
||||
auto h = Few<double,6>(domain->h);
|
||||
auto triclinic = domain->triclinic;
|
||||
if (mask[i] & groupbit) {
|
||||
void FixEfieldKokkos<DeviceType>::operator()(TagFixEfieldConstant<QFLAG,MUFLAG>, const int &i, value_type result) const {
|
||||
if ( QFLAG && (d_mask(i) & groupbit)) {
|
||||
if (region && !d_match[i]) return;
|
||||
|
||||
Few<double,3> x_i;
|
||||
x_i[0] = x(i,0);
|
||||
x_i[1] = x(i,1);
|
||||
x_i[2] = x(i,2);
|
||||
auto unwrap = DomainKokkos::unmap(prd,h,triclinic,x_i,image(i));
|
||||
const F_FLOAT qtmp = q[i];
|
||||
const F_FLOAT fx = qtmp * ex;
|
||||
const F_FLOAT fy = qtmp * ey;
|
||||
const F_FLOAT fz = qtmp * ez;
|
||||
if (xstyle == ATOM) f(i,0) += d_efield(i,0);
|
||||
else if (xstyle) f(i,0) += fx;
|
||||
if (ystyle == ATOM) f(i,1) += d_efield(i,1);
|
||||
else if (ystyle) f(i,1) += fy;
|
||||
if (zstyle == ATOM) f(i,2) += d_efield(i,2);
|
||||
else if (zstyle) f(i,2) += fz;
|
||||
// TODO: access to unwrap below crashes
|
||||
fsum_kk.d0 -= fx * unwrap[0] + fy * unwrap[1] + fz * unwrap[2];
|
||||
fsum_kk.d1 += fx;
|
||||
fsum_kk.d2 += fy;
|
||||
fsum_kk.d3 += fz;
|
||||
x_i[0] = d_x(i,0);
|
||||
x_i[1] = d_x(i,1);
|
||||
x_i[2] = d_x(i,2);
|
||||
auto unwrapKK = DomainKokkos::unmap(prd,h,triclinic,x_i,d_image(i));
|
||||
const F_FLOAT fx = d_q(i) * ex;
|
||||
const F_FLOAT fy = d_q(i) * ey;
|
||||
const F_FLOAT fz = d_q(i) * ez;
|
||||
d_f(i,0) += fx;
|
||||
d_f(i,1) += fy;
|
||||
d_f(i,2) += fz;
|
||||
result[0] -= fx * unwrapKK[0] + fy * unwrapKK[1] + fz * unwrapKK[2];
|
||||
result[1] += fx;
|
||||
result[2] += fy;
|
||||
result[3] += fz;
|
||||
|
||||
if (evflag) {
|
||||
double v[6];
|
||||
v[0] = fx * unwrapKK[0];
|
||||
v[1] = fy * unwrapKK[1];
|
||||
v[2] = fz * unwrapKK[2];
|
||||
v[3] = fx * unwrapKK[1];
|
||||
v[4] = fx * unwrapKK[2];
|
||||
v[5] = fy * unwrapKK[2];
|
||||
v_tally(result, i, v);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if (MUFLAG && (d_mask(i) & groupbit)) {
|
||||
if (region && !d_match[i]) return;
|
||||
d_torque(i,0) += ez * d_mu(i,1) - ey * d_mu(i,2);
|
||||
d_torque(i,1) += ex * d_mu(i,2) - ez * d_mu(i,0);
|
||||
d_torque(i,2) += ey * d_mu(i,0) - ex * d_mu(i,1);
|
||||
result[0] -= d_mu(i,0) * ex + d_mu(i,1) * ey + d_mu(i,2) * ez;
|
||||
}
|
||||
}
|
||||
|
||||
template<class DeviceType>
|
||||
template<int QFLAG, int MUFLAG>
|
||||
KOKKOS_INLINE_FUNCTION
|
||||
void FixEfieldKokkos<DeviceType>::operator()(TagFixEfieldNonConstant<QFLAG,MUFLAG>, const int &i, value_type result) const {
|
||||
if ( QFLAG && (d_mask(i) & groupbit)) {
|
||||
if (region && !d_match[i]) return;
|
||||
|
||||
F_FLOAT fx, fy, fz;
|
||||
|
||||
if (xstyle == ATOM) fx = qe2f * d_q(i) * d_efield(i,0);
|
||||
else fx = d_q(i) * ex;
|
||||
if (ystyle == ATOM) fy = qe2f * d_q(i) * d_efield(i,1);
|
||||
else fy = d_q(i) * ey;
|
||||
if (zstyle == ATOM) fz = qe2f * d_q(i) * d_efield(i,2);
|
||||
else fz = d_q(i) * ez;
|
||||
|
||||
d_f(i,0) += fx;
|
||||
d_f(i,1) += fy;
|
||||
d_f(i,2) += fz;
|
||||
result[1] += fx;
|
||||
result[2] += fy;
|
||||
result[3] += fz;
|
||||
|
||||
if (pstyle == ATOM) result[0] += qe2f * d_q(i) * d_efield(i,3);
|
||||
else if (estyle == ATOM) result[0] += d_efield(i,3);
|
||||
}
|
||||
|
||||
if (MUFLAG && (d_mask(i) & groupbit)) {
|
||||
if (region && !d_match[i]) return;
|
||||
d_torque(i,0) += ez * d_mu(i,1) - ey * d_mu(i,2);
|
||||
d_torque(i,1) += ex * d_mu(i,2) - ez * d_mu(i,0);
|
||||
d_torque(i,2) += ey * d_mu(i,0) - ex * d_mu(i,1);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
tally virial into global and per-atom accumulators
|
||||
i = local index of atom
|
||||
v = total virial for the interaction
|
||||
increment global virial by v
|
||||
increment per-atom virial by v
|
||||
this method can be used when fix computes forces in post_force()
|
||||
and the force depends on a distance to some external object
|
||||
e.g. fix wall/lj93: compute virial only on owned atoms
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
template <class DeviceType>
|
||||
KOKKOS_INLINE_FUNCTION
|
||||
void FixEfieldKokkos<DeviceType>::v_tally(value_type result, int i, double *v) const
|
||||
{
|
||||
if (vflag_global) {
|
||||
result[4] += v[0];
|
||||
result[5] += v[1];
|
||||
result[6] += v[2];
|
||||
result[7] += v[3];
|
||||
result[8] += v[4];
|
||||
result[9] += v[5];
|
||||
}
|
||||
|
||||
if (vflag_atom) {
|
||||
Kokkos::atomic_add(&(d_vatom(i,0)),v[0]);
|
||||
Kokkos::atomic_add(&(d_vatom(i,1)),v[1]);
|
||||
Kokkos::atomic_add(&(d_vatom(i,2)),v[2]);
|
||||
Kokkos::atomic_add(&(d_vatom(i,3)),v[3]);
|
||||
Kokkos::atomic_add(&(d_vatom(i,4)),v[4]);
|
||||
Kokkos::atomic_add(&(d_vatom(i,5)),v[5]);
|
||||
}
|
||||
}
|
||||
|
||||
@ -311,4 +317,3 @@ template class FixEfieldKokkos<LMPDeviceType>;
|
||||
template class FixEfieldKokkos<LMPHostType>;
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
@ -25,35 +25,20 @@ FixStyle(efield/kk/host,FixEfieldKokkos<LMPHostType>);
|
||||
|
||||
#include "fix_efield.h"
|
||||
#include "kokkos_type.h"
|
||||
#include "kokkos_few.h"
|
||||
|
||||
namespace LAMMPS_NS {
|
||||
|
||||
struct e_double_4 {
|
||||
double d0, d1, d2, d3;
|
||||
KOKKOS_INLINE_FUNCTION
|
||||
e_double_4() {
|
||||
d0 = d1 = d2 = d3 = 0.0;
|
||||
}
|
||||
KOKKOS_INLINE_FUNCTION
|
||||
e_double_4& operator+=(const e_double_4 &rhs) {
|
||||
d0 += rhs.d0;
|
||||
d1 += rhs.d1;
|
||||
d2 += rhs.d2;
|
||||
d3 += rhs.d3;
|
||||
return *this;
|
||||
}
|
||||
};
|
||||
typedef e_double_4 double_4;
|
||||
|
||||
template<int QFLAG, int MUFLAG>
|
||||
struct TagFixEfieldConstant{};
|
||||
|
||||
template<int QFLAG, int MUFLAG>
|
||||
struct TagFixEfieldNonConstant{};
|
||||
|
||||
template<class DeviceType>
|
||||
class FixEfieldKokkos : public FixEfield {
|
||||
public:
|
||||
typedef DeviceType device_type;
|
||||
typedef double_4 value_type;
|
||||
typedef ArrayTypes<DeviceType> AT;
|
||||
|
||||
FixEfieldKokkos(class LAMMPS *, int, char **);
|
||||
@ -61,22 +46,40 @@ class FixEfieldKokkos : public FixEfield {
|
||||
void init() override;
|
||||
void post_force(int) override;
|
||||
|
||||
KOKKOS_INLINE_FUNCTION
|
||||
void operator()(TagFixEfieldConstant, const int&, double_4&) const;
|
||||
typedef double value_type[];
|
||||
const int value_count = 10;
|
||||
|
||||
template<int QFLAG, int MUFLAG>
|
||||
KOKKOS_INLINE_FUNCTION
|
||||
void operator()(TagFixEfieldNonConstant, const int&, double_4&) const;
|
||||
void operator()(TagFixEfieldConstant<QFLAG,MUFLAG>, const int&, value_type) const;
|
||||
|
||||
template<int QFLAG, int MUFLAG>
|
||||
KOKKOS_INLINE_FUNCTION
|
||||
void operator()(TagFixEfieldNonConstant<QFLAG,MUFLAG>, const int&, value_type) const;
|
||||
|
||||
private:
|
||||
|
||||
DAT::tdual_ffloat_2d k_efield;
|
||||
typename AT::t_ffloat_2d_randomread d_efield;
|
||||
typename AT::t_int_1d d_match;
|
||||
|
||||
typename AT::t_x_array_randomread x;
|
||||
typename AT::t_float_1d_randomread q;
|
||||
typename AT::t_f_array f;
|
||||
typename AT::t_imageint_1d_randomread image;
|
||||
typename AT::t_int_1d_randomread mask;
|
||||
typename AT::t_x_array_randomread d_x;
|
||||
typename AT::t_float_1d_randomread d_q;
|
||||
typename AT::t_mu_array_randomread d_mu;
|
||||
typename AT::t_f_array d_f;
|
||||
typename AT::t_f_array d_torque;
|
||||
typename AT::t_imageint_1d_randomread d_image;
|
||||
typename AT::t_int_1d_randomread d_mask;
|
||||
|
||||
Few<double,3> prd;
|
||||
Few<double,6> h;
|
||||
int triclinic;
|
||||
|
||||
DAT::tdual_virial_array k_vatom;
|
||||
typename AT::t_virial_array d_vatom;
|
||||
|
||||
KOKKOS_INLINE_FUNCTION
|
||||
void v_tally(value_type, int, double*) const;
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@ -13,7 +13,8 @@
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
Contributing author: Stan Moore (SNL)
|
||||
Contributing authors: Stan Moore (SNL)
|
||||
Mitch Murphy (alphataubio@gmail.com)
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
#include "fix_nh_kokkos.h"
|
||||
@ -37,6 +38,7 @@ using namespace FixConst;
|
||||
|
||||
static constexpr double DELTAFLIP = 0.1;
|
||||
static constexpr double TILTMAX = 1.5;
|
||||
static constexpr double EPSILON = 1.0e-6;
|
||||
|
||||
enum{NOBIAS,BIAS};
|
||||
enum{NONE,XYZ,XY,YZ,XZ};
|
||||
@ -50,6 +52,7 @@ template<class DeviceType>
|
||||
FixNHKokkos<DeviceType>::FixNHKokkos(LAMMPS *lmp, int narg, char **arg) : FixNH(lmp, narg, arg)
|
||||
{
|
||||
kokkosable = 1;
|
||||
atomKK = (AtomKokkos *)atom;
|
||||
domainKK = (DomainKokkos *) domain;
|
||||
execution_space = ExecutionSpaceFromDevice<DeviceType>::space;
|
||||
|
||||
@ -89,18 +92,21 @@ void FixNHKokkos<DeviceType>::setup(int /*vflag*/)
|
||||
} else if (pstat_flag) {
|
||||
|
||||
// t0 = reference temperature for masses
|
||||
// set equal to either ptemp or the current temperature
|
||||
// cannot be done in init() b/c temperature cannot be called there
|
||||
// is b/c Modify::init() inits computes after fixes due to dof dependence
|
||||
// guesstimate a unit-dependent t0 if actual T = 0.0
|
||||
// error if T less than 1e-6
|
||||
// if it was read in from a restart file, leave it be
|
||||
|
||||
if (t0 == 0.0) {
|
||||
atomKK->sync(temperature->execution_space,temperature->datamask_read);
|
||||
t0 = temperature->compute_scalar();
|
||||
atomKK->modified(temperature->execution_space,temperature->datamask_modify);
|
||||
if (t0 == 0.0) {
|
||||
if (strcmp(update->unit_style,"lj") == 0) t0 = 1.0;
|
||||
else t0 = 300.0;
|
||||
if (p_temp_flag) {
|
||||
t0 = p_temp;
|
||||
} else {
|
||||
atomKK->sync(temperature->execution_space,temperature->datamask_read);
|
||||
t0 = temperature->compute_scalar();
|
||||
atomKK->modified(temperature->execution_space,temperature->datamask_modify);
|
||||
if (t0 < EPSILON)
|
||||
error->all(FLERR,"Current temperature too close to zero, consider using ptemp keyword");
|
||||
}
|
||||
}
|
||||
t_target = t0;
|
||||
@ -298,13 +304,14 @@ void FixNHKokkos<DeviceType>::remap()
|
||||
|
||||
// convert pertinent atoms and rigid bodies to lamda coords
|
||||
|
||||
domainKK->x2lamda(nlocal);
|
||||
//if (allremap) domainKK->x2lamda(nlocal);
|
||||
//else {
|
||||
// for (i = 0; i < nlocal; i++)
|
||||
// if (mask[i] & dilate_group_bit)
|
||||
// domain->x2lamda(x[i],x[i]);
|
||||
//}
|
||||
x = atomKK->k_x.template view<DeviceType>();
|
||||
|
||||
if (allremap) domainKK->x2lamda(nlocal);
|
||||
else {
|
||||
for ( int i = 0; i < nlocal; i++)
|
||||
if (mask[i] & dilate_group_bit)
|
||||
domainKK->x2lamda(&x(i,0), &x(i,0));
|
||||
}
|
||||
|
||||
if (rfix.size() > 0)
|
||||
error->all(FLERR,"Cannot (yet) use rigid bodies with fix nh and Kokkos");
|
||||
@ -446,13 +453,12 @@ void FixNHKokkos<DeviceType>::remap()
|
||||
|
||||
// convert pertinent atoms and rigid bodies back to box coords
|
||||
|
||||
domainKK->lamda2x(nlocal);
|
||||
//if (allremap) domainKK->lamda2x(nlocal);
|
||||
//else {
|
||||
// for (i = 0; i < nlocal; i++)
|
||||
// if (mask[i] & dilate_group_bit)
|
||||
// domain->lamda2x(x[i],x[i]);
|
||||
//}
|
||||
if (allremap) domainKK->lamda2x(nlocal);
|
||||
else {
|
||||
for ( int i = 0; i < nlocal; i++)
|
||||
if (mask[i] & dilate_group_bit)
|
||||
domainKK->lamda2x(&x(i,0), &x(i,0));
|
||||
}
|
||||
|
||||
// for (auto &ifix : rfix) ifix->deform(1);
|
||||
}
|
||||
|
||||
@ -12,11 +12,19 @@
|
||||
See the README file in the top-level LAMMPS directory.
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
Contributing author: Mitch Murphy (alphataubio@gmail.com)
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
#include "fix_wall_lj93_kokkos.h"
|
||||
|
||||
#include "atom_masks.h"
|
||||
#include "atom_kokkos.h"
|
||||
#include "error.h"
|
||||
#include "atom_masks.h"
|
||||
#include "input.h"
|
||||
#include "memory_kokkos.h"
|
||||
|
||||
#include <iostream>
|
||||
|
||||
using namespace LAMMPS_NS;
|
||||
|
||||
@ -29,9 +37,91 @@ FixWallLJ93Kokkos<DeviceType>::FixWallLJ93Kokkos(LAMMPS *lmp, int narg, char **a
|
||||
kokkosable = 1;
|
||||
atomKK = (AtomKokkos *) atom;
|
||||
execution_space = ExecutionSpaceFromDevice<DeviceType>::space;
|
||||
datamask_read = EMPTY_MASK;
|
||||
datamask_modify = EMPTY_MASK;
|
||||
virial_global_flag = virial_peratom_flag = 0;
|
||||
datamask_read = X_MASK | V_MASK | MASK_MASK;
|
||||
datamask_modify = F_MASK;
|
||||
|
||||
memoryKK->create_kokkos(k_cutoff,6,"wall_lj93:cutoff");
|
||||
memoryKK->create_kokkos(k_coeff1,6,"wall_lj93:coeff1");
|
||||
memoryKK->create_kokkos(k_coeff2,6,"wall_lj93:coeff2");
|
||||
memoryKK->create_kokkos(k_coeff3,6,"wall_lj93:coeff3");
|
||||
memoryKK->create_kokkos(k_coeff4,6,"wall_lj93:coeff4");
|
||||
memoryKK->create_kokkos(k_offset,6,"wall_lj93:offset");
|
||||
|
||||
d_cutoff = k_cutoff.template view<DeviceType>();
|
||||
d_coeff1 = k_coeff1.template view<DeviceType>();
|
||||
d_coeff2 = k_coeff2.template view<DeviceType>();
|
||||
d_coeff3 = k_coeff3.template view<DeviceType>();
|
||||
d_coeff4 = k_coeff4.template view<DeviceType>();
|
||||
d_offset = k_offset.template view<DeviceType>();
|
||||
}
|
||||
|
||||
template<class DeviceType>
|
||||
FixWallLJ93Kokkos<DeviceType>::~FixWallLJ93Kokkos()
|
||||
{
|
||||
if (copymode) return;
|
||||
|
||||
memoryKK->destroy_kokkos(k_cutoff);
|
||||
memoryKK->destroy_kokkos(k_coeff1);
|
||||
memoryKK->destroy_kokkos(k_coeff2);
|
||||
memoryKK->destroy_kokkos(k_coeff3);
|
||||
memoryKK->destroy_kokkos(k_coeff4);
|
||||
memoryKK->destroy_kokkos(k_offset);
|
||||
memoryKK->destroy_kokkos(k_vatom,vatom);
|
||||
}
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
template <class DeviceType>
|
||||
void FixWallLJ93Kokkos<DeviceType>::precompute(int m)
|
||||
{
|
||||
FixWallLJ93::precompute(m);
|
||||
|
||||
for( int i=0 ; i<6 ; i++ ) {
|
||||
k_cutoff.h_view(i) = cutoff[i];
|
||||
k_coeff1.h_view(i) = coeff1[i];
|
||||
k_coeff2.h_view(i) = coeff2[i];
|
||||
k_coeff3.h_view(i) = coeff3[i];
|
||||
k_coeff4.h_view(i) = coeff4[i];
|
||||
k_offset.h_view(i) = offset[i];
|
||||
}
|
||||
|
||||
k_cutoff.template modify<LMPHostType>();
|
||||
k_coeff1.template modify<LMPHostType>();
|
||||
k_coeff2.template modify<LMPHostType>();
|
||||
k_coeff3.template modify<LMPHostType>();
|
||||
k_coeff4.template modify<LMPHostType>();
|
||||
k_offset.template modify<LMPHostType>();
|
||||
|
||||
k_cutoff.template sync<DeviceType>();
|
||||
k_coeff1.template sync<DeviceType>();
|
||||
k_coeff2.template sync<DeviceType>();
|
||||
k_coeff3.template sync<DeviceType>();
|
||||
k_coeff4.template sync<DeviceType>();
|
||||
k_offset.template sync<DeviceType>();
|
||||
|
||||
}
|
||||
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
template <class DeviceType>
|
||||
void FixWallLJ93Kokkos<DeviceType>::post_force(int vflag)
|
||||
{
|
||||
|
||||
// reallocate per-atom arrays if necessary
|
||||
|
||||
if (vflag_atom) {
|
||||
memoryKK->destroy_kokkos(k_vatom,vatom);
|
||||
memoryKK->create_kokkos(k_vatom,vatom,maxvatom,"wall_lj93:vatom");
|
||||
d_vatom = k_vatom.template view<DeviceType>();
|
||||
}
|
||||
|
||||
FixWallLJ93::post_force(vflag);
|
||||
|
||||
if (vflag_atom) {
|
||||
k_vatom.template modify<DeviceType>();
|
||||
k_vatom.template sync<LMPHostType>();
|
||||
}
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
@ -47,47 +137,89 @@ void FixWallLJ93Kokkos<DeviceType>::wall_particle(int m_in, int which, double co
|
||||
m = m_in;
|
||||
coord = coord_in;
|
||||
|
||||
atomKK->sync(execution_space, X_MASK|F_MASK|MASK_MASK);
|
||||
x = atomKK->k_x.view<DeviceType>();
|
||||
f = atomKK->k_f.view<DeviceType>();
|
||||
mask = atomKK->k_mask.view<DeviceType>();
|
||||
|
||||
int nlocal = atom->nlocal;
|
||||
atomKK->sync(execution_space,datamask_read);
|
||||
d_x = atomKK->k_x.template view<DeviceType>();
|
||||
d_f = atomKK->k_f.template view<DeviceType>();
|
||||
d_mask = atomKK->k_mask.template view<DeviceType>();
|
||||
int nlocal = atomKK->nlocal;
|
||||
|
||||
dim = which / 2;
|
||||
side = which % 2;
|
||||
if (side == 0) side = -1;
|
||||
|
||||
double result[13] = {0.0};
|
||||
|
||||
copymode = 1;
|
||||
FixWallLJ93KokkosFunctor<DeviceType> wp_functor(this);
|
||||
Kokkos::parallel_reduce(nlocal,wp_functor,ewall);
|
||||
Kokkos::parallel_reduce(nlocal,*this,result);
|
||||
copymode = 0;
|
||||
|
||||
atomKK->modified(execution_space, F_MASK);
|
||||
ewall[0] += result[0];
|
||||
ewall[m+1] += result[m+1];
|
||||
atomKK->modified(execution_space,datamask_modify);
|
||||
|
||||
if (vflag_global) {
|
||||
virial[0] += result[7];
|
||||
virial[1] += result[8];
|
||||
virial[2] += result[9];
|
||||
virial[3] += result[10];
|
||||
virial[4] += result[11];
|
||||
virial[5] += result[12];
|
||||
}
|
||||
}
|
||||
|
||||
template <class DeviceType>
|
||||
KOKKOS_INLINE_FUNCTION
|
||||
void FixWallLJ93Kokkos<DeviceType>::wall_particle_item(int i, value_type ewall) const {
|
||||
if (mask(i) & groupbit) {
|
||||
void FixWallLJ93Kokkos<DeviceType>::operator()(const int &i, value_type result) const {
|
||||
if (d_mask(i) & groupbit) {
|
||||
double delta;
|
||||
if (side < 0) delta = x(i,dim) - coord;
|
||||
else delta = coord - x(i,dim);
|
||||
if (delta >= cutoff[m]) return;
|
||||
if (side < 0) delta = d_x(i,dim) - coord;
|
||||
else delta = coord - d_x(i,dim);
|
||||
if (delta >= d_cutoff(m)) return;
|
||||
if (delta <= 0.0)
|
||||
Kokkos::abort("Particle on or inside fix wall surface");
|
||||
double rinv = 1.0/delta;
|
||||
double r2inv = rinv*rinv;
|
||||
double r4inv = r2inv*r2inv;
|
||||
double r10inv = r4inv*r4inv*r2inv;
|
||||
double fwall = side * (coeff1[m]*r10inv - coeff2[m]*r4inv);
|
||||
f(i,dim) -= fwall;
|
||||
ewall[0] += coeff3[m]*r4inv*r4inv*rinv -
|
||||
coeff4[m]*r2inv*rinv - offset[m];
|
||||
ewall[m+1] += fwall;
|
||||
double fwall = side * (d_coeff1(m)*r10inv - d_coeff2(m)*r4inv);
|
||||
d_f(i,dim) -= fwall;
|
||||
result[0] += d_coeff3(m)*r4inv*r4inv*rinv - d_coeff4(m)*r2inv*rinv - d_offset(m);
|
||||
result[m+1] += fwall;
|
||||
|
||||
if (evflag) {
|
||||
double vn;
|
||||
if (side < 0)
|
||||
vn = -fwall * delta;
|
||||
else
|
||||
vn = fwall * delta;
|
||||
v_tally(result, dim, i, vn);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
tally virial component into global and per-atom accumulators
|
||||
n = index of virial component (0-5)
|
||||
i = local index of atom
|
||||
vn = nth component of virial for the interaction
|
||||
increment nth component of global virial by vn
|
||||
increment nth component of per-atom virial by vn
|
||||
this method can be used when fix computes forces in post_force()
|
||||
and the force depends on a distance to some external object
|
||||
e.g. fix wall/lj93: compute virial only on owned atoms
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
template <class DeviceType>
|
||||
KOKKOS_INLINE_FUNCTION
|
||||
void FixWallLJ93Kokkos<DeviceType>::v_tally(value_type result, int n, int i, double vn) const
|
||||
{
|
||||
if (vflag_global)
|
||||
result[n+7] += vn;
|
||||
|
||||
if (vflag_atom)
|
||||
Kokkos::atomic_add(&(d_vatom(i,n)),vn);
|
||||
}
|
||||
|
||||
namespace LAMMPS_NS {
|
||||
template class FixWallLJ93Kokkos<LMPDeviceType>;
|
||||
#ifdef LMP_KOKKOS_GPU
|
||||
|
||||
@ -33,38 +33,37 @@ class FixWallLJ93Kokkos : public FixWallLJ93 {
|
||||
public:
|
||||
typedef DeviceType device_type;
|
||||
typedef ArrayTypes<DeviceType> AT;
|
||||
typedef double value_type[];
|
||||
|
||||
FixWallLJ93Kokkos(class LAMMPS *, int, char **);
|
||||
~FixWallLJ93Kokkos() override;
|
||||
void precompute(int) override;
|
||||
void post_force(int) override;
|
||||
void wall_particle(int, int, double) override;
|
||||
|
||||
int m;
|
||||
|
||||
typedef double value_type[];
|
||||
const int value_count = 13;
|
||||
|
||||
KOKKOS_INLINE_FUNCTION
|
||||
void wall_particle_item(int, value_type) const;
|
||||
void operator()(const int&, value_type) const;
|
||||
|
||||
private:
|
||||
int dim,side;
|
||||
double coord;
|
||||
|
||||
typename AT::t_x_array x;
|
||||
typename AT::t_f_array f;
|
||||
typename AT::t_int_1d mask;
|
||||
};
|
||||
typename AT::t_x_array d_x;
|
||||
typename AT::t_f_array d_f;
|
||||
typename AT::t_int_1d d_mask;
|
||||
|
||||
template <class DeviceType>
|
||||
struct FixWallLJ93KokkosFunctor {
|
||||
typedef DeviceType device_type ;
|
||||
typedef double value_type[];
|
||||
const int value_count;
|
||||
DAT::tdual_virial_array k_vatom;
|
||||
typename AT::t_virial_array d_vatom;
|
||||
|
||||
typename AT::tdual_ffloat_1d k_cutoff,k_coeff1,k_coeff2,k_coeff3,k_coeff4,k_offset;
|
||||
typename AT::t_ffloat_1d d_cutoff,d_coeff1,d_coeff2,d_coeff3,d_coeff4,d_offset;
|
||||
|
||||
FixWallLJ93Kokkos<DeviceType> c;
|
||||
FixWallLJ93KokkosFunctor(FixWallLJ93Kokkos<DeviceType>* c_ptr):
|
||||
value_count(c_ptr->m+1), c(*c_ptr) {}
|
||||
KOKKOS_INLINE_FUNCTION
|
||||
void operator()(const int i, value_type ewall) const {
|
||||
c.wall_particle_item(i,ewall);
|
||||
}
|
||||
void v_tally(value_type, int, int, double) const;
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@ -23,10 +23,6 @@
|
||||
|
||||
using namespace LAMMPS_NS;
|
||||
|
||||
enum{XLO=0,XHI=1,YLO=2,YHI=3,ZLO=4,ZHI=5};
|
||||
enum{NONE=0,EDGE,CONSTANT,VARIABLE};
|
||||
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
template<class DeviceType>
|
||||
|
||||
@ -1663,6 +1663,27 @@ void Domain::remap(double *x)
|
||||
if (triclinic) lamda2x(coord,x);
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
remap all points into the periodic box no matter how far away
|
||||
adjust 3 image flags encoded in image accordingly
|
||||
resulting coord must satisfy lo <= coord < hi
|
||||
MAX is important since coord - prd < lo can happen when coord = hi
|
||||
for triclinic, point is converted to lamda coords (0-1) before doing remap
|
||||
image = 10 bits for each dimension
|
||||
increment/decrement in wrap-around fashion
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
void Domain::remap_all()
|
||||
{
|
||||
double **x = atom->x;
|
||||
imageint *image = atom->image;
|
||||
int nlocal = atom->nlocal;
|
||||
|
||||
if (triclinic) x2lamda(nlocal);
|
||||
for (int i = 0; i < nlocal; i++) remap(x[i],image[i]);
|
||||
if (triclinic) lamda2x(nlocal);
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
remap xnew to be within half box length of xold
|
||||
do it directly, not iteratively, in case is far away
|
||||
@ -2188,6 +2209,19 @@ void Domain::lamda2x(int n)
|
||||
}
|
||||
}
|
||||
|
||||
void Domain::lamda2x(int n, int groupbit)
|
||||
{
|
||||
double **x = atom->x;
|
||||
int *mask = atom->mask;
|
||||
|
||||
for (int i = 0; i < n; i++)
|
||||
if (mask[i] & groupbit) {
|
||||
x[i][0] = h[0]*x[i][0] + h[5]*x[i][1] + h[4]*x[i][2] + boxlo[0];
|
||||
x[i][1] = h[1]*x[i][1] + h[3]*x[i][2] + boxlo[1];
|
||||
x[i][2] = h[2]*x[i][2] + boxlo[2];
|
||||
}
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
convert box coords to triclinic 0-1 lamda coords for all N atoms
|
||||
lamda = H^-1 (x - x0)
|
||||
@ -2209,6 +2243,25 @@ void Domain::x2lamda(int n)
|
||||
}
|
||||
}
|
||||
|
||||
void Domain::x2lamda(int n, int groupbit)
|
||||
{
|
||||
double delta[3];
|
||||
double **x = atom->x;
|
||||
int *mask = atom->mask;
|
||||
|
||||
for (int i = 0; i < n; i++)
|
||||
if (mask[i] & groupbit) {
|
||||
delta[0] = x[i][0] - boxlo[0];
|
||||
delta[1] = x[i][1] - boxlo[1];
|
||||
delta[2] = x[i][2] - boxlo[2];
|
||||
|
||||
x[i][0] = h_inv[0]*delta[0] + h_inv[5]*delta[1] + h_inv[4]*delta[2];
|
||||
x[i][1] = h_inv[1]*delta[1] + h_inv[3]*delta[2];
|
||||
x[i][2] = h_inv[2]*delta[2];
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
convert triclinic 0-1 lamda coords to box coords for one atom
|
||||
x = H lamda + x0;
|
||||
|
||||
@ -136,6 +136,7 @@ class Domain : protected Pointers {
|
||||
void closest_image(const double *const, const double *const, double *const);
|
||||
void remap(double *, imageint &);
|
||||
void remap(double *);
|
||||
void remap_all();
|
||||
void remap_near(double *, double *);
|
||||
void unmap_inv(double *x, imageint);
|
||||
void unmap(double *, imageint);
|
||||
@ -166,7 +167,9 @@ class Domain : protected Pointers {
|
||||
void boundary_string(char *);
|
||||
|
||||
virtual void lamda2x(int);
|
||||
virtual void lamda2x(int, int);
|
||||
virtual void x2lamda(int);
|
||||
virtual void x2lamda(int, int);
|
||||
virtual void lamda2x(double *, double *);
|
||||
virtual void x2lamda(double *, double *);
|
||||
int inside(double *);
|
||||
|
||||
@ -648,11 +648,7 @@ void FixDeform::pre_exchange()
|
||||
domain->set_local_box();
|
||||
|
||||
domain->image_flip(flipxy, flipxz, flipyz);
|
||||
|
||||
double **x = atom->x;
|
||||
imageint *image = atom->image;
|
||||
int nlocal = atom->nlocal;
|
||||
for (int i = 0; i < nlocal; i++) domain->remap(x[i],image[i]);
|
||||
domain->remap_all();
|
||||
|
||||
domain->x2lamda(atom->nlocal);
|
||||
irregular->migrate_atoms();
|
||||
@ -898,13 +894,7 @@ void FixDeform::update_domain()
|
||||
// convert atoms and rigid bodies to lamda coords
|
||||
|
||||
if (remapflag == Domain::X_REMAP) {
|
||||
double **x = atom->x;
|
||||
int *mask = atom->mask;
|
||||
int nlocal = atom->nlocal;
|
||||
|
||||
for (int i = 0; i < nlocal; i++)
|
||||
if (mask[i] & groupbit)
|
||||
domain->x2lamda(x[i], x[i]);
|
||||
domain->x2lamda(atom->nlocal, groupbit);
|
||||
|
||||
for (auto &ifix : rfix)
|
||||
ifix->deform(0);
|
||||
@ -937,13 +927,7 @@ void FixDeform::update_domain()
|
||||
// convert atoms and rigid bodies back to box coords
|
||||
|
||||
if (remapflag == Domain::X_REMAP) {
|
||||
double **x = atom->x;
|
||||
int *mask = atom->mask;
|
||||
int nlocal = atom->nlocal;
|
||||
|
||||
for (int i = 0; i < nlocal; i++)
|
||||
if (mask[i] & groupbit)
|
||||
domain->lamda2x(x[i], x[i]);
|
||||
domain->lamda2x(atom->nlocal, groupbit);
|
||||
|
||||
for (auto &ifix : rfix)
|
||||
ifix->deform(1);
|
||||
|
||||
@ -318,7 +318,6 @@ void FixEfield::post_force(int vflag)
|
||||
double **x = atom->x;
|
||||
double fx, fy, fz;
|
||||
double v[6], unwrap[3];
|
||||
;
|
||||
|
||||
// constant efield
|
||||
|
||||
|
||||
@ -27,8 +27,6 @@
|
||||
using namespace LAMMPS_NS;
|
||||
using namespace FixConst;
|
||||
|
||||
enum { XLO = 0, XHI = 1, YLO = 2, YHI = 3, ZLO = 4, ZHI = 5 };
|
||||
|
||||
static const char *wallpos[] = {"xlo", "xhi", "ylo", "yhi", "zlo", "zhi"};
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
@ -20,6 +20,7 @@ namespace LAMMPS_NS {
|
||||
|
||||
class FixWall : public Fix {
|
||||
public:
|
||||
enum { XLO = 0, XHI = 1, YLO = 2, YHI = 3, ZLO = 4, ZHI = 5 };
|
||||
int nwall;
|
||||
int wallwhich[6];
|
||||
double coord0[6];
|
||||
|
||||
@ -70,6 +70,7 @@ public:
|
||||
std::vector<coord_t> restart_pos;
|
||||
std::vector<coord_t> run_vel;
|
||||
std::vector<coord_t> restart_vel;
|
||||
std::vector<coord_t> run_torque;
|
||||
|
||||
TestConfig() :
|
||||
lammps_version(""), date_generated(""), basename(""), epsilon(1.0e-14), input_file(""),
|
||||
@ -94,6 +95,7 @@ public:
|
||||
restart_pos.clear();
|
||||
run_vel.clear();
|
||||
restart_vel.clear();
|
||||
run_torque.clear();
|
||||
global_vector.clear();
|
||||
}
|
||||
TestConfig(const TestConfig &) = delete;
|
||||
|
||||
@ -48,6 +48,7 @@ TestConfigReader::TestConfigReader(TestConfig &config) : config(config)
|
||||
consumers["run_forces"] = &TestConfigReader::run_forces;
|
||||
consumers["run_pos"] = &TestConfigReader::run_pos;
|
||||
consumers["run_vel"] = &TestConfigReader::run_vel;
|
||||
consumers["run_torque"] = &TestConfigReader::run_torque;
|
||||
|
||||
consumers["pair_style"] = &TestConfigReader::pair_style;
|
||||
consumers["pair_coeff"] = &TestConfigReader::pair_coeff;
|
||||
@ -228,6 +229,21 @@ void TestConfigReader::run_vel(const yaml_event_t &event)
|
||||
}
|
||||
}
|
||||
|
||||
void TestConfigReader::run_torque(const yaml_event_t &event)
|
||||
{
|
||||
config.run_torque.clear();
|
||||
config.run_torque.resize(config.natoms + 1);
|
||||
std::stringstream data((char *)event.data.scalar.value);
|
||||
std::string line;
|
||||
|
||||
while (std::getline(data, line, '\n')) {
|
||||
int tag;
|
||||
coord_t xyz;
|
||||
sscanf(line.c_str(), "%d %lg %lg %lg", &tag, &xyz.x, &xyz.y, &xyz.z);
|
||||
config.run_torque[tag] = xyz;
|
||||
}
|
||||
}
|
||||
|
||||
void TestConfigReader::pair_style(const yaml_event_t &event)
|
||||
{
|
||||
config.pair_style = (char *)event.data.scalar.value;
|
||||
|
||||
@ -41,6 +41,7 @@ public:
|
||||
void run_forces(const yaml_event_t &event);
|
||||
void run_pos(const yaml_event_t &event);
|
||||
void run_vel(const yaml_event_t &event);
|
||||
void run_torque(const yaml_event_t &event);
|
||||
void pair_style(const yaml_event_t &event);
|
||||
void pair_coeff(const yaml_event_t &event);
|
||||
void bond_style(const yaml_event_t &event);
|
||||
|
||||
@ -364,7 +364,7 @@ TEST(DihedralStyle, plain)
|
||||
|
||||
stats.reset();
|
||||
auto *icompute = lmp->modify->get_compute_by_id("sum");
|
||||
double energy = 0.0;
|
||||
double energy = 0.0;
|
||||
if (icompute) energy = icompute->compute_scalar();
|
||||
EXPECT_FP_LE_WITH_EPS(dihedral->energy, test_config.run_energy, epsilon);
|
||||
EXPECT_FP_LE_WITH_EPS(dihedral->energy, energy, epsilon);
|
||||
@ -486,7 +486,7 @@ TEST(DihedralStyle, omp)
|
||||
|
||||
stats.reset();
|
||||
auto *icompute = lmp->modify->get_compute_by_id("sum");
|
||||
double energy = 0.0;
|
||||
double energy = 0.0;
|
||||
if (icompute) energy = icompute->compute_scalar();
|
||||
EXPECT_FP_LE_WITH_EPS(dihedral->energy, test_config.run_energy, epsilon);
|
||||
// TODO: this is currently broken for OPENMP with dihedral style hybrid
|
||||
@ -542,8 +542,9 @@ TEST(DihedralStyle, kokkos_omp)
|
||||
if (test_config.skip_tests.count(test_info_->name())) GTEST_SKIP();
|
||||
if (!Info::has_accelerator_feature("KOKKOS", "api", "openmp")) GTEST_SKIP();
|
||||
|
||||
LAMMPS::argv args = {"DihedralStyle", "-log", "none", "-echo", "screen", "-nocite",
|
||||
"-k", "on", "t", "4", "-sf", "kk"};
|
||||
LAMMPS::argv args = {"DihedralStyle", "-log", "none", "-echo", "screen",
|
||||
"-nocite", "-k", "on", "t", "4",
|
||||
"-sf", "kk"};
|
||||
|
||||
::testing::internal::CaptureStdout();
|
||||
LAMMPS *lmp = init_lammps(args, test_config, true);
|
||||
@ -595,9 +596,9 @@ TEST(DihedralStyle, kokkos_omp)
|
||||
|
||||
// FIXME: this is currently broken ??? for KOKKOS with dihedral style hybrid
|
||||
// needs to be fixed in the main code somewhere. Not sure where, though.
|
||||
//if (test_config.dihedral_style.substr(0, 6) != "hybrid")
|
||||
// if (test_config.dihedral_style.substr(0, 6) != "hybrid")
|
||||
// EXPECT_FP_LE_WITH_EPS(dihedral->energy, energy, epsilon);
|
||||
//if (print_stats) std::cerr << "run_energy stats, newton on: " << stats << std::endl;
|
||||
// if (print_stats) std::cerr << "run_energy stats, newton on: " << stats << std::endl;
|
||||
|
||||
if (!verbose) ::testing::internal::CaptureStdout();
|
||||
cleanup_lammps(lmp, test_config);
|
||||
@ -631,7 +632,7 @@ TEST(DihedralStyle, kokkos_omp)
|
||||
|
||||
// FIXME: this is currently broken ??? for KOKKOS with dihedral style hybrid
|
||||
// needs to be fixed in the main code somewhere. Not sure where, though.
|
||||
//if (test_config.dihedral_style.substr(0, 6) != "hybrid")
|
||||
// if (test_config.dihedral_style.substr(0, 6) != "hybrid")
|
||||
// EXPECT_FP_LE_WITH_EPS(dihedral->energy, energy, epsilon);
|
||||
|
||||
if (print_stats) std::cerr << "run_energy stats, newton off:" << stats << std::endl;
|
||||
|
||||
@ -244,6 +244,20 @@ void generate_yaml_file(const char *outfile, const TestConfig &config)
|
||||
block += fmt::format("{:3} {:23.16e} {:23.16e} {:23.16e}\n", i, v[j][0], v[j][1], v[j][2]);
|
||||
}
|
||||
writer.emit_block("run_vel", block);
|
||||
|
||||
// run_torque
|
||||
|
||||
if (lmp->atom->torque_flag) {
|
||||
block.clear();
|
||||
auto *t = lmp->atom->torque;
|
||||
for (int i = 1; i <= natoms; ++i) {
|
||||
const int j = lmp->atom->map(i);
|
||||
block +=
|
||||
fmt::format("{:3} {:23.16e} {:23.16e} {:23.16e}\n", i, t[j][0], t[j][1], t[j][2]);
|
||||
}
|
||||
writer.emit_block("run_torque", block);
|
||||
}
|
||||
|
||||
cleanup_lammps(lmp, config);
|
||||
}
|
||||
|
||||
@ -288,6 +302,9 @@ TEST(FixTimestep, plain)
|
||||
|
||||
EXPECT_POSITIONS("run_pos (normal run, verlet)", lmp->atom, test_config.run_pos, epsilon);
|
||||
EXPECT_VELOCITIES("run_vel (normal run, verlet)", lmp->atom, test_config.run_vel, epsilon);
|
||||
if (lmp->atom->torque_flag)
|
||||
EXPECT_TORQUES("run_torques (normal run, verlet)", lmp->atom, test_config.run_torque,
|
||||
epsilon);
|
||||
|
||||
auto *ifix = lmp->modify->get_fix_by_id("test");
|
||||
if (!ifix) {
|
||||
@ -337,6 +354,8 @@ TEST(FixTimestep, plain)
|
||||
|
||||
EXPECT_POSITIONS("run_pos (restart, verlet)", lmp->atom, test_config.run_pos, epsilon);
|
||||
EXPECT_VELOCITIES("run_vel (restart, verlet)", lmp->atom, test_config.run_vel, epsilon);
|
||||
if (lmp->atom->torque_flag)
|
||||
EXPECT_TORQUES("run_torque (restart, verlet)", lmp->atom, test_config.run_torque, epsilon);
|
||||
|
||||
ifix = lmp->modify->get_fix_by_id("test");
|
||||
if (!ifix) {
|
||||
@ -832,3 +851,177 @@ TEST(FixTimestep, omp)
|
||||
cleanup_lammps(lmp, test_config);
|
||||
if (!verbose) ::testing::internal::GetCapturedStdout();
|
||||
};
|
||||
|
||||
TEST(FixTimestep, kokkos_omp)
|
||||
{
|
||||
if (!LAMMPS::is_installed_pkg("KOKKOS")) GTEST_SKIP();
|
||||
if (test_config.skip_tests.count(test_info_->name())) GTEST_SKIP();
|
||||
if (!Info::has_accelerator_feature("KOKKOS", "api", "openmp")) GTEST_SKIP();
|
||||
|
||||
LAMMPS::argv args = {"FixTimestep", "-log", "none", "-echo", "screen", "-nocite",
|
||||
"-k", "on", "t", "4", "-sf", "kk"};
|
||||
|
||||
::testing::internal::CaptureStdout();
|
||||
LAMMPS *lmp = init_lammps(args, test_config);
|
||||
std::string output = ::testing::internal::GetCapturedStdout();
|
||||
if (verbose) std::cout << output;
|
||||
|
||||
if (!lmp) {
|
||||
std::cerr << "One or more prerequisite styles with /kk suffix\n"
|
||||
"are not available in this LAMMPS configuration:\n";
|
||||
for (auto &prerequisite : test_config.prerequisites) {
|
||||
std::cerr << prerequisite.first << "_style " << prerequisite.second << "\n";
|
||||
}
|
||||
GTEST_SKIP();
|
||||
}
|
||||
|
||||
EXPECT_THAT(output, StartsWith("LAMMPS ("));
|
||||
EXPECT_THAT(output, HasSubstr("Loop time"));
|
||||
|
||||
// abort if running in parallel and not all atoms are local
|
||||
const int nlocal = lmp->atom->nlocal;
|
||||
ASSERT_EQ(lmp->atom->natoms, nlocal);
|
||||
|
||||
// relax error a bit for KOKKOS package
|
||||
double epsilon = 10.0 * test_config.epsilon;
|
||||
// relax test precision when using pppm and single precision FFTs
|
||||
#if defined(FFT_SINGLE)
|
||||
if (lmp->force->kspace && utils::strmatch(lmp->force->kspace_style, "^pppm")) epsilon *= 2.0e8;
|
||||
#endif
|
||||
|
||||
ErrorStats stats;
|
||||
|
||||
EXPECT_POSITIONS("run_pos (normal run, verlet)", lmp->atom, test_config.run_pos, epsilon);
|
||||
EXPECT_VELOCITIES("run_vel (normal run, verlet)", lmp->atom, test_config.run_vel, epsilon);
|
||||
if (lmp->atom->torque_flag)
|
||||
EXPECT_TORQUES("run_torque (normal run, verlet)", lmp->atom, test_config.run_torque,
|
||||
epsilon);
|
||||
|
||||
auto *ifix = lmp->modify->get_fix_by_id("test");
|
||||
|
||||
if (!ifix) {
|
||||
FAIL() << "ERROR: no fix defined with fix ID 'test'\n";
|
||||
} else {
|
||||
|
||||
if (ifix->thermo_virial) {
|
||||
EXPECT_STRESS("run_stress (normal run, verlet)", ifix->virial, test_config.run_stress,
|
||||
epsilon);
|
||||
}
|
||||
|
||||
stats.reset();
|
||||
// global scalar
|
||||
if (ifix->scalar_flag) {
|
||||
double value = ifix->compute_scalar();
|
||||
EXPECT_FP_LE_WITH_EPS(test_config.global_scalar, value, epsilon);
|
||||
}
|
||||
|
||||
// global vector
|
||||
if (ifix->vector_flag) {
|
||||
int num = ifix->size_vector;
|
||||
EXPECT_EQ(num, test_config.global_vector.size());
|
||||
|
||||
for (int i = 0; i < num; ++i)
|
||||
EXPECT_FP_LE_WITH_EPS(test_config.global_vector[i], ifix->compute_vector(i),
|
||||
epsilon);
|
||||
}
|
||||
|
||||
// check t_target for thermostats
|
||||
|
||||
int dim = -1;
|
||||
double *ptr = (double *)ifix->extract("t_target", dim);
|
||||
if ((ptr != nullptr) && (dim == 0)) {
|
||||
int ivar = lmp->input->variable->find("t_target");
|
||||
if (ivar >= 0) {
|
||||
double t_ref = atof(lmp->input->variable->retrieve("t_target"));
|
||||
double t_target = *ptr;
|
||||
EXPECT_FP_LE_WITH_EPS(t_target, t_ref, epsilon);
|
||||
}
|
||||
}
|
||||
if (print_stats && stats.has_data())
|
||||
std::cerr << "global_data, normal run, verlet: " << stats << std::endl;
|
||||
}
|
||||
|
||||
if (!verbose) ::testing::internal::CaptureStdout();
|
||||
restart_lammps(lmp, test_config, false, false);
|
||||
if (!verbose) ::testing::internal::GetCapturedStdout();
|
||||
|
||||
EXPECT_POSITIONS("run_pos (restart, verlet)", lmp->atom, test_config.run_pos, epsilon);
|
||||
EXPECT_VELOCITIES("run_vel (restart, verlet)", lmp->atom, test_config.run_vel, epsilon);
|
||||
if (lmp->atom->torque_flag)
|
||||
EXPECT_TORQUES("run_torque (restart, verlet)", lmp->atom, test_config.run_torque, epsilon);
|
||||
|
||||
ifix = lmp->modify->get_fix_by_id("test");
|
||||
if (!ifix) {
|
||||
FAIL() << "ERROR: no fix defined with fix ID 'test'\n";
|
||||
} else {
|
||||
if (ifix->thermo_virial) {
|
||||
EXPECT_STRESS("run_stress (restart, verlet)", ifix->virial, test_config.run_stress,
|
||||
epsilon);
|
||||
}
|
||||
|
||||
stats.reset();
|
||||
|
||||
// global scalar
|
||||
if (ifix->scalar_flag) {
|
||||
double value = ifix->compute_scalar();
|
||||
EXPECT_FP_LE_WITH_EPS(test_config.global_scalar, value, epsilon);
|
||||
}
|
||||
|
||||
// global vector
|
||||
if (ifix->vector_flag) {
|
||||
int num = ifix->size_vector;
|
||||
EXPECT_EQ(num, test_config.global_vector.size());
|
||||
|
||||
for (int i = 0; i < num; ++i)
|
||||
EXPECT_FP_LE_WITH_EPS(test_config.global_vector[i], ifix->compute_vector(i),
|
||||
epsilon);
|
||||
}
|
||||
if (print_stats && stats.has_data())
|
||||
std::cerr << "global_data, restart, verlet: " << stats << std::endl;
|
||||
}
|
||||
|
||||
if (lmp->atom->rmass == nullptr) {
|
||||
if (!verbose) ::testing::internal::CaptureStdout();
|
||||
restart_lammps(lmp, test_config, true, false);
|
||||
if (!verbose) ::testing::internal::GetCapturedStdout();
|
||||
|
||||
EXPECT_POSITIONS("run_pos (rmass, verlet)", lmp->atom, test_config.run_pos, epsilon);
|
||||
EXPECT_VELOCITIES("run_vel (rmass, verlet)", lmp->atom, test_config.run_vel, epsilon);
|
||||
|
||||
ifix = lmp->modify->get_fix_by_id("test");
|
||||
if (!ifix) {
|
||||
FAIL() << "ERROR: no fix defined with fix ID 'test'\n";
|
||||
} else {
|
||||
if (ifix->thermo_virial) {
|
||||
EXPECT_STRESS("run_stress (rmass, verlet)", ifix->virial, test_config.run_stress,
|
||||
epsilon);
|
||||
}
|
||||
|
||||
stats.reset();
|
||||
|
||||
// global scalar
|
||||
if (ifix->scalar_flag) {
|
||||
double value = ifix->compute_scalar();
|
||||
EXPECT_FP_LE_WITH_EPS(test_config.global_scalar, value, epsilon);
|
||||
}
|
||||
|
||||
// global vector
|
||||
if (ifix->vector_flag) {
|
||||
int num = ifix->size_vector;
|
||||
EXPECT_EQ(num, test_config.global_vector.size());
|
||||
|
||||
for (int i = 0; i < num; ++i)
|
||||
EXPECT_FP_LE_WITH_EPS(test_config.global_vector[i], ifix->compute_vector(i),
|
||||
epsilon);
|
||||
}
|
||||
if (print_stats && stats.has_data())
|
||||
std::cerr << "global_data, rmass, verlet: " << stats << std::endl;
|
||||
}
|
||||
}
|
||||
|
||||
// skip RESPA tests for KOKKOS
|
||||
|
||||
if (!verbose) ::testing::internal::CaptureStdout();
|
||||
cleanup_lammps(lmp, test_config);
|
||||
if (!verbose) ::testing::internal::GetCapturedStdout();
|
||||
};
|
||||
|
||||
@ -101,6 +101,23 @@ void EXPECT_VELOCITIES(const std::string &name, Atom *atom, const std::vector<co
|
||||
if (print_stats) std::cerr << name << " stats: " << stats << std::endl;
|
||||
}
|
||||
|
||||
void EXPECT_TORQUES(const std::string &name, Atom *atom, const std::vector<coord_t> &t_ref,
|
||||
double epsilon)
|
||||
{
|
||||
SCOPED_TRACE("EXPECT_TORQUES: " + name);
|
||||
double **t = atom->torque;
|
||||
tagint *tag = atom->tag;
|
||||
const int nlocal = atom->nlocal;
|
||||
ASSERT_EQ(nlocal + 1, t_ref.size());
|
||||
ErrorStats stats;
|
||||
for (int i = 0; i < nlocal; ++i) {
|
||||
EXPECT_FP_LE_WITH_EPS(t[i][0], t_ref[tag[i]].x, epsilon);
|
||||
EXPECT_FP_LE_WITH_EPS(t[i][1], t_ref[tag[i]].y, epsilon);
|
||||
EXPECT_FP_LE_WITH_EPS(t[i][2], t_ref[tag[i]].z, epsilon);
|
||||
}
|
||||
if (print_stats) std::cerr << name << " stats: " << stats << std::endl;
|
||||
}
|
||||
|
||||
// common read_yaml_file function
|
||||
bool read_yaml_file(const char *infile, TestConfig &config)
|
||||
{
|
||||
|
||||
@ -45,5 +45,7 @@ void EXPECT_POSITIONS(const std::string &name, LAMMPS_NS::Atom *atom,
|
||||
const std::vector<coord_t> &x_ref, double epsilon);
|
||||
void EXPECT_VELOCITIES(const std::string &name, LAMMPS_NS::Atom *atom,
|
||||
const std::vector<coord_t> &v_ref, double epsilon);
|
||||
void EXPECT_TORQUES(const std::string &name, LAMMPS_NS::Atom *atom,
|
||||
const std::vector<coord_t> &t_ref, double epsilon);
|
||||
|
||||
#endif
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
---
|
||||
lammps_version: 17 Feb 2022
|
||||
date_generated: Fri Mar 18 22:17:58 2022
|
||||
lammps_version: 27 Jun 2024
|
||||
tags: generated
|
||||
date_generated: Tue Aug 6 02:04:43 2024
|
||||
epsilon: 2e-13
|
||||
skip_tests:
|
||||
prerequisites: ! |
|
||||
@ -10,11 +11,14 @@ pre_commands: ! ""
|
||||
post_commands: ! |
|
||||
fix move all nve
|
||||
fix test solute efield 0.0 -0.1 0.1
|
||||
fix_modify test virial yes
|
||||
input_file: in.fourmol
|
||||
natoms: 29
|
||||
run_stress: ! |2-
|
||||
0.0000000000000000e+00 3.1221533030312409e-01 -2.8129669718847106e-01 0.0000000000000000e+00 0.0000000000000000e+00 2.8129669718847106e-01
|
||||
global_scalar: -0.030918633114652927
|
||||
global_vector: ! |-
|
||||
3 0 -2.220446049250313e-16 2.220446049250313e-16
|
||||
3 0 0 0
|
||||
run_pos: ! |2
|
||||
1 -2.7045797446143222e-01 2.4912780824342802e+00 -1.6702148063946790e-01
|
||||
2 3.1004707684044314e-01 2.9610914097014920e+00 -8.5452223796947857e-01
|
||||
@ -46,33 +50,33 @@ run_pos: ! |2
|
||||
28 -2.7473562684513779e+00 -4.0200819932379650e+00 1.5830052163433976e+00
|
||||
29 -1.3126000191359843e+00 -3.5962518039484861e+00 2.2746342468738585e+00
|
||||
run_vel: ! |2
|
||||
1 8.1658312222614663e-03 1.6575957150422167e-02 4.7291974403202448e-03
|
||||
2 5.4638876708023821e-03 5.0404029111476506e-03 -1.3039774181753307e-03
|
||||
3 -8.2285460105815302e-03 -1.2921801247052923e-02 -4.0992611431015756e-03
|
||||
4 -3.7708744841912487e-03 -6.6156123307326833e-03 -1.0763844399678132e-03
|
||||
5 -1.1020911952034354e-02 -9.9319392840069663e-03 -2.7996700321696274e-03
|
||||
1 8.1658312222614663e-03 1.6575957150422167e-02 4.7291974403202422e-03
|
||||
2 5.4638876708023821e-03 5.0404029111476524e-03 -1.3039774181753297e-03
|
||||
3 -8.2285460105815285e-03 -1.2921801247052927e-02 -4.0992611431015730e-03
|
||||
4 -3.7708744841912487e-03 -6.6156123307326850e-03 -1.0763844399678134e-03
|
||||
5 -1.1020911952034355e-02 -9.9319392840069645e-03 -2.7996700321696287e-03
|
||||
6 -3.9693502572798259e-02 4.6742328405570736e-02 3.7202597389078947e-02
|
||||
7 9.0976114937484250e-04 -1.0062942346953162e-02 -5.1616508395410758e-02
|
||||
8 7.9254327404120941e-03 -3.2975389442540595e-03 3.4504402492869846e-02
|
||||
9 1.5591017009909064e-03 3.5830453659612422e-03 1.5180501660659096e-02
|
||||
7 9.0976114937484228e-04 -1.0062942346953162e-02 -5.1616508395410758e-02
|
||||
8 7.9254327404120941e-03 -3.2975389442540604e-03 3.4504402492869859e-02
|
||||
9 1.5591017009909053e-03 3.5830453659612426e-03 1.5180501660659096e-02
|
||||
10 2.9199490526855283e-02 -2.9258641689434338e-02 -1.5005297297757594e-02
|
||||
11 -4.7836605087433386e-03 -3.7914729059920198e-03 -2.3035595838662840e-03
|
||||
12 2.2697954637435859e-03 -3.0717924023358485e-04 -3.1050775042142892e-03
|
||||
13 2.7523035532740596e-03 5.7750272572237955e-03 -7.5235664623991166e-04
|
||||
14 3.5240740939544214e-03 -5.8353371764581791e-03 -3.9081837862824593e-03
|
||||
11 -4.7836605087433395e-03 -3.7914729059920194e-03 -2.3035595838662840e-03
|
||||
12 2.2697954637435872e-03 -3.0717924023358680e-04 -3.1050775042142913e-03
|
||||
13 2.7523035532740596e-03 5.7750272572237955e-03 -7.5235664623990917e-04
|
||||
14 3.5240740939544192e-03 -5.8353371764581765e-03 -3.9081837862824575e-03
|
||||
15 -1.8549049501666087e-03 -5.8961708769767604e-03 6.3361117899020467e-03
|
||||
16 1.8685917131732017e-02 -1.3347834929626302e-02 -4.5570644533488594e-02
|
||||
17 -1.2900152726318757e-02 9.8178161596953993e-03 3.7244993882472807e-02
|
||||
18 -8.0065793345388101e-04 -8.6270471230818341e-04 -1.4483040707563421e-03
|
||||
19 1.2452390842995829e-03 -2.5061097113172779e-03 7.2998631014686054e-03
|
||||
20 3.5930060230102141e-03 3.6938860309017889e-03 3.2322732690523012e-03
|
||||
21 -1.4689220346471620e-03 -2.7352130047668410e-04 7.0581623957410638e-04
|
||||
22 -7.0694199254063778e-03 -4.2577148925930248e-03 2.8079117595076618e-04
|
||||
23 6.0446963119010697e-03 -1.4000131615444645e-03 2.5819754845290274e-03
|
||||
24 3.1926368357822996e-04 -9.9445664356196447e-04 1.4999997179198298e-04
|
||||
25 1.3789755154241975e-04 -4.4335894822910855e-03 -8.1808135929846665e-04
|
||||
26 2.0485904038928891e-03 2.7813358638196055e-03 4.3245727151208667e-03
|
||||
27 4.5604119916965464e-04 -1.0305523051824380e-03 2.1188058452236590e-04
|
||||
28 -6.2544520862769975e-03 1.4127711175481057e-03 -1.8429821884839938e-03
|
||||
29 6.4110631531126019e-04 3.1273432715248138e-03 3.7253671107199712e-03
|
||||
18 -8.0065793345388101e-04 -8.6270471230818330e-04 -1.4483040707563431e-03
|
||||
19 1.2452390842995818e-03 -2.5061097113172792e-03 7.2998631014686071e-03
|
||||
20 3.5930060230102141e-03 3.6938860309017889e-03 3.2322732690523034e-03
|
||||
21 -1.4689220346471620e-03 -2.7352130047668405e-04 7.0581623957410638e-04
|
||||
22 -7.0694199254063787e-03 -4.2577148925930248e-03 2.8079117595076618e-04
|
||||
23 6.0446963119010697e-03 -1.4000131615444645e-03 2.5819754845290278e-03
|
||||
24 3.1926368357822991e-04 -9.9445664356196447e-04 1.4999997179198287e-04
|
||||
25 1.3789755154241959e-04 -4.4335894822910855e-03 -8.1808135929846654e-04
|
||||
26 2.0485904038928895e-03 2.7813358638196051e-03 4.3245727151208667e-03
|
||||
27 4.5604119916965442e-04 -1.0305523051824363e-03 2.1188058452236553e-04
|
||||
28 -6.2544520862769983e-03 1.4127711175481021e-03 -1.8429821884839938e-03
|
||||
29 6.4110631531126225e-04 3.1273432715248112e-03 3.7253671107199729e-03
|
||||
...
|
||||
|
||||
@ -0,0 +1,109 @@
|
||||
---
|
||||
lammps_version: 27 Jun 2024
|
||||
tags: generated
|
||||
date_generated: Sun Aug 4 21:46:33 2024
|
||||
epsilon: 2e-13
|
||||
skip_tests:
|
||||
prerequisites: ! |
|
||||
atom full
|
||||
fix efield
|
||||
pre_commands: ! ""
|
||||
post_commands: ! |
|
||||
fix move all nve
|
||||
fix test solute efield 0.0 -0.1 0.1
|
||||
input_file: in.dipole
|
||||
natoms: 29
|
||||
global_scalar: 5.323551487649474
|
||||
global_vector: ! |-
|
||||
3 0 0 0
|
||||
run_pos: ! |2
|
||||
1 -2.7803395919988250e-01 2.4746113957575506e+00 -1.7221055624989043e-01
|
||||
2 3.0862275733044281e-01 2.9608256711658929e+00 -8.5204259894833823e-01
|
||||
3 -6.9730353651054677e-01 1.2462185235506165e+00 -6.2333170008106076e-01
|
||||
4 -1.5803707788642558e+00 1.4864216493511191e+00 -1.2553333144872691e+00
|
||||
5 -9.0224637486770010e-01 9.3187101763772007e-01 4.0100026498818492e-01
|
||||
6 2.9068098249777818e-01 2.3317755418235958e-01 -1.2787854346401060e+00
|
||||
7 3.4003718022438006e-01 -1.1136458545317439e-02 -2.4674043539784920e+00
|
||||
8 1.1653603994058781e+00 -4.8553538245393735e-01 -6.7455699042973893e-01
|
||||
9 1.3798605257891061e+00 -2.5606949147401714e-01 2.7646698442033224e-01
|
||||
10 2.0213511597812359e+00 -1.4294263001051324e+00 -9.6869511230628547e-01
|
||||
11 1.7900398780219073e+00 -1.9910605295844079e+00 -1.8892677004539045e+00
|
||||
12 3.0052519569684715e+00 -4.9050496445328290e-01 -1.6215568178297506e+00
|
||||
13 4.0521826738629381e+00 -8.9321351964942697e-01 -1.6399622114060945e+00
|
||||
14 2.6048704355881833e+00 -4.1699645854738832e-01 -2.6633172811775432e+00
|
||||
15 2.9682789927413045e+00 5.5558820658819164e-01 -1.2357788915285541e+00
|
||||
16 2.6531499373970879e+00 -2.3977947524956051e+00 3.1767580086883969e-02
|
||||
17 2.2316478624956817e+00 -2.1010963925555934e+00 1.1526347069081506e+00
|
||||
18 2.1372510164775917e+00 3.0158506000670471e+00 -3.5167916423912540e+00
|
||||
19 1.5345707099325703e+00 2.6249696297497245e+00 -4.2370263294605586e+00
|
||||
20 2.7732095850735732e+00 3.6929598470822609e+00 -3.9337745509644702e+00
|
||||
21 4.9045170966506779e+00 -4.0748031756039733e+00 -3.6218925414637724e+00
|
||||
22 4.3601484254173615e+00 -4.2118940901718647e+00 -4.4596265759840623e+00
|
||||
23 5.7410255603426821e+00 -3.5837707365543663e+00 -3.8765903698198994e+00
|
||||
24 2.0689205181437282e+00 3.1527432700151787e+00 3.1544823899087238e+00
|
||||
25 1.3065187961786864e+00 3.2665243034421700e+00 2.5127268092211676e+00
|
||||
26 2.5789541569135683e+00 4.0089379439900057e+00 3.2207820820981503e+00
|
||||
27 -1.9618638791883916e+00 -4.3549504053758268e+00 2.1090482240812847e+00
|
||||
28 -2.7443201293863742e+00 -4.0212170735729584e+00 1.5850082667482344e+00
|
||||
29 -1.3141860113747614e+00 -3.5978986954166352e+00 2.2741894687371453e+00
|
||||
run_vel: ! |2
|
||||
1 1.1236143544142998e-03 1.3615061488813968e-03 1.9035146531107875e-05
|
||||
2 3.8968322106659220e-03 4.6153851102938084e-03 1.3004266866309365e-03
|
||||
3 -1.6759039090575756e-03 5.6410326296895460e-04 -6.5573998085605308e-04
|
||||
4 -2.2599843514772115e-03 -3.8290476239094783e-03 -2.4796763793128265e-03
|
||||
5 -6.0394625433784410e-03 -4.5348465561185066e-03 -1.3711951052336872e-03
|
||||
6 -3.1023884715655490e-03 4.6637296517233725e-03 4.6189123645965016e-03
|
||||
7 -5.2419935748452737e-05 -1.2319086507260619e-03 -3.2654613259055676e-03
|
||||
8 8.3601735362959304e-04 -9.5637212087811387e-04 1.8785968961167793e-03
|
||||
9 8.4122759994834529e-04 2.0922433389435784e-04 6.4346601850387691e-03
|
||||
10 2.3678265535346989e-03 -1.5212081023084892e-03 -1.1281854658615922e-03
|
||||
11 -2.5475261615126705e-03 -2.3919533481450207e-03 -2.2311276418214019e-03
|
||||
12 1.1421771336981225e-03 -6.2449989986439278e-04 -1.3944269209182573e-03
|
||||
13 3.3571788228550390e-03 4.5917035556149836e-03 -7.2280548749387651e-04
|
||||
14 1.7062612115025355e-03 -4.9841491672042619e-03 -3.8873699403456042e-03
|
||||
15 -3.0289993105478935e-03 -4.5330921360638319e-03 4.7358760686849613e-03
|
||||
16 1.4739447117825949e-03 -1.5730324097209085e-03 -2.5910350086283409e-03
|
||||
17 1.8178020207200592e-06 8.2471901124066651e-04 2.5861088770288477e-03
|
||||
18 -6.1590009973258066e-04 -9.3553764271450690e-04 -3.7200153139999693e-04
|
||||
19 3.2061425510644030e-04 -3.0287047640615156e-03 5.8636911223825961e-03
|
||||
20 4.1715098782670965e-03 4.3790563537493962e-03 2.5400818877712398e-03
|
||||
21 -9.7312009033477575e-04 1.5100049673511838e-04 -1.5172282348038986e-04
|
||||
22 -5.2572212429860743e-03 -3.5787417430626820e-03 1.8543943930500865e-03
|
||||
23 3.2939362683106128e-03 -2.8836279185067231e-03 2.6255213558360269e-03
|
||||
24 2.5638398658457592e-04 4.3450813156814999e-04 -4.5928187145017301e-04
|
||||
25 2.1619084724042686e-03 -4.4534715375427044e-03 7.6930725248380827e-04
|
||||
26 1.6282501420738550e-04 5.6085644860791274e-05 3.9231484240579272e-03
|
||||
27 -2.4066098679756474e-04 3.1636377958111164e-04 -5.3626843391511858e-04
|
||||
28 -3.4277217399776316e-03 3.7010237059210787e-04 1.5959546005529568e-05
|
||||
29 -8.6242002778640222e-04 1.5767896868750036e-03 3.2980383776088458e-03
|
||||
run_torque: ! |2
|
||||
1 -8.5357527435914071e-01 -5.3719824654427417e-01 -5.3719824654427417e-01
|
||||
2 1.1164762300859654e+00 1.0884510402842875e+00 1.0884510402842875e+00
|
||||
3 6.7627977540651552e-01 3.2882282463826995e-01 3.2882282463826995e-01
|
||||
4 2.9575381610511360e+00 6.3262796353754214e-01 6.3262796353754214e-01
|
||||
5 -2.0623461392521740e+00 8.4166297527803235e-01 8.4166297527803235e-01
|
||||
6 9.8242175844085367e-01 -1.6908759916154248e-01 -1.6908759916154248e-01
|
||||
7 -1.3684609891014952e+00 -8.0606058406150949e-01 -8.0606058406150949e-01
|
||||
8 -1.1874337657028966e+00 -2.6646753617169627e-01 -2.6646753617169627e-01
|
||||
9 -1.0177972619106430e+00 2.1477723017368913e+00 2.1477723017368913e+00
|
||||
10 2.5538853609868983e+00 -1.3797674437477894e+00 -1.3797674437477894e+00
|
||||
11 -1.3439139083704066e+00 1.5074058265158885e+00 1.5074058265158885e+00
|
||||
12 2.9652524051282363e+00 -4.5726725480648156e-01 -4.5726725480648156e-01
|
||||
13 -1.2321028588273288e+00 2.0829614135052950e+00 2.0829614135052950e+00
|
||||
14 -2.3022900866870475e+00 3.4249143995027564e-01 3.4249143995027564e-01
|
||||
15 -2.2389603707876993e-01 -1.0999871400210739e+00 -1.0999871400210739e+00
|
||||
16 9.2419348248650579e-01 2.1428687117582701e+00 2.1428687117582701e+00
|
||||
17 2.7094271617240540e+00 7.2665988123741851e-02 7.2665988123741851e-02
|
||||
18 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
|
||||
19 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
|
||||
20 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
|
||||
21 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
|
||||
22 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
|
||||
23 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
|
||||
24 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
|
||||
25 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
|
||||
26 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
|
||||
27 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
|
||||
28 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
|
||||
29 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
|
||||
...
|
||||
@ -0,0 +1,118 @@
|
||||
---
|
||||
lammps_version: 27 Jun 2024
|
||||
tags: generated
|
||||
date_generated: Sun Aug 4 22:46:18 2024
|
||||
epsilon: 2e-13
|
||||
skip_tests:
|
||||
prerequisites: ! |
|
||||
atom full
|
||||
fix efield
|
||||
pre_commands: ! ""
|
||||
post_commands: ! |
|
||||
fix move all nve
|
||||
variable xforce delete
|
||||
variable xforce equal 0.1*step/10.0
|
||||
variable yforce delete
|
||||
variable yforce equal 0.2*step/20.0
|
||||
variable zforce delete
|
||||
variable zforce equal 0.3*step/30.0
|
||||
fix test solute efield v_xforce v_yforce v_zforce
|
||||
fix_modify test virial yes
|
||||
input_file: in.dipole
|
||||
natoms: 29
|
||||
run_stress: ! |2-
|
||||
0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
|
||||
global_scalar: 0
|
||||
global_vector: ! |-
|
||||
3 -1.1102230246251565e-16 -1.1102230246251565e-16 -1.1102230246251565e-16
|
||||
run_pos: ! |2
|
||||
1 -2.7803462088205888e-01 2.4746080899361873e+00 -1.7220863968422631e-01
|
||||
2 3.0864099030230185e-01 2.9609184454137019e+00 -8.5209600355138704e-01
|
||||
3 -6.9730358393070480e-01 1.2462183036890040e+00 -6.2333158600291183e-01
|
||||
4 -1.5803650460394709e+00 1.4864488193383358e+00 -1.2553491245822981e+00
|
||||
5 -9.0224083555581314e-01 9.3189811105149611e-01 4.0098458630849332e-01
|
||||
6 2.9068221058927873e-01 2.3318328040718064e-01 -1.2787887242994260e+00
|
||||
7 3.4003667591250708e-01 -1.1138891887048934e-02 -2.4674029540393323e+00
|
||||
8 1.1653596712202525e+00 -4.8553870127449805e-01 -6.7455507659928038e-01
|
||||
9 1.3798803918386071e+00 -2.5597543756832153e-01 2.7641311417048842e-01
|
||||
10 2.0213513284917770e+00 -1.4294255167846066e+00 -9.6869557537003070e-01
|
||||
11 1.7900455523978396e+00 -1.9910333303206023e+00 -1.8892835721159780e+00
|
||||
12 3.0052513251780613e+00 -4.9050798224436865e-01 -1.6215550550329203e+00
|
||||
13 4.0521883707492767e+00 -8.9318637207253593e-01 -1.6399780787400113e+00
|
||||
14 2.6048761179356523e+00 -4.1696935840940191e-01 -2.6633329891570114e+00
|
||||
15 2.9682846368976175e+00 5.5561522368460747e-01 -1.2357947529810707e+00
|
||||
16 2.6531511203883147e+00 -2.3977890057416973e+00 3.1764256827161913e-02
|
||||
17 2.2316473623837325e+00 -2.1010988247185729e+00 1.1526361129941032e+00
|
||||
18 2.1372510164775789e+00 3.0158506000670355e+00 -3.5167916423912531e+00
|
||||
19 1.5345707099325570e+00 2.6249696297497045e+00 -4.2370263294605177e+00
|
||||
20 2.7732095850735634e+00 3.6929598470822547e+00 -3.9337745509644595e+00
|
||||
21 4.9045170966506770e+00 -4.0748031756039724e+00 -3.6218925414637728e+00
|
||||
22 4.3601484254173615e+00 -4.2118940901718629e+00 -4.4596265759840614e+00
|
||||
23 5.7410255603426812e+00 -3.5837707365543650e+00 -3.8765903698198989e+00
|
||||
24 2.0689205181437282e+00 3.1527432700151770e+00 3.1544823899087251e+00
|
||||
25 1.3065187961786540e+00 3.2665243034421243e+00 2.5127268092211485e+00
|
||||
26 2.5789541569135679e+00 4.0089379439900039e+00 3.2207820820981503e+00
|
||||
27 -1.9618638791883911e+00 -4.3549504053758268e+00 2.1090482240812847e+00
|
||||
28 -2.7443201293863759e+00 -4.0212170735729593e+00 1.5850082667482348e+00
|
||||
29 -1.3141860113747683e+00 -3.5978986954166383e+00 2.2741894687371484e+00
|
||||
run_vel: ! |2
|
||||
1 1.1226228998813120e-03 1.3578676832028912e-03 2.0557170947250780e-05
|
||||
2 3.9239288756989016e-03 4.7172177954433788e-03 1.2587212580222184e-03
|
||||
3 -1.6759752389904064e-03 5.6386389592282232e-04 -6.5566849439663093e-04
|
||||
4 -2.2512384997042472e-03 -3.7989938232970300e-03 -2.4924216203737527e-03
|
||||
5 -6.0310935807221877e-03 -4.5049478412039637e-03 -1.3836695500793908e-03
|
||||
6 -3.1005005132647293e-03 4.6700701138933255e-03 4.6163000387542787e-03
|
||||
7 -5.3188586817768639e-05 -1.2346121248938561e-03 -3.2643401792630212e-03
|
||||
8 8.3489219083866242e-04 -9.6003848332027136e-04 1.8801202990819514e-03
|
||||
9 8.7162816848026234e-04 3.1364623622102896e-04 6.3917296813706522e-03
|
||||
10 2.3680868557455818e-03 -1.5203429248592441e-03 -1.1285650316897892e-03
|
||||
11 -2.5388840283489342e-03 -2.3618541252316532e-03 -2.2440122087485034e-03
|
||||
12 1.1412159144708132e-03 -6.2782650780501229e-04 -1.3930048293318753e-03
|
||||
13 3.3658569001843641e-03 4.6217055285812667e-03 -7.3566554681633899e-04
|
||||
14 1.7149215410627553e-03 -4.9542364152862740e-03 -3.8999231155933270e-03
|
||||
15 -3.0204251503176452e-03 -4.5033742607606102e-03 4.7230261700345021e-03
|
||||
16 1.4757444573234482e-03 -1.5666516321294532e-03 -2.5937088506404159e-03
|
||||
17 1.0571264012818976e-06 8.2201760099452344e-04 2.5872403829922935e-03
|
||||
18 -6.1590009975964484e-04 -9.3553764274130838e-04 -3.7200153139700973e-04
|
||||
19 3.2061425507972274e-04 -3.0287047641009905e-03 5.8636911224663182e-03
|
||||
20 4.1715098782492523e-03 4.3790563537376538e-03 2.5400818877933480e-03
|
||||
21 -9.7312009033487896e-04 1.5100049673665020e-04 -1.5172282348215765e-04
|
||||
22 -5.2572212429864151e-03 -3.5787417430601385e-03 1.8543943930504219e-03
|
||||
23 3.2939362683093013e-03 -2.8836279185044679e-03 2.6255213558361900e-03
|
||||
24 2.5638398658362307e-04 4.3450813156448382e-04 -4.5928187144820296e-04
|
||||
25 2.1619084723496903e-03 -4.4534715376318085e-03 7.6930725246239842e-04
|
||||
26 1.6282501420679502e-04 5.6085644857617055e-05 3.9231484240590028e-03
|
||||
27 -2.4066098679621984e-04 3.1636377958145940e-04 -5.3626843391455024e-04
|
||||
28 -3.4277217399801899e-03 3.7010237059051832e-04 1.5959546006432193e-05
|
||||
29 -8.6242002780014568e-04 1.5767896868705918e-03 3.2980383776149932e-03
|
||||
run_torque: ! |2
|
||||
1 -2.4436070050579253e+00 4.5061479554988704e-01 1.9929922095080381e+00
|
||||
2 2.1195936058917191e+00 2.5755452131595669e-01 -2.3771481272076755e+00
|
||||
3 -2.5250330905076650e+00 1.7960867151270548e+00 7.2894637538061047e-01
|
||||
4 -8.3457683612426237e-01 2.1064060533126194e+00 -1.2718292171883570e+00
|
||||
5 1.7827105075374519e+00 -1.0429633292471694e+00 -7.3974717829028225e-01
|
||||
6 2.4804444324082988e+00 -9.8252359215704177e-01 -1.4979208402512567e+00
|
||||
7 2.1855709506971714e+00 -2.2850183382383915e+00 9.9447387541219956e-02
|
||||
8 2.4111434047810372e+00 -1.8937192376090342e+00 -5.1742416717200301e-01
|
||||
9 4.8925439897630674e-01 1.0664717371371024e+00 -1.5557261361134094e+00
|
||||
10 4.4248864855928816e-01 -3.0350413488311634e-01 -1.3898451367617182e-01
|
||||
11 1.6560442813187830e+00 -1.5966304279484356e-01 -1.4963812385239397e+00
|
||||
12 9.5494331320688497e-01 3.4281550160266666e-01 -1.2977588148095516e+00
|
||||
13 5.3080735403713286e-01 9.0812431025473794e-01 -1.4389316642918708e+00
|
||||
14 -1.8067673652119607e+00 2.5646079989138193e-01 1.5503065653205788e+00
|
||||
15 -2.2860558945796523e+00 1.7347982044145904e-01 2.1125760741381931e+00
|
||||
16 6.1857755737751563e-01 1.7746835837124604e+00 -2.3932611410899760e+00
|
||||
17 -1.4497938429511878e+00 1.8668005766642088e+00 -4.1700673371302099e-01
|
||||
18 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
|
||||
19 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
|
||||
20 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
|
||||
21 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
|
||||
22 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
|
||||
23 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
|
||||
24 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
|
||||
25 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
|
||||
26 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
|
||||
27 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
|
||||
28 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
|
||||
29 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
|
||||
...
|
||||
@ -1,6 +1,7 @@
|
||||
---
|
||||
lammps_version: 17 Feb 2022
|
||||
date_generated: Fri Mar 18 22:17:58 2022
|
||||
lammps_version: 27 Jun 2024
|
||||
tags: generated
|
||||
date_generated: Sat Aug 3 05:18:10 2024
|
||||
epsilon: 2e-13
|
||||
skip_tests:
|
||||
prerequisites: ! |
|
||||
@ -11,8 +12,11 @@ post_commands: ! |
|
||||
region half block 0 EDGE EDGE EDGE EDGE EDGE
|
||||
fix move all nve
|
||||
fix test solute efield 0.1 0.1 0.1 region half
|
||||
fix_modify test virial yes
|
||||
input_file: in.fourmol
|
||||
natoms: 29
|
||||
run_stress: ! |2-
|
||||
1.1952991612400572e+00 1.9458378941195973e+00 -3.1399685374218067e-01 1.9458378941195973e+00 -3.1399685374218067e-01 -3.1399685374218067e-01
|
||||
global_scalar: -2.8271402016174743
|
||||
global_vector: ! |-
|
||||
3 0.714877019 0.714877019 0.714877019
|
||||
@ -47,33 +51,33 @@ run_pos: ! |2
|
||||
28 -2.7473562684514778e+00 -4.0200819932382421e+00 1.5830052163435122e+00
|
||||
29 -1.3126000191360516e+00 -3.5962518039482134e+00 2.2746342468738145e+00
|
||||
run_vel: ! |2
|
||||
1 8.1708759711752958e-03 1.6517639874638803e-02 4.7902879389058383e-03
|
||||
2 5.5964331165928010e-03 5.3239383069183174e-03 -1.2861059284729379e-03
|
||||
3 -8.2292637161143385e-03 -1.2926128087381868e-02 -4.0984161443673190e-03
|
||||
1 8.1708759711752975e-03 1.6517639874638803e-02 4.7902879389058340e-03
|
||||
2 5.5964331165928010e-03 5.3239383069183226e-03 -1.2861059284729340e-03
|
||||
3 -8.2292637161143403e-03 -1.2926128087381868e-02 -4.0984161443673173e-03
|
||||
4 -3.7697526145864203e-03 -6.5725127853647532e-03 -1.1187560499435428e-03
|
||||
5 -1.1022006462580933e-02 -9.8906385073934400e-03 -2.8410749782010374e-03
|
||||
5 -1.1022006462580933e-02 -9.8906385073934400e-03 -2.8410749782010383e-03
|
||||
6 -3.9598958324881833e-02 4.6903198210396124e-02 3.7196915155023061e-02
|
||||
7 8.4653619788661286e-04 -1.0186461918106198e-02 -5.1609252834488979e-02
|
||||
7 8.4653619788661264e-04 -1.0186461918106198e-02 -5.1609252834488979e-02
|
||||
8 7.8471683791752362e-03 -3.4193297369123185e-03 3.4507457170165158e-02
|
||||
9 1.7075694205393060e-03 3.8777304373514634e-03 1.5162863367694195e-02
|
||||
9 1.7075694205393051e-03 3.8777304373514639e-03 1.5162863367694195e-02
|
||||
10 2.9215614627888371e-02 -2.9240701545949585e-02 -1.5006701597915331e-02
|
||||
11 -4.7405866731533054e-03 -3.7068192956066894e-03 -2.3045121721450906e-03
|
||||
12 2.2290126422970882e-03 -3.8809497069252936e-04 -3.1047965880797871e-03
|
||||
13 2.7935114371385656e-03 5.8586940588092199e-03 -7.5304481929041526e-04
|
||||
14 3.5665654501702681e-03 -5.7512922858593447e-03 -3.9089424767000339e-03
|
||||
15 -1.8139594485811785e-03 -5.8166150528014193e-03 6.3351631624150211e-03
|
||||
11 -4.7405866731533063e-03 -3.7068192956066894e-03 -2.3045121721450897e-03
|
||||
12 2.2290126422970895e-03 -3.8809497069252735e-04 -3.1047965880797879e-03
|
||||
13 2.7935114371385635e-03 5.8586940588092181e-03 -7.5304481929041461e-04
|
||||
14 3.5665654501702677e-03 -5.7512922858593447e-03 -3.9089424767000365e-03
|
||||
15 -1.8139594485811841e-03 -5.8166150528014202e-03 6.3351631624150228e-03
|
||||
16 1.8770941362463107e-02 -1.3183631365002509e-02 -4.5573108750104258e-02
|
||||
17 -1.2963606226862703e-02 9.6937549225388098e-03 3.7247063085491160e-02
|
||||
18 -8.0065796921844994e-04 -8.6270475993526386e-04 -1.4483040616159765e-03
|
||||
19 1.2452390834561400e-03 -2.5061097124141904e-03 7.2998631012995028e-03
|
||||
20 3.5930060224885880e-03 3.6938860305007859e-03 3.2322732691378846e-03
|
||||
21 -1.4689220363177679e-03 -2.7352129611332704e-04 7.0581624058295520e-04
|
||||
22 -7.0694199254319476e-03 -4.2577148923730610e-03 2.8079117602693740e-04
|
||||
23 6.0446963117453019e-03 -1.4000131613672311e-03 2.5819754846776472e-03
|
||||
24 3.1926367807141095e-04 -9.9445664297286387e-04 1.4999997144977533e-04
|
||||
25 1.3789754489252400e-04 -4.4335894881614539e-03 -8.1808136766960723e-04
|
||||
26 2.0485904035389413e-03 2.7813358635286672e-03 4.3245727149205113e-03
|
||||
27 4.5604120798143971e-04 -1.0305522996113419e-03 2.1188058145416930e-04
|
||||
28 -6.2544520867286501e-03 1.4127711163405999e-03 -1.8429821880090427e-03
|
||||
29 6.4110631523949934e-04 3.1273432721623264e-03 3.7253671106301819e-03
|
||||
18 -8.0065796921844994e-04 -8.6270475993526386e-04 -1.4483040616159767e-03
|
||||
19 1.2452390834561398e-03 -2.5061097124141909e-03 7.2998631012995037e-03
|
||||
20 3.5930060224885880e-03 3.6938860305007859e-03 3.2322732691378851e-03
|
||||
21 -1.4689220363177679e-03 -2.7352129611332672e-04 7.0581624058295423e-04
|
||||
22 -7.0694199254319502e-03 -4.2577148923730627e-03 2.8079117602693848e-04
|
||||
23 6.0446963117453028e-03 -1.4000131613672311e-03 2.5819754846776498e-03
|
||||
24 3.1926367807141078e-04 -9.9445664297286344e-04 1.4999997144977506e-04
|
||||
25 1.3789754489252368e-04 -4.4335894881614556e-03 -8.1808136766960712e-04
|
||||
26 2.0485904035389417e-03 2.7813358635286672e-03 4.3245727149205113e-03
|
||||
27 4.5604120798143960e-04 -1.0305522996113417e-03 2.1188058145416919e-04
|
||||
28 -6.2544520867286509e-03 1.4127711163405992e-03 -1.8429821880090427e-03
|
||||
29 6.4110631523949977e-04 3.1273432721623255e-03 3.7253671106301819e-03
|
||||
...
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
---
|
||||
lammps_version: 17 Feb 2022
|
||||
date_generated: Fri Mar 18 22:17:58 2022
|
||||
lammps_version: 27 Jun 2024
|
||||
tags: generated
|
||||
date_generated: Sat Aug 3 05:18:19 2024
|
||||
epsilon: 2e-13
|
||||
skip_tests:
|
||||
prerequisites: ! |
|
||||
@ -15,8 +16,11 @@ post_commands: ! |
|
||||
variable zforce equal 0.1*step/10.0
|
||||
fix move all nve
|
||||
fix test solute efield v_xforce 0.0 v_zforce
|
||||
fix_modify test virial yes
|
||||
input_file: in.fourmol
|
||||
natoms: 29
|
||||
run_stress: ! |2-
|
||||
0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
|
||||
global_scalar: 0
|
||||
global_vector: ! |-
|
||||
3 10.275935322301738 0 -1.1102230246251565e-16
|
||||
@ -51,33 +55,33 @@ run_pos: ! |2
|
||||
28 -2.7473562684520521e+00 -4.0200819932381933e+00 1.5830052163436978e+00
|
||||
29 -1.3126000191401406e+00 -3.5962518039484013e+00 2.2746342468762424e+00
|
||||
run_vel: ! |2
|
||||
1 8.3523967935972103e-03 1.6515254595637210e-02 4.7615576657187714e-03
|
||||
2 5.8941247186566573e-03 5.1722227122822807e-03 -1.3701427920021986e-03
|
||||
3 -8.2167795197999119e-03 -1.2923450588576815e-02 -4.1004252694225585e-03
|
||||
4 -4.4263651845063874e-03 -6.5742418325391832e-03 -1.0955970988773401e-03
|
||||
5 -1.1398448905979295e-02 -9.8894689730743574e-03 -2.8263847809119743e-03
|
||||
6 -3.9500939815668802e-02 4.6887414365051332e-02 3.7133775134254386e-02
|
||||
7 6.9842523048380231e-04 -1.0129392818228253e-02 -5.1594363495221361e-02
|
||||
8 7.2583991981464485e-03 -3.4658371736488846e-03 3.4580276362563396e-02
|
||||
9 3.6026391644265426e-03 3.7375102720979521e-03 1.5034460098373481e-02
|
||||
1 8.3523967935972103e-03 1.6515254595637210e-02 4.7615576657187705e-03
|
||||
2 5.8941247186566573e-03 5.1722227122822824e-03 -1.3701427920021960e-03
|
||||
3 -8.2167795197999154e-03 -1.2923450588576812e-02 -4.1004252694225567e-03
|
||||
4 -4.4263651845063883e-03 -6.5742418325391884e-03 -1.0955970988773414e-03
|
||||
5 -1.1398448905979295e-02 -9.8894689730743592e-03 -2.8263847809119748e-03
|
||||
6 -3.9500939815668802e-02 4.6887414365051318e-02 3.7133775134254386e-02
|
||||
7 6.9842523048380199e-04 -1.0129392818228253e-02 -5.1594363495221361e-02
|
||||
8 7.2583991981464493e-03 -3.4658371736488855e-03 3.4580276362563389e-02
|
||||
9 3.6026391644265400e-03 3.7375102720979530e-03 1.5034460098373481e-02
|
||||
10 2.9376323673810063e-02 -2.9204189651235765e-02 -1.4984527368425798e-02
|
||||
11 -4.0094188700564755e-03 -3.7533811174124440e-03 -2.3323227192170864e-03
|
||||
12 1.0565849247321684e-03 -3.4812418704811908e-04 -3.0814227273971736e-03
|
||||
13 4.3770864839260621e-03 5.8265173175360025e-03 -7.6851845061108928e-04
|
||||
14 4.6081612697984357e-03 -5.7771463173504857e-03 -3.9509511241893622e-03
|
||||
15 -6.2134887575598864e-04 -5.8525914810640808e-03 6.3025497777745602e-03
|
||||
11 -4.0094188700564764e-03 -3.7533811174124440e-03 -2.3323227192170856e-03
|
||||
12 1.0565849247321719e-03 -3.4812418704811902e-04 -3.0814227273971723e-03
|
||||
13 4.3770864839260621e-03 5.8265173175359990e-03 -7.6851845061108733e-04
|
||||
14 4.6081612697984331e-03 -5.7771463173504831e-03 -3.9509511241893639e-03
|
||||
15 -6.2134887575599298e-04 -5.8525914810640808e-03 6.3025497777745576e-03
|
||||
16 2.0803569505133360e-02 -1.3197664214971504e-02 -4.5435603305981419e-02
|
||||
17 -1.4238304956511698e-02 9.7135426337891535e-03 3.7140948224551232e-02
|
||||
18 -8.0065803006974627e-04 -8.6270481571213244e-04 -1.4483040143169715e-03
|
||||
19 1.2452390814642318e-03 -2.5061097171182860e-03 7.2998631074280762e-03
|
||||
20 3.5930060197966501e-03 3.6938860290210949e-03 3.2322732711840547e-03
|
||||
21 -1.4689220487945117e-03 -2.7352130624665958e-04 7.0581629574098927e-04
|
||||
22 -7.0694199251650578e-03 -4.2577148930188916e-03 2.8079117843705611e-04
|
||||
23 6.0446963110170554e-03 -1.4000131639167685e-03 2.5819754871353917e-03
|
||||
24 3.1926366718644695e-04 -9.9445664582025264e-04 1.4999995653372725e-04
|
||||
25 1.3789753947330381e-04 -4.4335894948247627e-03 -8.1808139114999815e-04
|
||||
26 2.0485904025981279e-03 2.7813358628321202e-03 4.3245727135970882e-03
|
||||
27 4.5604125878886070e-04 -1.0305522515611520e-03 2.1188057217212626e-04
|
||||
28 -6.2544520876729867e-03 1.4127711164508190e-03 -1.8429821875256107e-03
|
||||
29 6.4110630762061020e-04 3.1273432725177990e-03 3.7253671155107236e-03
|
||||
18 -8.0065803006974627e-04 -8.6270481571213190e-04 -1.4483040143169730e-03
|
||||
19 1.2452390814642303e-03 -2.5061097171182882e-03 7.2998631074280805e-03
|
||||
20 3.5930060197966510e-03 3.6938860290210949e-03 3.2322732711840578e-03
|
||||
21 -1.4689220487945117e-03 -2.7352130624665936e-04 7.0581629574098840e-04
|
||||
22 -7.0694199251650578e-03 -4.2577148930188933e-03 2.8079117843705719e-04
|
||||
23 6.0446963110170554e-03 -1.4000131639167685e-03 2.5819754871353930e-03
|
||||
24 3.1926366718644685e-04 -9.9445664582025221e-04 1.4999995653372695e-04
|
||||
25 1.3789753947330365e-04 -4.4335894948247653e-03 -8.1808139114999804e-04
|
||||
26 2.0485904025981283e-03 2.7813358628321202e-03 4.3245727135970890e-03
|
||||
27 4.5604125878886064e-04 -1.0305522515611514e-03 2.1188057217212599e-04
|
||||
28 -6.2544520876729867e-03 1.4127711164508173e-03 -1.8429821875256107e-03
|
||||
29 6.4110630762061150e-04 3.1273432725177981e-03 3.7253671155107249e-03
|
||||
...
|
||||
|
||||
77
unittest/force-styles/tests/fix-timestep-gravity.yaml
Normal file
77
unittest/force-styles/tests/fix-timestep-gravity.yaml
Normal file
@ -0,0 +1,77 @@
|
||||
---
|
||||
lammps_version: 17 Apr 2024
|
||||
tags: generated
|
||||
date_generated: Fri Jun 7 18:18:25 2024
|
||||
epsilon: 2e-14
|
||||
skip_tests:
|
||||
prerequisites: ! |
|
||||
atom full
|
||||
fix gravity
|
||||
pre_commands: ! ""
|
||||
post_commands: ! |
|
||||
fix move all nve
|
||||
fix test solute gravity 1.0 chute 24.0
|
||||
input_file: in.fourmol
|
||||
natoms: 29
|
||||
global_scalar: -186.21588194703688
|
||||
run_pos: ! |2
|
||||
1 -2.7011524053324809e-01 2.4912159905686591e+00 -1.6772297284757851e-01
|
||||
2 3.1038065295954353e-01 2.9612354631097353e+00 -8.5542808521697811e-01
|
||||
3 -7.0364515675550809e-01 1.2305509956066307e+00 -6.2853972432728245e-01
|
||||
4 -1.5814755764271355e+00 1.4837407818930601e+00 -1.2546355384456112e+00
|
||||
5 -9.0685727950632855e-01 9.2652103885643056e-01 3.9877765004406607e-01
|
||||
6 2.4865756250605056e-01 2.8313021504286667e-01 -1.2321877880510159e+00
|
||||
7 3.4177563359756546e-01 -2.2646551100204085e-02 -2.5299935962974427e+00
|
||||
8 1.1746955801477847e+00 -4.8863228562722372e-01 -6.3859878398896053e-01
|
||||
9 1.3803927801722946e+00 -2.5274721030710312e-01 2.8277540402938711e-01
|
||||
10 2.0514168793021708e+00 -1.4604063740395892e+00 -9.8400190568066226e-01
|
||||
11 1.7881435516754824e+00 -1.9921863273005540e+00 -1.8898246996050880e+00
|
||||
12 3.0066410611543031e+00 -4.9013350496741503e-01 -1.6239542655936290e+00
|
||||
13 4.0518806531445115e+00 -8.9202011608041198e-01 -1.6407650078368909e+00
|
||||
14 2.6070366917787502e+00 -4.1789253965818390e-01 -2.6641648157184719e+00
|
||||
15 2.9698690757945712e+00 5.5422613165076606e-01 -1.2349666570200868e+00
|
||||
16 2.6750433267807354e+00 -2.4124119054731139e+00 -2.4200201031436729e-02
|
||||
17 2.2156981357736640e+00 -2.0897985186874832e+00 1.1955506246002150e+00
|
||||
18 2.1369701703650730e+00 3.0158507412663567e+00 -3.5179348336329874e+00
|
||||
19 1.5355837136010813e+00 2.6255292355230471e+00 -4.2353987779638791e+00
|
||||
20 2.7727573005632222e+00 3.6923910449548529e+00 -3.9330842459074575e+00
|
||||
21 4.9040128072602780e+00 -4.0752348172210793e+00 -3.6210314709290508e+00
|
||||
22 4.3582355554422358e+00 -4.2126119427251041e+00 -4.4612844196275327e+00
|
||||
23 5.7439382849267391e+00 -3.5821957939245763e+00 -3.8766361295905272e+00
|
||||
24 2.0689243582926142e+00 3.1513346907679298e+00 3.1550389755253740e+00
|
||||
25 1.3045351331996820e+00 3.2665125706102396e+00 2.5111855257988016e+00
|
||||
26 2.5809237402745016e+00 4.0117602605510552e+00 3.2212060529110351e+00
|
||||
27 -1.9611343130738399e+00 -4.3563411931703371e+00 2.1098293115633115e+00
|
||||
28 -2.7473562684531423e+00 -4.0200819932397094e+00 1.5830052163438753e+00
|
||||
29 -1.3126000191413181e+00 -3.5962518039538049e+00 2.2746342468776262e+00
|
||||
run_vel: ! |2
|
||||
1 8.5109316362519602e-03 1.6516406178041225e-02 4.0257714026516490e-03
|
||||
2 5.7905065636750398e-03 5.1791699425406436e-03 -2.2017480092926239e-03
|
||||
3 -7.8894719894931995e-03 -1.2926551567076078e-02 -4.8628730461282299e-03
|
||||
4 -3.4295470362380558e-03 -6.5722892097571746e-03 -1.8829188761635013e-03
|
||||
5 -1.0681603783771049e-02 -9.8906780943397981e-03 -3.6055286238584373e-03
|
||||
6 -3.9336305872108561e-02 4.6817061595703827e-02 3.6384037056681029e-02
|
||||
7 1.2506966720148773e-03 -1.0128524534170577e-02 -5.2332706579662443e-02
|
||||
8 8.2468284595410245e-03 -3.3507253921233483e-03 3.3792643567964936e-02
|
||||
9 1.9047748330960573e-03 3.7365546038062030e-03 1.4282953976985591e-02
|
||||
10 2.9541804094488457e-02 -2.9249578764884845e-02 -1.5782532313799533e-02
|
||||
11 -4.4432389113943276e-03 -3.7481385250923384e-03 -3.1108652606538687e-03
|
||||
12 2.6100024018558595e-03 -3.4774153956887568e-04 -3.8285319045691822e-03
|
||||
13 3.0935312727166267e-03 5.8171061330117716e-03 -1.5591293903673509e-03
|
||||
14 3.8649754630719264e-03 -5.7939995647665818e-03 -4.7122979565915029e-03
|
||||
15 -1.5144371403513141e-03 -5.8554729975123223e-03 5.5293936706684987e-03
|
||||
16 1.9021857268539524e-02 -1.3262466239526659e-02 -4.6403106382465122e-02
|
||||
17 -1.2555912712280654e-02 9.7527665332939554e-03 3.6532080503688211e-02
|
||||
18 -8.0065804266645272e-04 -8.6270492707191733e-04 -1.4483038883094412e-03
|
||||
19 1.2452390676359983e-03 -2.5061097417265706e-03 7.2998631503948365e-03
|
||||
20 3.5930060125155812e-03 3.6938860172789413e-03 3.2322732818512918e-03
|
||||
21 -1.4689221613126495e-03 -2.7352114343278191e-04 7.0581636636453274e-04
|
||||
22 -7.0694199291104270e-03 -4.2577148850801560e-03 2.8079118466590249e-04
|
||||
23 6.0446963030489327e-03 -1.4000131557522955e-03 2.5819754912914830e-03
|
||||
24 3.1926378195318940e-04 -9.9445656410519171e-04 1.5000005630965910e-04
|
||||
25 1.3789764900432326e-04 -4.4335894352437377e-03 -8.1808125296921569e-04
|
||||
26 2.0485904111190159e-03 2.7813358701245998e-03 4.3245727192292643e-03
|
||||
27 4.5604112517415882e-04 -1.0305523728567508e-03 2.1188060606882085e-04
|
||||
28 -6.2544520903728557e-03 1.4127711133453905e-03 -1.8429821874182827e-03
|
||||
29 6.4110630400058470e-04 3.1273432599821832e-03 3.7253671183308450e-03
|
||||
...
|
||||
@ -1,7 +1,8 @@
|
||||
---
|
||||
lammps_version: 17 Feb 2022
|
||||
date_generated: Fri Mar 18 22:17:59 2022
|
||||
epsilon: 2e-13
|
||||
lammps_version: 27 Jun 2024
|
||||
tags: generated
|
||||
date_generated: Sun Aug 4 23:15:54 2024
|
||||
epsilon: 1e-12
|
||||
skip_tests:
|
||||
prerequisites: ! |
|
||||
atom full
|
||||
@ -16,9 +17,9 @@ post_commands: ! |
|
||||
fix test solute nph/sphere aniso 1.0 1.0 100.0 ptemp ${t_target} fixedpoint 0.0 0.0 0.0 couple xy
|
||||
input_file: in.dipole
|
||||
natoms: 29
|
||||
global_scalar: 2.6530736625996387
|
||||
global_scalar: 2.6530736625996396
|
||||
global_vector: ! |-
|
||||
24 -0.0002936071734534549 -0.0002936071734534549 -0.009802195812217975 -0.0002295892446149488 -0.0002295892446149488 -0.009426150676164043 0.00038215586827905577 -0.0001999367873398407 -0.00019998672264189484 0.0013055190397921652 -0.00019964191319805292 -0.00019997330643321473 -0.00016957632738679295 -0.00016957632738679295 -0.00016957632738679295 0.001571221380284989 0.001571221380284989 2.6485187819688587 7.59422701888457e-05 -3.973157233782066e-05 -3.974149551450151e-05 0.0016934776411678706 3.960194290753771e-05 3.973352558103608e-05
|
||||
24 -0.0002936071734534543 -0.0002936071734534543 -0.009802195812217977 -0.00022958924461494824 -0.00022958924461494824 -0.009426150676164044 0.00038215586827905636 -0.0001999367873398407 -0.00019998672264189484 0.0013055190397921663 -0.00019964191319805292 -0.00019997330643321473 -0.00016957632738679295 -0.00016957632738679295 -0.00016957632738679295 0.0015712213802849813 0.0015712213802849813 2.6485187819688596 7.594227018884582e-05 -3.973157233782066e-05 -3.974149551450151e-05 0.0016934776411678734 3.960194290753771e-05 3.973352558103608e-05
|
||||
run_pos: ! |2
|
||||
1 -2.7827104751341025e-01 2.4732379209353574e+00 -1.7098367287678773e-01
|
||||
2 3.0951603206194456e-01 2.9505189917751125e+00 -8.3691694167351027e-01
|
||||
@ -50,22 +51,22 @@ run_pos: ! |2
|
||||
28 -2.7398474814917915e+00 -4.0195447873597807e+00 1.5674291899980410e+00
|
||||
29 -1.3104384550303312e+00 -3.5982420074671468e+00 2.2459227533114134e+00
|
||||
run_vel: ! |2
|
||||
1 8.0241784898899828e-04 7.1649810278735077e-04 -4.3254783495965662e-04
|
||||
2 4.9920840652361133e-03 -4.7901355269901000e-03 8.0415105059913512e-03
|
||||
3 -1.0246626622144124e-03 1.9728648029617439e-03 -4.1786270885854951e-04
|
||||
4 -2.5514266874426881e-03 -3.8470310506856980e-04 -7.6419956671648758e-03
|
||||
5 -1.0997203136770465e-02 -1.1100959801421185e-02 7.4710776737198633e-03
|
||||
6 -9.6097534134826346e-05 1.3350328233459241e-03 5.6128607413785875e-04
|
||||
7 -4.3022722269905067e-05 -6.9147676609541530e-04 -7.0822487621355530e-04
|
||||
8 2.6656323611303379e-04 -6.4929896813388250e-04 6.8721556911616026e-04
|
||||
9 4.0217754987332526e-03 -9.3762987441709713e-03 -1.8217220558355389e-02
|
||||
10 3.9241017078855885e-04 7.9179015547129058e-04 -1.8323030547845367e-04
|
||||
1 8.0241784898899828e-04 7.1649810278735066e-04 -4.3254783495965700e-04
|
||||
2 4.9920840652361133e-03 -4.7901355269900983e-03 8.0415105059913530e-03
|
||||
3 -1.0246626622144126e-03 1.9728648029617439e-03 -4.1786270885854935e-04
|
||||
4 -2.5514266874426894e-03 -3.8470310506857024e-04 -7.6419956671648758e-03
|
||||
5 -1.0997203136770467e-02 -1.1100959801421187e-02 7.4710776737198625e-03
|
||||
6 -9.6097534134826292e-05 1.3350328233459241e-03 5.6128607413785875e-04
|
||||
7 -4.3022722269905081e-05 -6.9147676609541530e-04 -7.0822487621355530e-04
|
||||
8 2.6656323611303379e-04 -6.4929896813388250e-04 6.8721556911616037e-04
|
||||
9 4.0217754987332535e-03 -9.3762987441709713e-03 -1.8217220558355389e-02
|
||||
10 3.9241017078855896e-04 7.9179015547129069e-04 -1.8323030547845370e-04
|
||||
11 -4.1986571777318281e-03 -7.2528133986728104e-03 -6.9700940876634846e-03
|
||||
12 1.1518085352395190e-03 -7.7797212668168298e-04 -1.7491524590193149e-03
|
||||
13 -1.1763167453607117e-03 2.1016758888847335e-03 -7.0140970399881471e-04
|
||||
14 3.4959302252370907e-03 -8.0425729559116862e-03 2.4731781160335130e-03
|
||||
15 -4.0163275838685742e-03 2.2205560641153996e-04 1.6595018075308821e-02
|
||||
16 -2.0953855224036243e-04 -3.5810043463447016e-04 1.8771712621666709e-03
|
||||
12 1.1518085352395190e-03 -7.7797212668168298e-04 -1.7491524590193151e-03
|
||||
13 -1.1763167453607115e-03 2.1016758888847335e-03 -7.0140970399881373e-04
|
||||
14 3.4959302252370907e-03 -8.0425729559116862e-03 2.4731781160335134e-03
|
||||
15 -4.0163275838685760e-03 2.2205560641153996e-04 1.6595018075308821e-02
|
||||
16 -2.0953855224036243e-04 -3.5810043463447005e-04 1.8771712621666709e-03
|
||||
17 6.8683193653879806e-04 3.2771494523541197e-04 6.5315694215737502e-04
|
||||
18 -6.0936815808025862e-04 -9.3774557532468582e-04 -3.3558072507805731e-04
|
||||
19 -6.9919768291957119e-04 -3.6060777270430031e-03 4.2833405289822791e-03
|
||||
@ -79,4 +80,34 @@ run_vel: ! |2
|
||||
27 -2.6510179146429716e-04 3.6306203629019116e-04 -5.6235585400647747e-04
|
||||
28 -2.3068708109787484e-04 -8.5663070212203200e-04 2.1302563179109169e-03
|
||||
29 -2.5054744388303732e-03 -1.6773997805290820e-04 2.8436699761004796e-03
|
||||
run_torque: ! |2
|
||||
1 -6.1277161704021292e+00 1.9449452655391706e+01 3.7526664376281076e+01
|
||||
2 3.0767989688067036e+01 3.1095664573129632e+01 3.2697892011874927e+01
|
||||
3 2.2092207761253846e+01 9.6389338768691211e+00 1.0028127498688024e+01
|
||||
4 -2.2507178174395555e+01 -1.4197261018991352e+00 -6.4386615845757671e+00
|
||||
5 -1.7803941502083841e+01 5.6481225018439211e+01 9.1704798140842918e+00
|
||||
6 -5.6807841245066328e+01 1.0336633607370787e+01 1.0855422628049993e+01
|
||||
7 1.7428760073365702e+01 2.1735188288933355e+01 1.4079824771977533e+01
|
||||
8 -4.4582355436297512e+01 3.0450757248883821e+01 7.5829367294428769e+00
|
||||
9 -1.5094915829787968e+01 -3.3576533301413953e+01 4.8166397377135084e+01
|
||||
10 1.0973094347830360e+01 1.0218907002108992e+00 -1.6721347822643487e+01
|
||||
11 1.0199558212882648e+01 7.6450610248304358e+01 7.2537880757255460e+00
|
||||
12 -4.0506844338089891e+00 -8.0783058629913533e+00 2.1055641652117071e+01
|
||||
13 -2.5706624333996821e+01 -3.7331353985395603e+00 5.7614346871351920e+01
|
||||
14 -2.0102378399944961e+01 2.5390298020315729e+00 4.9962644272992485e+01
|
||||
15 -3.7648498429414794e+01 2.0383290723231617e+00 3.3833639045692223e+01
|
||||
16 8.8927003637482454e+00 2.2317953694806178e+01 1.5164434404993270e+00
|
||||
17 -1.3327651474225521e+01 1.1591459940419933e+01 -2.7283321708754809e+00
|
||||
18 3.6524766681800806e+01 -4.7816118461394638e+01 4.6213750281233303e+01
|
||||
19 -3.6246551451623761e+00 -1.3874877124324456e+00 2.1151300943644827e+01
|
||||
20 5.7826471881067590e+01 -2.4328702316447824e+01 -7.4041280047991904e+00
|
||||
21 -1.5962315578441567e+01 -1.4839879129664279e+01 2.0149340395387977e+01
|
||||
22 -3.4861177509964607e+00 -3.5697227554916346e+01 -2.9750776757149413e+01
|
||||
23 -8.2634839072258348e+00 3.3737771191416826e+01 -1.2660276418845287e+01
|
||||
24 1.8703854501504455e+01 -1.5645088023891809e+01 -2.2733605897829513e+01
|
||||
25 1.5612004327982518e+00 -8.2018511111335837e+00 -2.8085016931855002e+01
|
||||
26 2.0140400378282479e+01 -7.8754459706884248e+00 -1.0601583601036417e+01
|
||||
27 -1.0975843760114651e+01 -3.9669607217153306e+01 -5.1221146281394347e+01
|
||||
28 3.8358449521425966e+00 2.0130999061460240e+00 -1.3672233012382646e+00
|
||||
29 2.4433070051020643e+01 4.2903727282924805e+01 -2.2734945786369632e+01
|
||||
...
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
---
|
||||
lammps_version: 17 Feb 2022
|
||||
date_generated: Fri Mar 18 22:17:59 2022
|
||||
lammps_version: 27 Jun 2024
|
||||
tags: generated
|
||||
date_generated: Sun Aug 4 23:03:14 2024
|
||||
epsilon: 4e-13
|
||||
skip_tests:
|
||||
prerequisites: ! |
|
||||
@ -16,9 +17,9 @@ post_commands: ! |
|
||||
fix test solute npt/sphere temp 50.0 ${t_target} 1.0 aniso 1.0 1.0 100.0 drag 0.01 flip no
|
||||
input_file: in.dipole
|
||||
natoms: 29
|
||||
global_scalar: 12.096663886115623
|
||||
global_scalar: 12.09666388611562
|
||||
global_vector: ! |-
|
||||
36 0.1869766531219188 1.3884401940983202 -1.143641040188948 0.09347675524754469 2.007142286709465 0.4254066968459499 -0.0025731892196910453 0.0016183796860617433 -0.017497577807990692 -0.0020955754000787407 0.00154466844932338 -0.01488781896977487 0.0026972315134052606 -0.00023072428193059388 -0.00023289107491333692 0.005208648473644532 -0.00022780275682141358 -0.00023637594502603685 6.353697508849446 0.2759117656261482 -0.22726511374584468 0.1484623788565729 0.40028504859566105 0.017981325048433843 -0.0002999716767593198 -0.0002999716767593198 -0.0002999716767593198 0.0981752799752815 0.053341609668295986 4.95516047425249 0.0005359956534890073 -4.5849683890516504e-05 -4.6280270443798504e-05 0.020217358264846576 3.867161073461921e-05 4.1637137703144936e-05
|
||||
36 0.18697665312191875 1.38844019409832 -1.143641040188948 0.09347675524754463 2.0071422867094646 0.4254066968459497 -0.002573189219691044 0.0016183796860617416 -0.017497577807990692 -0.0020955754000787394 0.0015446684493233788 -0.01488781896977487 0.0026972315134052606 -0.00023072428193059388 -0.00023289107491333692 0.005208648473644532 -0.00022780275682141358 -0.00023637594502603685 6.353697508849443 0.27591176562614816 -0.22726511374584468 0.14846237885657274 0.4002850485956609 0.017981325048433826 -0.0002999716767593198 -0.0002999716767593198 -0.0002999716767593198 0.09817527997528139 0.05334160966829589 4.95516047425249 0.0005359956534890073 -4.5849683890516504e-05 -4.6280270443798504e-05 0.020217358264846576 3.867161073461921e-05 4.1637137703144936e-05
|
||||
run_pos: ! |2
|
||||
1 -2.7397105633323537e-01 2.4781785743666527e+00 -1.7980596873158383e-01
|
||||
2 3.1208634768681343e-01 2.9563521874575622e+00 -8.4152963592209495e-01
|
||||
@ -50,22 +51,22 @@ run_pos: ! |2
|
||||
28 -2.7298172127749782e+00 -4.0269250728459882e+00 1.5452330932758489e+00
|
||||
29 -1.3036629303295193e+00 -3.6048159970063285e+00 2.2185254278264974e+00
|
||||
run_vel: ! |2
|
||||
1 6.6645514337822221e-04 6.0192577730141302e-04 -3.7299030694254800e-04
|
||||
2 4.4186462683745379e-03 -4.6840896920226343e-03 6.9463033422740798e-03
|
||||
3 -8.2788283512656355e-04 1.6664323303816283e-03 -3.6067014934863556e-04
|
||||
4 -2.3360131422093099e-03 -2.4652356574843341e-04 -6.7612095269435129e-03
|
||||
1 6.6645514337822231e-04 6.0192577730141302e-04 -3.7299030694254806e-04
|
||||
2 4.4186462683745396e-03 -4.6840896920226326e-03 6.9463033422740798e-03
|
||||
3 -8.2788283512656355e-04 1.6664323303816279e-03 -3.6067014934863551e-04
|
||||
4 -2.3360131422093108e-03 -2.4652356574843422e-04 -6.7612095269435129e-03
|
||||
5 -9.9515654282019347e-03 -1.0186535017680895e-02 7.0490084717633053e-03
|
||||
6 -6.3804753331014364e-05 1.1107780038266837e-03 4.6244242981496387e-04
|
||||
7 -3.0142488152500515e-05 -5.6684692709220636e-04 -5.9335396255129249e-04
|
||||
8 2.1070083677950848e-04 -5.2394803973737354e-04 6.1467530744658834e-04
|
||||
9 3.6195183545487952e-03 -8.3369682502568449e-03 -1.6601527132808564e-02
|
||||
10 3.2079212235368532e-04 6.8314953697639464e-04 -1.4658709900665799e-04
|
||||
9 3.6195183545487952e-03 -8.3369682502568432e-03 -1.6601527132808564e-02
|
||||
10 3.2079212235368521e-04 6.8314953697639464e-04 -1.4658709900665799e-04
|
||||
11 -3.7785845503840996e-03 -6.5404736905947487e-03 -6.2889329470937165e-03
|
||||
12 9.6291409057966740e-04 -6.5439203151497081e-04 -1.4918221706275551e-03
|
||||
13 -1.3242589815117630e-03 1.6385138464187414e-03 -5.7720431286344674e-04
|
||||
12 9.6291409057966740e-04 -6.5439203151497092e-04 -1.4918221706275551e-03
|
||||
13 -1.3242589815117625e-03 1.6385138464187401e-03 -5.7720431286344717e-04
|
||||
14 3.1480939042203030e-03 -7.0000358651570562e-03 2.4177974139595096e-03
|
||||
15 -3.3454335023896131e-03 4.4058024755002799e-04 1.4883635219226489e-02
|
||||
16 -1.7846013433072094e-04 -2.8806672944350730e-04 1.5882710120078808e-03
|
||||
15 -3.3454335023896152e-03 4.4058024755002799e-04 1.4883635219226489e-02
|
||||
16 -1.7846013433072089e-04 -2.8806672944350730e-04 1.5882710120078808e-03
|
||||
17 5.7176195253866985e-04 2.6935646129835835e-04 5.3688215217051862e-04
|
||||
18 -6.0936815808025862e-04 -9.3774557532468582e-04 -3.3558072507805731e-04
|
||||
19 -6.9919768291957119e-04 -3.6060777270430031e-03 4.2833405289822791e-03
|
||||
@ -79,4 +80,34 @@ run_vel: ! |2
|
||||
27 -2.6510179146429716e-04 3.6306203629019116e-04 -5.6235585400647747e-04
|
||||
28 -2.3068708109787484e-04 -8.5663070212203200e-04 2.1302563179109169e-03
|
||||
29 -2.5054744388303732e-03 -1.6773997805290820e-04 2.8436699761004796e-03
|
||||
run_torque: ! |2
|
||||
1 -6.0660818391266602e+00 1.9626142015743959e+01 3.7810315455845227e+01
|
||||
2 3.1086627430245031e+01 3.1559922086010953e+01 3.3385905729180720e+01
|
||||
3 2.2321864729536994e+01 9.8592747252142914e+00 1.0210115187357207e+01
|
||||
4 -2.3120749196899688e+01 -1.5899805743706104e+00 -6.5512410473677818e+00
|
||||
5 -1.8329210639420552e+01 5.7005263786272700e+01 9.3968307252608074e+00
|
||||
6 -5.8025493341725245e+01 1.0466802807207529e+01 1.0911933765209140e+01
|
||||
7 1.6893959738182637e+01 2.2082773261488860e+01 1.3985144361215289e+01
|
||||
8 -4.5187945100859821e+01 3.0772942031362557e+01 7.6461850322358078e+00
|
||||
9 -1.5180502321667255e+01 -3.4199898773076569e+01 4.8547447534871750e+01
|
||||
10 1.1517719857511585e+01 7.9452374131701542e-01 -1.7119436064829323e+01
|
||||
11 1.0442950702528758e+01 7.6816289767997219e+01 7.1166317558599355e+00
|
||||
12 -3.5964317585734498e+00 -8.1220469491431153e+00 2.0923830245103037e+01
|
||||
13 -2.5929181494647704e+01 -3.2833031788579881e+00 5.7968524934518165e+01
|
||||
14 -2.0295740978463765e+01 2.5641485002706430e+00 5.0370803328630622e+01
|
||||
15 -3.7219665122688724e+01 2.2710632544675340e+00 3.3747728711895171e+01
|
||||
16 8.9845518011810181e+00 2.2562606948955214e+01 1.3731908367575469e+00
|
||||
17 -1.3257834489616751e+01 1.1571932592993791e+01 -2.7222135722054990e+00
|
||||
18 3.6797531368782984e+01 -4.8449756711271370e+01 4.6735301744348575e+01
|
||||
19 -3.6539921027013356e+00 -1.4434974695842002e+00 2.1465476017408964e+01
|
||||
20 5.8197218381159274e+01 -2.4226041453460791e+01 -7.2276449578839550e+00
|
||||
21 -1.5833118978634616e+01 -1.5011099827401669e+01 2.0299638507345083e+01
|
||||
22 -3.5901038361540287e+00 -3.6231138768557685e+01 -3.0226233062003047e+01
|
||||
23 -8.4961498180872912e+00 3.4214654432737127e+01 -1.2845241682264085e+01
|
||||
24 1.8945253142131943e+01 -1.5910276330193202e+01 -2.3294771297456020e+01
|
||||
25 1.4926980431453991e+00 -8.2573776498377303e+00 -2.8232701560097244e+01
|
||||
26 2.0312538690670358e+01 -7.8590237308018986e+00 -1.0821678612971260e+01
|
||||
27 -1.1320545333645292e+01 -3.9980842064526570e+01 -5.1295313234694916e+01
|
||||
28 3.6290258946306180e+00 1.8294018697218410e+00 -1.2938753473310651e+00
|
||||
29 2.4092346285942053e+01 4.3370903825013755e+01 -2.2770854107671028e+01
|
||||
...
|
||||
|
||||
@ -1,7 +1,8 @@
|
||||
---
|
||||
lammps_version: 17 Feb 2022
|
||||
date_generated: Fri Mar 18 22:17:59 2022
|
||||
epsilon: 2e-13
|
||||
lammps_version: 27 Jun 2024
|
||||
tags: generated
|
||||
date_generated: Sun Aug 4 23:03:30 2024
|
||||
epsilon: 1e-12
|
||||
skip_tests:
|
||||
prerequisites: ! |
|
||||
atom full
|
||||
@ -16,9 +17,9 @@ post_commands: ! |
|
||||
fix test solute npt/sphere temp 50.0 ${t_target} 1.0 iso 1.0 1.0 100.0 dilate solute
|
||||
input_file: in.dipole
|
||||
natoms: 29
|
||||
global_scalar: 9.042301471806708
|
||||
global_scalar: 9.04230147180671
|
||||
global_vector: ! |-
|
||||
28 0.1863641554205169 1.420148091453985 -1.1292034459301246 0.09086316406911916 1.9990627120668834 0.47615124832482786 -0.006387790127403963 -0.00558070983166458 0.0010748001531976797 -0.00023261555228169703 -0.00023292456865841747 0.0020841825580977056 -0.00023513173250148996 -0.00023642170879896256 6.332884080784521 0.28221278023295715 -0.2243960653415431 0.14027648316892322 0.39706891031681196 0.02252697627211294 -0.000934258230287154 2.0887944455121046 0.00021358500655954555 -4.6225518401838857e-05 -4.628692634326172e-05 0.0032370232941587745 4.1199960358459955e-05 4.165326165323854e-05
|
||||
28 0.18636415542051693 1.4201480914539861 -1.1292034459301235 0.09086316406911915 1.9990627120668836 0.47615124832483197 -0.006387790127403967 -0.005580709831664581 0.0010748001531976801 -0.00023261555228169703 -0.00023292456865841747 0.0020841825580977065 -0.00023513173250148996 -0.00023642170879896256 6.332884080784522 0.28221278023295737 -0.22439606534154288 0.14027648316892316 0.3970689103168121 0.022526976272113326 -0.000934258230287154 2.0887944455121055 0.00021358500655954563 -4.6225518401838857e-05 -4.628692634326172e-05 0.003237023294158777 4.1199960358459955e-05 4.165326165323854e-05
|
||||
run_pos: ! |2
|
||||
1 -2.6730556919536941e-01 2.4568877649772691e+00 -1.7525449543283766e-01
|
||||
2 3.1651774679036304e-01 2.9312403511996870e+00 -8.4441875599840355e-01
|
||||
@ -50,21 +51,21 @@ run_pos: ! |2
|
||||
28 -2.7406520384725965e+00 -4.0207251278130975e+00 1.5828689861678511e+00
|
||||
29 -1.3108232656499081e+00 -3.5992986322410760e+00 2.2680459788743503e+00
|
||||
run_vel: ! |2
|
||||
1 6.7245251088027887e-04 6.1138248355858786e-04 -3.7339702570044338e-04
|
||||
2 4.4052559672891761e-03 -4.6696302057353299e-03 6.9799826311339004e-03
|
||||
3 -8.4229974223012048e-04 1.6692222625580460e-03 -3.4811445486190135e-04
|
||||
4 -2.3115850080186896e-03 -2.1921753106846976e-04 -6.6129202326324875e-03
|
||||
1 6.7245251088027887e-04 6.1138248355858764e-04 -3.7339702570044338e-04
|
||||
2 4.4052559672891761e-03 -4.6696302057353291e-03 6.9799826311339021e-03
|
||||
3 -8.4229974223012048e-04 1.6692222625580464e-03 -3.4811445486190130e-04
|
||||
4 -2.3115850080186900e-03 -2.1921753106847122e-04 -6.6129202326324875e-03
|
||||
5 -9.9270913083732166e-03 -1.0162835960427124e-02 6.6835450876805242e-03
|
||||
6 -6.3349132255598176e-05 1.1213920888471765e-03 4.3957112467583707e-04
|
||||
7 -3.0550264536359436e-05 -5.7212395421602175e-04 -5.7852611868756802e-04
|
||||
8 2.1230260290084160e-04 -5.2946150247993511e-04 6.1002092957609434e-04
|
||||
9 3.5835237205891044e-03 -8.2976423766382163e-03 -1.6569654205811610e-02
|
||||
10 3.2215400971380464e-04 6.7777051599916360e-04 -1.4690970683667591e-04
|
||||
11 -3.8262569070299369e-03 -6.4899437483942309e-03 -6.0625717608142051e-03
|
||||
12 9.6903366708958486e-04 -6.5830810892723922e-04 -1.4851103246954738e-03
|
||||
13 -1.3051803182304389e-03 1.5782109043276430e-03 -5.7359190198993059e-04
|
||||
14 3.1570944675627741e-03 -6.9925437658747589e-03 2.5670995049832746e-03
|
||||
15 -3.3107454411357724e-03 5.6059336622465679e-04 1.4845717250576757e-02
|
||||
8 2.1230260290084160e-04 -5.2946150247993511e-04 6.1002092957609445e-04
|
||||
9 3.5835237205891039e-03 -8.2976423766382163e-03 -1.6569654205811610e-02
|
||||
10 3.2215400971380464e-04 6.7777051599916360e-04 -1.4690970683667594e-04
|
||||
11 -3.8262569070299374e-03 -6.4899437483942292e-03 -6.0625717608142043e-03
|
||||
12 9.6903366708958486e-04 -6.5830810892723943e-04 -1.4851103246954738e-03
|
||||
13 -1.3051803182304387e-03 1.5782109043276438e-03 -5.7359190198992950e-04
|
||||
14 3.1570944675627737e-03 -6.9925437658747589e-03 2.5670995049832746e-03
|
||||
15 -3.3107454411357724e-03 5.6059336622465647e-04 1.4845717250576757e-02
|
||||
16 -1.8030723242303502e-04 -2.9205235801445917e-04 1.5828900167446096e-03
|
||||
17 5.7535428047488272e-04 2.7096053960059093e-04 5.2484092395923122e-04
|
||||
18 -6.0936815808025862e-04 -9.3774557532468582e-04 -3.3558072507805731e-04
|
||||
@ -79,4 +80,34 @@ run_vel: ! |2
|
||||
27 -2.6510179146429716e-04 3.6306203629019116e-04 -5.6235585400647747e-04
|
||||
28 -2.3068708109787484e-04 -8.5663070212203200e-04 2.1302563179109169e-03
|
||||
29 -2.5054744388303732e-03 -1.6773997805290820e-04 2.8436699761004796e-03
|
||||
run_torque: ! |2
|
||||
1 -6.0554110246137771e+00 1.9847575898948492e+01 3.8198295167231464e+01
|
||||
2 3.0670154989358359e+01 3.0869771736844150e+01 3.2281895844842595e+01
|
||||
3 2.2350393637174943e+01 9.7433278995078823e+00 1.0139982748947251e+01
|
||||
4 -2.2319106887091241e+01 -9.3329601970119924e-01 -6.6119344773777815e+00
|
||||
5 -1.7362349894562058e+01 5.6916612156073434e+01 9.0140846563597901e+00
|
||||
6 -5.6431434532037585e+01 1.0405919833939263e+01 1.1049076828983900e+01
|
||||
7 1.8941670488698040e+01 2.1618049896982015e+01 1.4635688267029467e+01
|
||||
8 -4.4090277831995607e+01 3.0850568334747003e+01 7.8191692458467950e+00
|
||||
9 -1.5149678159864287e+01 -3.2837983461253856e+01 4.8126635558511659e+01
|
||||
10 1.0555810741910328e+01 1.1981655127247099e+00 -1.6419552949860684e+01
|
||||
11 1.0099254195449902e+01 7.7469406011570371e+01 7.5590595843916741e+00
|
||||
12 -4.2483251972710558e+00 -8.4024364047244013e+00 2.1918595539110594e+01
|
||||
13 -2.5823720770072828e+01 -3.6707252549051494e+00 5.7852965687528283e+01
|
||||
14 -2.0058794195989783e+01 2.5320265646964035e+00 5.0010226620755667e+01
|
||||
15 -3.8842882009303608e+01 1.9933563583102023e+00 3.4778718592720743e+01
|
||||
16 8.9312102025061222e+00 2.2407003172366704e+01 1.6084415770601557e+00
|
||||
17 -1.3673211522865074e+01 1.1862238206322800e+01 -2.7931664289026159e+00
|
||||
18 3.6296151138160560e+01 -4.6993939548345828e+01 4.5590903859179683e+01
|
||||
19 -3.6155019543679154e+00 -1.2708845852169000e+00 2.0736761327538751e+01
|
||||
20 5.7510402140498073e+01 -2.4323978212522249e+01 -7.4747103035183162e+00
|
||||
21 -1.6112751339176178e+01 -1.4572954004084757e+01 1.9901663931354502e+01
|
||||
22 -3.2616079590092801e+00 -3.5263943061632084e+01 -2.9282541013692690e+01
|
||||
23 -8.1241593398597960e+00 3.3321305667998743e+01 -1.2502058995490415e+01
|
||||
24 1.8508619511691801e+01 -1.5458307619312894e+01 -2.2396963704559550e+01
|
||||
25 3.2331692899242959e-01 -8.7719031291782219e+00 -2.9314173141348295e+01
|
||||
26 2.0031181144490244e+01 -7.8658943239619745e+00 -1.0492820053735894e+01
|
||||
27 -1.0257782620802805e+01 -3.9202065451935738e+01 -5.1363492997585205e+01
|
||||
28 3.9228263689409992e+00 2.2997995161843612e+00 -1.3970420286579051e+00
|
||||
29 2.4630674102439567e+01 4.2565916677290893e+01 -2.2691969241133958e+01
|
||||
...
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
---
|
||||
lammps_version: 17 Feb 2022
|
||||
date_generated: Fri Mar 18 22:17:59 2022
|
||||
lammps_version: 27 Jun 2024
|
||||
tags: generated
|
||||
date_generated: Sun Aug 4 23:05:01 2024
|
||||
epsilon: 1e-12
|
||||
skip_tests:
|
||||
prerequisites: ! |
|
||||
@ -17,57 +18,57 @@ post_commands: ! |
|
||||
fix test solute npt/sphere temp 50.0 ${t_target} 1.0 tri 1.0 1.0 100.0 nreset 2
|
||||
input_file: in.dipole
|
||||
natoms: 29
|
||||
global_scalar: 12.427074202242965
|
||||
global_scalar: 12.427074202242943
|
||||
global_vector: ! |-
|
||||
48 0.18732599278123133 1.4327704185774883 -1.1143503631061675 0.09281449313807297 2.0096876527033753 0.5168928407674991 -0.0025872780315617993 0.0016072198861910548 -0.017515031066905436 -0.0006359696254764761 0.003684960047314241 0.00146301403425373 -0.0021206674795813452 0.001524928850133378 -0.014917163613204762 -0.0004705411201213999 0.003272044118682296 0.001226089504575895 0.0021598960215781725 -0.0002313961526710642 -0.00023292466339283792 0.0048048560344023045 -0.0002297564102730591 -0.00023642225051889441 6.365568501757148 0.2847210975358989 -0.22144445077120087 0.1463661846389862 0.40130093870042066 0.02654691633471399 -0.0003006594610783624 -0.0003006594610783624 -0.0003006594610783624 0 0 0 0.10054042535472664 0.05198699648022517 4.974713468580746 0.004949835079329656 0.2393502397929795 0.03360778691045218 0.0004292159845383489 -4.5983198494216164e-05 -4.628694516894922e-05 0.01720422325943158 3.9337756237346446e-05 4.1653452536114995e-05
|
||||
48 0.1873259927812314 1.4327704185774879 -1.114350363106168 0.09281449313807312 2.009687652703378 0.5168928407675007 -0.0025872780315617915 0.001607219886191058 -0.017515031066905423 -0.0006359696254764772 0.0036849600473142408 0.0014630140342537371 -0.0021206674795813353 0.001524928850133392 -0.014917163613204713 -0.0004705411201213813 0.003272044118682351 0.001226089504575921 0.0021598960215781695 -0.0002313961526710642 -0.00023292466339283792 0.004804856034402295 -0.0002297564102730591 -0.00023642225051889441 6.365568501757151 0.2847210975358988 -0.22144445077120098 0.14636618463898668 0.4013009387004217 0.02654691633471416 -0.0003006594610783624 -0.0003006594610783624 -0.0003006594610783624 0 0 0 0.1005404253547257 0.05198699648022612 4.974713468580713 0.004949835079329265 0.2393502397929875 0.03360778691045361 0.0004292159845383483 -4.5983198494216164e-05 -4.628694516894922e-05 0.017204223259431512 3.9337756237346446e-05 4.1653452536114995e-05
|
||||
run_pos: ! |2
|
||||
1 -2.3019540006487116e-01 2.4731491152481908e+00 -1.7981254448987816e-01
|
||||
2 3.5408091994147828e-01 2.9517458018682987e+00 -8.4154317667398715e-01
|
||||
3 -6.5053832938524980e-01 1.2449512560553124e+00 -6.2241599186766017e-01
|
||||
4 -1.5342078390356919e+00 1.4884208596718214e+00 -1.2480276360391489e+00
|
||||
1 -2.3019540006487293e-01 2.4731491152481908e+00 -1.7981254448987816e-01
|
||||
2 3.5408091994147206e-01 2.9517458018682987e+00 -8.4154317667398715e-01
|
||||
3 -6.5053832938525158e-01 1.2449512560553124e+00 -6.2241599186766017e-01
|
||||
4 -1.5342078390356928e+00 1.4884208596718214e+00 -1.2480276360391489e+00
|
||||
5 -8.5668136613463730e-01 9.2234546360780989e-01 3.9231452398524702e-01
|
||||
6 3.3322113863941460e-01 2.2597463982144994e-01 -1.2709694160975076e+00
|
||||
7 3.7475098107547833e-01 -1.3724988393778226e-02 -2.4320792823935395e+00
|
||||
8 1.2031137603847464e+00 -4.9024585938175047e-01 -6.7426808576801633e-01
|
||||
9 1.4241784975508018e+00 -2.7021689756584077e-01 2.3803620252476776e-01
|
||||
10 2.0530428396862863e+00 -1.4336868349895733e+00 -9.6110246210374406e-01
|
||||
11 1.8188729850824128e+00 -2.0021830794840838e+00 -1.8707494276865724e+00
|
||||
12 3.0352703768848599e+00 -4.9511047953297194e-01 -1.6037322028476977e+00
|
||||
13 4.0741331374345844e+00 -9.0138890701479379e-01 -1.6215524267381634e+00
|
||||
14 2.6340159931331169e+00 -4.2299939057361513e-01 -2.6207532717282440e+00
|
||||
15 3.0012113993627043e+00 5.5766796064899893e-01 -1.2140224834055351e+00
|
||||
16 2.6858185719984888e+00 -2.4051713466577018e+00 2.5220211520086799e-02
|
||||
17 2.2721660250726270e+00 -2.1105589725251424e+00 1.1204022912329368e+00
|
||||
18 2.1691096725020067e+00 3.0200034523915207e+00 -3.4652251395628202e+00
|
||||
19 1.5638692354297206e+00 2.6337150067951516e+00 -4.1837327833568496e+00
|
||||
20 2.7925636956819009e+00 3.6869563744341303e+00 -3.8799004126527885e+00
|
||||
21 4.9191678730049482e+00 -4.0841855614113509e+00 -3.5688686765499709e+00
|
||||
22 4.3795875951964014e+00 -4.2141688660389169e+00 -4.3978133092346745e+00
|
||||
6 3.3322113863941727e-01 2.2597463982144994e-01 -1.2709694160975076e+00
|
||||
7 3.7475098107547922e-01 -1.3724988393778226e-02 -2.4320792823935395e+00
|
||||
8 1.2031137603847499e+00 -4.9024585938174958e-01 -6.7426808576801633e-01
|
||||
9 1.4241784975508045e+00 -2.7021689756584166e-01 2.3803620252476776e-01
|
||||
10 2.0530428396862916e+00 -1.4336868349895742e+00 -9.6110246210374672e-01
|
||||
11 1.8188729850824146e+00 -2.0021830794840829e+00 -1.8707494276865724e+00
|
||||
12 3.0352703768848617e+00 -4.9511047953297194e-01 -1.6037322028476977e+00
|
||||
13 4.0741331374345879e+00 -9.0138890701479291e-01 -1.6215524267381634e+00
|
||||
14 2.6340159931331186e+00 -4.2299939057361602e-01 -2.6207532717282440e+00
|
||||
15 3.0012113993627061e+00 5.5766796064899893e-01 -1.2140224834055351e+00
|
||||
16 2.6858185719984924e+00 -2.4051713466577018e+00 2.5220211520084135e-02
|
||||
17 2.2721660250726288e+00 -2.1105589725251424e+00 1.1204022912329350e+00
|
||||
18 2.1691096725020014e+00 3.0200034523915207e+00 -3.4652251395628202e+00
|
||||
19 1.5638692354297223e+00 2.6337150067951516e+00 -4.1837327833568496e+00
|
||||
20 2.7925636956819027e+00 3.6869563744341303e+00 -3.8799004126527885e+00
|
||||
21 4.9191678730049482e+00 -4.0841855614113536e+00 -3.5688686765499709e+00
|
||||
22 4.3795875951964049e+00 -4.2141688660389161e+00 -4.3978133092346745e+00
|
||||
23 5.7478464814125978e+00 -3.5844338072573851e+00 -3.8248183325717333e+00
|
||||
24 2.1237696561245585e+00 3.1501013360303496e+00 3.0904476168033845e+00
|
||||
25 1.3550047845470763e+00 3.2744376408481468e+00 2.4555407382440482e+00
|
||||
26 2.6362472864936795e+00 4.0116438051188350e+00 3.1473576257765501e+00
|
||||
27 -1.9103797042670241e+00 -4.3687665159467350e+00 2.0633187830108284e+00
|
||||
28 -2.6890947459520760e+00 -4.0329898501364472e+00 1.5451958805107964e+00
|
||||
24 2.1237696561245567e+00 3.1501013360303496e+00 3.0904476168033845e+00
|
||||
25 1.3550047845470798e+00 3.2744376408481468e+00 2.4555407382440482e+00
|
||||
26 2.6362472864936759e+00 4.0116438051188350e+00 3.1473576257765483e+00
|
||||
27 -1.9103797042670267e+00 -4.3687665159467350e+00 2.0633187830108284e+00
|
||||
28 -2.6890947459520786e+00 -4.0329898501364490e+00 1.5451958805107964e+00
|
||||
29 -1.2598435219755979e+00 -3.6113182514368400e+00 2.2184764640185506e+00
|
||||
run_vel: ! |2
|
||||
1 6.6502876613817082e-04 6.0137715630290990e-04 -3.7231857614918870e-04
|
||||
2 4.4310732749849834e-03 -4.6860518880721125e-03 6.9172213803384598e-03
|
||||
3 -8.2879932936262470e-04 1.6675520063217355e-03 -3.6230664453296249e-04
|
||||
4 -2.3009589595040579e-03 -2.4940767601862654e-04 -6.7114948439266622e-03
|
||||
5 -9.9666600062292034e-03 -1.0192454842315554e-02 7.0756875873893878e-03
|
||||
6 -6.6466948691936705e-05 1.1100485529839253e-03 4.6221787716926475e-04
|
||||
7 -2.6664287463238046e-05 -5.6727672702013335e-04 -5.9340251907992480e-04
|
||||
8 2.1069461419280237e-04 -5.2276533772720711e-04 6.1543942080566469e-04
|
||||
9 3.5880864338550958e-03 -8.3291497817817185e-03 -1.6629312246477103e-02
|
||||
10 3.2193494737599299e-04 6.8203760452628106e-04 -1.4590168253026371e-04
|
||||
11 -3.7645937681506248e-03 -6.5457646086291748e-03 -6.2933396080559157e-03
|
||||
12 9.6775971858663215e-04 -6.5412431179954632e-04 -1.4911729864314906e-03
|
||||
13 -1.3236241180578574e-03 1.6172374806127285e-03 -6.1192476666208843e-04
|
||||
14 3.1820466835757160e-03 -7.0137200098607964e-03 2.4247294180746626e-03
|
||||
15 -3.3775929249580030e-03 4.3714311542646252e-04 1.4901523418484804e-02
|
||||
16 -1.8137388689900037e-04 -2.8790510242829455e-04 1.5850222165835152e-03
|
||||
17 5.6799086787377967e-04 2.7020817344844704e-04 5.3751629851417294e-04
|
||||
1 6.6502876613816931e-04 6.0137715630290947e-04 -3.7231857614918745e-04
|
||||
2 4.4310732749850614e-03 -4.6860518880720969e-03 6.9172213803384112e-03
|
||||
3 -8.2879932936262318e-04 1.6675520063217353e-03 -3.6230664453296320e-04
|
||||
4 -2.3009589595040692e-03 -2.4940767601862936e-04 -6.7114948439266622e-03
|
||||
5 -9.9666600062292138e-03 -1.0192454842315558e-02 7.0756875873893999e-03
|
||||
6 -6.6466948691938101e-05 1.1100485529839256e-03 4.6221787716926562e-04
|
||||
7 -2.6664287463237961e-05 -5.6727672702013335e-04 -5.9340251907992513e-04
|
||||
8 2.1069461419280139e-04 -5.2276533772720743e-04 6.1543942080566339e-04
|
||||
9 3.5880864338551583e-03 -8.3291497817817133e-03 -1.6629312246477079e-02
|
||||
10 3.2193494737599039e-04 6.8203760452628410e-04 -1.4590168253026048e-04
|
||||
11 -3.7645937681506291e-03 -6.5457646086292147e-03 -6.2933396080559695e-03
|
||||
12 9.6775971858663584e-04 -6.5412431179954556e-04 -1.4911729864314916e-03
|
||||
13 -1.3236241180578593e-03 1.6172374806127008e-03 -6.1192476666208930e-04
|
||||
14 3.1820466835756922e-03 -7.0137200098607808e-03 2.4247294180746591e-03
|
||||
15 -3.3775929249580221e-03 4.3714311542645894e-04 1.4901523418484794e-02
|
||||
16 -1.8137388689900075e-04 -2.8790510242829488e-04 1.5850222165835182e-03
|
||||
17 5.6799086787377999e-04 2.7020817344844682e-04 5.3751629851417240e-04
|
||||
18 -6.0936815808025862e-04 -9.3774557532468582e-04 -3.3558072507805731e-04
|
||||
19 -6.9919768291957119e-04 -3.6060777270430031e-03 4.2833405289822791e-03
|
||||
20 4.7777805013736515e-03 5.1003745845520452e-03 1.8002873923729241e-03
|
||||
@ -80,4 +81,34 @@ run_vel: ! |2
|
||||
27 -2.6510179146429716e-04 3.6306203629019116e-04 -5.6235585400647747e-04
|
||||
28 -2.3068708109787484e-04 -8.5663070212203200e-04 2.1302563179109169e-03
|
||||
29 -2.5054744388303732e-03 -1.6773997805290820e-04 2.8436699761004796e-03
|
||||
run_torque: ! |2
|
||||
1 -6.0124998311159761e+00 1.9682321519591596e+01 3.7883914181870679e+01
|
||||
2 3.1304748515804327e+01 3.1735147209794683e+01 3.3506624646980455e+01
|
||||
3 2.2197619356262216e+01 9.5964148014200212e+00 1.0018701888133929e+01
|
||||
4 -2.2925035388947208e+01 -1.7268817514260277e+00 -6.4238401477697584e+00
|
||||
5 -1.8317034992438174e+01 5.6865300805017029e+01 9.3866377577176667e+00
|
||||
6 -5.8014798806018447e+01 1.0521365093107576e+01 1.1018817099660858e+01
|
||||
7 1.7002858452108327e+01 2.2216839813185452e+01 1.4072539705651169e+01
|
||||
8 -4.5214233698263371e+01 3.1067017406665837e+01 7.7706963464292214e+00
|
||||
9 -1.5117631388935992e+01 -3.3350320503611997e+01 4.8169884280578515e+01
|
||||
10 1.1517938149998736e+01 8.8191651220009604e-01 -1.7255449085517540e+01
|
||||
11 1.0349229723879549e+01 7.6482164072936826e+01 7.1283274042611522e+00
|
||||
12 -3.6573842758754251e+00 -8.0828163783943268e+00 2.0863198218211974e+01
|
||||
13 -2.6030678794387281e+01 -3.3853184606289313e+00 5.8222181879036626e+01
|
||||
14 -2.0091140090056427e+01 2.5296096619438533e+00 5.0767210533944045e+01
|
||||
15 -3.7356553240355069e+01 2.4129733052318327e+00 3.4028113212218109e+01
|
||||
16 9.1018118836520419e+00 2.2866714519115654e+01 1.2827700966519586e+00
|
||||
17 -1.3095170221983704e+01 1.1834456458118769e+01 -2.7690750508703643e+00
|
||||
18 3.6923905678275972e+01 -4.8452896603006629e+01 4.6791656214139635e+01
|
||||
19 -3.4922673408570279e+00 -1.6758304527193135e+00 2.1461257989774921e+01
|
||||
20 5.8139191351577928e+01 -2.4182337131991854e+01 -7.2035111370324136e+00
|
||||
21 -1.5855429850534771e+01 -1.4961013238349713e+01 2.0251611940566924e+01
|
||||
22 -3.7488719078728421e+00 -3.5905878830962223e+01 -3.0067184354921146e+01
|
||||
23 -8.6228611844314340e+00 3.4186511472012427e+01 -1.2841613920093099e+01
|
||||
24 1.8773442106149677e+01 -1.5772957526947746e+01 -2.3113007482616975e+01
|
||||
25 1.4413043635253722e+00 -8.2060640707646897e+00 -2.8034644356237699e+01
|
||||
26 2.0223486241785100e+01 -7.8930903329601589e+00 -1.0668274064581684e+01
|
||||
27 -1.1365103173162456e+01 -3.9925908341195530e+01 -5.1148655887617643e+01
|
||||
28 3.6648578698064367e+00 1.7832410201915763e+00 -1.3069662579365211e+00
|
||||
29 2.4129203274350708e+01 4.3140161737654658e+01 -2.2707274398106854e+01
|
||||
...
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
---
|
||||
lammps_version: 17 Feb 2022
|
||||
date_generated: Fri Mar 18 22:17:59 2022
|
||||
lammps_version: 27 Jun 2024
|
||||
tags: generated
|
||||
date_generated: Sun Aug 4 23:05:44 2024
|
||||
epsilon: 5e-14
|
||||
skip_tests:
|
||||
prerequisites: ! |
|
||||
@ -47,21 +48,21 @@ run_pos: ! |2
|
||||
28 -2.7406520384725965e+00 -4.0207251278130975e+00 1.5828689861678511e+00
|
||||
29 -1.3108232656499081e+00 -3.5992986322410760e+00 2.2680459788743503e+00
|
||||
run_vel: ! |2
|
||||
1 8.0441098013536900e-04 7.1566696890217009e-04 -4.3319530641127335e-04
|
||||
2 4.9019924927833974e-03 -4.7801485992371362e-03 8.0763763167138545e-03
|
||||
3 -1.0296827041707426e-03 1.9681821177098759e-03 -4.0661362502986771e-04
|
||||
4 -2.4750904667702675e-03 -4.0142184848872351e-04 -7.4645414457473643e-03
|
||||
5 -1.0920223377262466e-02 -1.0990650916587272e-02 7.1259821326181468e-03
|
||||
1 8.0441098013536922e-04 7.1566696890216987e-04 -4.3319530641127346e-04
|
||||
2 4.9019924927833974e-03 -4.7801485992371336e-03 8.0763763167138562e-03
|
||||
3 -1.0296827041707426e-03 1.9681821177098763e-03 -4.0661362502986766e-04
|
||||
4 -2.4750904667702675e-03 -4.0142184848872438e-04 -7.4645414457473643e-03
|
||||
5 -1.0920223377262466e-02 -1.0990650916587274e-02 7.1259821326181451e-03
|
||||
6 -9.5250936177773566e-05 1.3338845867289183e-03 5.4216231888479466e-04
|
||||
7 -4.3622272484028061e-05 -6.9095838256533388e-04 -6.9347553685684493e-04
|
||||
8 2.6770309186413674e-04 -6.5039173203211488e-04 6.8080720281545992e-04
|
||||
9 3.9551108074098729e-03 -9.3129436730056761e-03 -1.8150317067617373e-02
|
||||
10 3.9268045122209367e-04 7.8613414593941687e-04 -1.8443604077645880e-04
|
||||
10 3.9268045122209367e-04 7.8613414593941687e-04 -1.8443604077645888e-04
|
||||
11 -4.1884490183000996e-03 -7.1206276521598860e-03 -6.7115880881258904e-03
|
||||
12 1.1515461519926520e-03 -7.7600056283407145e-04 -1.7352241098650581e-03
|
||||
13 -1.2037022170798494e-03 2.1033375439546294e-03 -6.8928778601844956e-04
|
||||
14 3.5046339401241904e-03 -8.0020522800663824e-03 2.6034033369112244e-03
|
||||
15 -3.9825896439104579e-03 1.5687388979248248e-04 1.6410860063121452e-02
|
||||
12 1.1515461519926524e-03 -7.7600056283407166e-04 -1.7352241098650581e-03
|
||||
13 -1.2037022170798490e-03 2.1033375439546290e-03 -6.8928778601844891e-04
|
||||
14 3.5046339401241904e-03 -8.0020522800663824e-03 2.6034033369112253e-03
|
||||
15 -3.9825896439104579e-03 1.5687388979248213e-04 1.6410860063121459e-02
|
||||
16 -2.1359275515571666e-04 -3.5441416299211248e-04 1.8682699034667436e-03
|
||||
17 6.8808524051577229e-04 3.2653076879221409e-04 6.4078607994587312e-04
|
||||
18 -6.0936815808025862e-04 -9.3774557532468582e-04 -3.3558072507805731e-04
|
||||
@ -76,4 +77,34 @@ run_vel: ! |2
|
||||
27 -2.6510179146429716e-04 3.6306203629019116e-04 -5.6235585400647747e-04
|
||||
28 -2.3068708109787484e-04 -8.5663070212203200e-04 2.1302563179109169e-03
|
||||
29 -2.5054744388303732e-03 -1.6773997805290820e-04 2.8436699761004796e-03
|
||||
run_torque: ! |2
|
||||
1 -6.1369442148570865e+00 1.9344329280997965e+01 3.7344506939264207e+01
|
||||
2 3.0372242336331482e+01 3.0516736906001874e+01 3.1837679095375965e+01
|
||||
3 2.1817318817985253e+01 9.4576413065995695e+00 9.8636459614053820e+00
|
||||
4 -2.1859322113371874e+01 -1.0401405983068739e+00 -6.4154018256568133e+00
|
||||
5 -1.6984681658568327e+01 5.5916090651560040e+01 8.8272011818718816e+00
|
||||
6 -5.5445401523514889e+01 1.0180538866331212e+01 1.0772053030432435e+01
|
||||
7 1.8266604749251279e+01 2.1133479721233556e+01 1.4209146957622119e+01
|
||||
8 -4.3619353226873464e+01 3.0173491608019667e+01 7.5845536355433731e+00
|
||||
9 -1.4972711327577034e+01 -3.2426165839548453e+01 4.7557419242889260e+01
|
||||
10 1.0333541801876125e+01 1.3064173904648970e+00 -1.6281096208357916e+01
|
||||
11 9.9463019103210613e+00 7.5793545085830772e+01 7.3376780539143125e+00
|
||||
12 -4.3477468764010609e+00 -8.1149312707506045e+00 2.1294974920295019e+01
|
||||
13 -2.5499326677842884e+01 -4.0243913648910663e+00 5.7246138756449035e+01
|
||||
14 -1.9683515377820925e+01 2.4820181675524071e+00 4.9348962151675231e+01
|
||||
15 -3.7855165768175027e+01 2.1221904028945908e+00 3.4104393401183650e+01
|
||||
16 8.7158940337050286e+00 2.1868069478502083e+01 1.5554899051274487e+00
|
||||
17 -1.3272387048726866e+01 1.1831520641370773e+01 -2.7741884943671709e+00
|
||||
18 3.6389100706671151e+01 -4.6952265624106118e+01 4.5604293213892028e+01
|
||||
19 -3.6996258348060067e+00 -1.1557494761353593e+00 2.0757209307809553e+01
|
||||
20 5.7445951329295376e+01 -2.4306027467396433e+01 -7.4743937873436552e+00
|
||||
21 -1.6223863094107173e+01 -1.4593925365079004e+01 1.9953362336512413e+01
|
||||
22 -3.2058029620351300e+00 -3.5223897380584305e+01 -2.9218653334039352e+01
|
||||
23 -8.1678114304270526e+00 3.3245566444795379e+01 -1.2476865309174510e+01
|
||||
24 1.8570656282853857e+01 -1.5481789966966369e+01 -2.2352134119257013e+01
|
||||
25 1.7658057211937717e+00 -8.1674590394669622e+00 -2.8080610896993186e+01
|
||||
26 1.9981245915490664e+01 -7.8110010956728546e+00 -1.0521226534863638e+01
|
||||
27 -1.0527945105027145e+01 -3.9204819734927668e+01 -5.1025650554957828e+01
|
||||
28 3.9126067084806371e+00 2.3092835764055835e+00 -1.3933264500680171e+00
|
||||
29 2.4598237451858992e+01 4.2569045443064546e+01 -2.2681691321733148e+01
|
||||
...
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
---
|
||||
lammps_version: 17 Feb 2022
|
||||
date_generated: Fri Mar 18 22:17:59 2022
|
||||
lammps_version: 27 Jun 2024
|
||||
tags: generated
|
||||
date_generated: Sun Aug 4 23:06:12 2024
|
||||
epsilon: 5e-14
|
||||
skip_tests:
|
||||
prerequisites: ! |
|
||||
@ -47,22 +48,22 @@ run_pos: ! |2
|
||||
28 -2.7406520384725965e+00 -4.0207251278130975e+00 1.5828689861678511e+00
|
||||
29 -1.3108232656499081e+00 -3.5992986322410760e+00 2.2680459788743503e+00
|
||||
run_vel: ! |2
|
||||
1 8.0473659311712108e-04 7.1569249347906293e-04 -4.3342870018006266e-04
|
||||
2 4.8898479203602872e-03 -4.7827042023383653e-03 8.0841799193837622e-03
|
||||
3 -1.0294756367549977e-03 1.9683076071813905e-03 -4.0617066185945003e-04
|
||||
4 -2.4747982635460650e-03 -4.0369263662479350e-04 -7.4617063284330562e-03
|
||||
1 8.0473659311712130e-04 7.1569249347906293e-04 -4.3342870018006266e-04
|
||||
2 4.8898479203602872e-03 -4.7827042023383653e-03 8.0841799193837639e-03
|
||||
3 -1.0294756367549977e-03 1.9683076071813905e-03 -4.0617066185944997e-04
|
||||
4 -2.4747982635460650e-03 -4.0369263662479437e-04 -7.4617063284330570e-03
|
||||
5 -1.0926646593906205e-02 -1.0990152085046808e-02 7.1139929395277850e-03
|
||||
6 -9.5067271206254411e-05 1.3336935657649609e-03 5.4214461928120254e-04
|
||||
6 -9.5067271206254411e-05 1.3336935657649609e-03 5.4214461928120232e-04
|
||||
7 -4.3586025236289389e-05 -6.9109610170650215e-04 -6.9337762329437880e-04
|
||||
8 2.6803899143798955e-04 -6.5040541267279931e-04 6.8116655292381478e-04
|
||||
8 2.6803899143798955e-04 -6.5040541267279953e-04 6.8116655292381478e-04
|
||||
9 3.9386905614672216e-03 -9.3112400668916677e-03 -1.8163977072531323e-02
|
||||
10 3.9247060772836721e-04 7.8592522562680449e-04 -1.8488118631442108e-04
|
||||
11 -4.1794652638823824e-03 -7.0974426331113054e-03 -6.7076698172827591e-03
|
||||
12 1.1514884390152259e-03 -7.7558890534917975e-04 -1.7352975395072093e-03
|
||||
13 -1.2091918935275532e-03 2.1057712474429279e-03 -6.8173220473209044e-04
|
||||
14 3.4935556917242974e-03 -8.0116807211232828e-03 2.6013722731623324e-03
|
||||
15 -3.9745580146274334e-03 1.4335430630175937e-04 1.6407163363653991e-02
|
||||
16 -2.1348158583193186e-04 -3.5449321712298289e-04 1.8683099741508020e-03
|
||||
10 3.9247060772836754e-04 7.8592522562680460e-04 -1.8488118631442121e-04
|
||||
11 -4.1794652638823824e-03 -7.0974426331113036e-03 -6.7076698172827591e-03
|
||||
12 1.1514884390152259e-03 -7.7558890534918008e-04 -1.7352975395072089e-03
|
||||
13 -1.2091918935275532e-03 2.1057712474429275e-03 -6.8173220473209011e-04
|
||||
14 3.4935556917242965e-03 -8.0116807211232863e-03 2.6013722731623328e-03
|
||||
15 -3.9745580146274342e-03 1.4335430630175834e-04 1.6407163363653991e-02
|
||||
16 -2.1348158583193186e-04 -3.5449321712298267e-04 1.8683099741508020e-03
|
||||
17 6.8803503268433628e-04 3.2662083176268592e-04 6.4072364607846313e-04
|
||||
18 -6.0936815808025862e-04 -9.3774557532468582e-04 -3.3558072507805731e-04
|
||||
19 -6.9919768291957119e-04 -3.6060777270430031e-03 4.2833405289822791e-03
|
||||
@ -76,4 +77,34 @@ run_vel: ! |2
|
||||
27 -2.6510179146429716e-04 3.6306203629019116e-04 -5.6235585400647747e-04
|
||||
28 -2.3068708109787484e-04 -8.5663070212203200e-04 2.1302563179109169e-03
|
||||
29 -2.5054744388303732e-03 -1.6773997805290820e-04 2.8436699761004796e-03
|
||||
run_torque: ! |2
|
||||
1 -6.1403759666565509e+00 1.9281929610299720e+01 3.7235380474171713e+01
|
||||
2 3.0340583242959461e+01 3.0494180188781673e+01 3.1832412100309746e+01
|
||||
3 2.1834385201299796e+01 9.5214771278104884e+00 9.9078886460567261e+00
|
||||
4 -2.1891092268373558e+01 -9.9863963616844353e-01 -6.4457164244150640e+00
|
||||
5 -1.7064404784024017e+01 5.5982980061428862e+01 8.8639899167837601e+00
|
||||
6 -5.5462360531960748e+01 1.0135485103209382e+01 1.0682510074463719e+01
|
||||
7 1.8324887082603652e+01 2.0930226066638173e+01 1.4164473028447718e+01
|
||||
8 -4.3515896635067904e+01 3.0227947771508358e+01 7.6213564711468473e+00
|
||||
9 -1.4836923218200029e+01 -3.2373064334732746e+01 4.7191725796077492e+01
|
||||
10 1.0246878924161699e+01 1.3897136953954980e+00 -1.6290924115760532e+01
|
||||
11 1.0029538875094079e+01 7.5954385873580861e+01 7.3007469981317552e+00
|
||||
12 -4.3426796855790597e+00 -8.1001966077911440e+00 2.1257757278516614e+01
|
||||
13 -2.5500259865449323e+01 -4.0349873849006990e+00 5.7253943532785428e+01
|
||||
14 -1.9740783538668413e+01 2.4880810057925693e+00 4.9332890100392994e+01
|
||||
15 -3.7858651755052200e+01 2.1350171800377793e+00 3.4131916822482452e+01
|
||||
16 8.7293637958320645e+00 2.1899924453569003e+01 1.5797402965748808e+00
|
||||
17 -1.3199648722212999e+01 1.1876311023285911e+01 -2.7807378187367293e+00
|
||||
18 3.6467281693815110e+01 -4.6970689063609505e+01 4.5649670999077372e+01
|
||||
19 -3.7489510684109106e+00 -1.0981176436594002e+00 2.0800734648433416e+01
|
||||
20 5.7455033084251959e+01 -2.4326458008696171e+01 -7.4899387014093648e+00
|
||||
21 -1.6206139757210817e+01 -1.4585380569514930e+01 1.9939522726360000e+01
|
||||
22 -3.2047183062536964e+00 -3.5248879836386912e+01 -2.9237401932692304e+01
|
||||
23 -8.1664301417481564e+00 3.3251331282719484e+01 -1.2478883645206089e+01
|
||||
24 1.8548205929810106e+01 -1.5471259314702470e+01 -2.2359754776206874e+01
|
||||
25 1.7957735711802272e+00 -8.1588343339867144e+00 -2.8068048033883585e+01
|
||||
26 1.9987257688262208e+01 -7.8181391565781881e+00 -1.0516987997090540e+01
|
||||
27 -1.0524888031562181e+01 -3.9194439310101828e+01 -5.1012481861329647e+01
|
||||
28 3.9261232456793254e+00 2.2974819477802875e+00 -1.3982370338143464e+00
|
||||
29 2.4614874924109493e+01 4.2553358575986294e+01 -2.2682298252059319e+01
|
||||
...
|
||||
|
||||
@ -1,7 +1,8 @@
|
||||
---
|
||||
lammps_version: 17 Feb 2022
|
||||
date_generated: Fri Mar 18 22:17:59 2022
|
||||
epsilon: 5e-14
|
||||
lammps_version: 27 Jun 2024
|
||||
tags: generated
|
||||
date_generated: Sun Aug 4 23:06:24 2024
|
||||
epsilon: 1e-09
|
||||
skip_tests:
|
||||
prerequisites: ! |
|
||||
atom full
|
||||
@ -47,22 +48,22 @@ run_pos: ! |2
|
||||
28 -2.7406520384725965e+00 -4.0207251278130975e+00 1.5828689861678511e+00
|
||||
29 -1.3108232656499081e+00 -3.5992986322410760e+00 2.2680459788743503e+00
|
||||
run_vel: ! |2
|
||||
1 8.0473659314045311e-04 7.1569249348053788e-04 -4.3342870019477209e-04
|
||||
2 4.8898479194970776e-03 -4.7827042025493328e-03 8.0841799198950980e-03
|
||||
3 -1.0294756367398522e-03 1.9683076071843977e-03 -4.0617066181897172e-04
|
||||
4 -2.4747982635401457e-03 -4.0369263670034846e-04 -7.4617063284663837e-03
|
||||
1 8.0473659314045333e-04 7.1569249348053766e-04 -4.3342870019477209e-04
|
||||
2 4.8898479194970793e-03 -4.7827042025493302e-03 8.0841799198950980e-03
|
||||
3 -1.0294756367398522e-03 1.9683076071843977e-03 -4.0617066181897166e-04
|
||||
4 -2.4747982635401457e-03 -4.0369263670034889e-04 -7.4617063284663837e-03
|
||||
5 -1.0926646594371462e-02 -1.0990152084938042e-02 7.1139929386532267e-03
|
||||
6 -9.5067271190104528e-05 1.3336935657507986e-03 5.4214461927831791e-04
|
||||
7 -4.3586025231105304e-05 -6.9109610172221191e-04 -6.9337762328493019e-04
|
||||
8 2.6803899146373794e-04 -6.5040541267551654e-04 6.8116655294853557e-04
|
||||
9 3.9386905601377338e-03 -9.3112400666159056e-03 -1.8163977073503805e-02
|
||||
10 3.9247060769256306e-04 7.8592522559452823e-04 -1.8488118637534633e-04
|
||||
11 -4.1794652628278275e-03 -7.0974426301502243e-03 -6.7076698165187305e-03
|
||||
12 1.1514884390163200e-03 -7.7558890532261431e-04 -1.7352975395074880e-03
|
||||
13 -1.2091918941598333e-03 2.1057712476064984e-03 -6.8173220414898580e-04
|
||||
14 3.4935556908446269e-03 -8.0116807223612977e-03 2.6013722730781614e-03
|
||||
15 -3.9745580139864218e-03 1.4335430539960781e-04 1.6407163363297207e-02
|
||||
16 -2.1348158581808053e-04 -3.5449321713051474e-04 1.8683099741583740e-03
|
||||
7 -4.3586025231105277e-05 -6.9109610172221191e-04 -6.9337762328493019e-04
|
||||
8 2.6803899146373794e-04 -6.5040541267551654e-04 6.8116655294853568e-04
|
||||
9 3.9386905601377330e-03 -9.3112400666159056e-03 -1.8163977073503805e-02
|
||||
10 3.9247060769256306e-04 7.8592522559452823e-04 -1.8488118637534644e-04
|
||||
11 -4.1794652628278292e-03 -7.0974426301502243e-03 -6.7076698165187305e-03
|
||||
12 1.1514884390163200e-03 -7.7558890532261463e-04 -1.7352975395074880e-03
|
||||
13 -1.2091918941598333e-03 2.1057712476064989e-03 -6.8173220414898385e-04
|
||||
14 3.4935556908446252e-03 -8.0116807223612977e-03 2.6013722730781623e-03
|
||||
15 -3.9745580139864227e-03 1.4335430539960781e-04 1.6407163363297211e-02
|
||||
16 -2.1348158581808055e-04 -3.5449321713051452e-04 1.8683099741583740e-03
|
||||
17 6.8803503267879525e-04 3.2662083177018096e-04 6.4072364607216500e-04
|
||||
18 -6.0936815808025862e-04 -9.3774557532468582e-04 -3.3558072507805731e-04
|
||||
19 -6.9919768291957119e-04 -3.6060777270430031e-03 4.2833405289822791e-03
|
||||
@ -76,4 +77,34 @@ run_vel: ! |2
|
||||
27 -2.6510179146429716e-04 3.6306203629019116e-04 -5.6235585400647747e-04
|
||||
28 -2.3068708109787484e-04 -8.5663070212203200e-04 2.1302563179109169e-03
|
||||
29 -2.5054744388303732e-03 -1.6773997805290820e-04 2.8436699761004796e-03
|
||||
run_torque: ! |2
|
||||
1 -6.1403759661120105e+00 1.9281929604003945e+01 3.7235380462726823e+01
|
||||
2 3.0340583238669112e+01 3.0494180185350981e+01 3.1832412100312840e+01
|
||||
3 2.1834385196767272e+01 9.5214771390078781e+00 9.9078886525247878e+00
|
||||
4 -2.1891092272833276e+01 -9.9863963097733377e-01 -6.4457164283292316e+00
|
||||
5 -1.7064404788489767e+01 5.5982980071959844e+01 8.8639899209375770e+00
|
||||
6 -5.5462360529827720e+01 1.0135485098280819e+01 1.0682510065304129e+01
|
||||
7 1.8324887095942497e+01 2.0930226045751901e+01 1.4164473026746716e+01
|
||||
8 -4.3515896611377386e+01 3.0227947777862767e+01 7.6213564769143138e+00
|
||||
9 -1.4836923196883752e+01 -3.2373064323798417e+01 4.7191725742262300e+01
|
||||
10 1.0246878914465658e+01 1.3897137074834023e+00 -1.6290924121158529e+01
|
||||
11 1.0029538892476616e+01 7.5954385909691013e+01 7.3007469972968329e+00
|
||||
12 -4.3426796896782767e+00 -8.1001966016605333e+00 2.1257757266240482e+01
|
||||
13 -2.5500259866998451e+01 -4.0349873895005244e+00 5.7253943535376834e+01
|
||||
14 -1.9740783544629842e+01 2.4880810055376386e+00 4.9332890104457455e+01
|
||||
15 -3.7858651752636511e+01 2.1350171870992058e+00 3.4131916828008087e+01
|
||||
16 8.7293637981640515e+00 2.1899924459230121e+01 1.5797402991246403e+00
|
||||
17 -1.3199648711378435e+01 1.1876311033096576e+01 -2.7807378203351321e+00
|
||||
18 3.6467281704104735e+01 -4.6970689064704345e+01 4.5649671004201224e+01
|
||||
19 -3.7489510745725738e+00 -1.0981176366359855e+00 2.0800734654432205e+01
|
||||
20 5.7455033085797261e+01 -2.4326458010599001e+01 -7.4899387026919069e+00
|
||||
21 -1.6206139753654561e+01 -1.4585380566496216e+01 1.9939522722180151e+01
|
||||
22 -3.2047183087292246e+00 -3.5248879840343484e+01 -2.9237401937218184e+01
|
||||
23 -8.1664301406545050e+00 3.3251331285361523e+01 -1.2478883646107191e+01
|
||||
24 1.8548205926643970e+01 -1.5471259313254437e+01 -2.2359754777438564e+01
|
||||
25 1.7957735754273969e+00 -8.1588343326224404e+00 -2.8068048031631573e+01
|
||||
26 1.9987257689466691e+01 -7.8181391579229382e+00 -1.0516987996373377e+01
|
||||
27 -1.0524888030911917e+01 -3.9194439307774175e+01 -5.1012481858332137e+01
|
||||
28 3.9261232485831696e+00 2.2974819448840798e+00 -1.3982370348710909e+00
|
||||
29 2.4614874928044500e+01 4.2553358572515293e+01 -2.2682298252282088e+01
|
||||
...
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
---
|
||||
lammps_version: 17 Feb 2022
|
||||
date_generated: Fri Mar 18 22:17:59 2022
|
||||
lammps_version: 27 Jun 2024
|
||||
tags: generated
|
||||
date_generated: Sun Aug 4 23:11:49 2024
|
||||
epsilon: 5e-14
|
||||
skip_tests:
|
||||
prerequisites: ! |
|
||||
@ -16,9 +17,9 @@ post_commands: ! |
|
||||
fix test solute nvt/sphere temp 50.0 ${t_target} 1.0 mtk no tchain 1
|
||||
input_file: in.dipole
|
||||
natoms: 29
|
||||
global_scalar: 9.924697652139484
|
||||
global_scalar: 9.924697652139486
|
||||
global_vector: ! |-
|
||||
4 0.437308072017019 0.3665139279582143 8.603313153695396 1.3213844984440877
|
||||
4 0.43730807201701904 0.36651392795821436 8.603313153695398 1.3213844984440881
|
||||
run_pos: ! |2
|
||||
1 -2.7857754700604942e-01 2.4737788516853181e+00 -1.7257396330013031e-01
|
||||
2 3.0850115944710327e-01 2.9513142622511719e+00 -8.4681556480583575e-01
|
||||
@ -50,22 +51,22 @@ run_pos: ! |2
|
||||
28 -2.7406520384725965e+00 -4.0207251278130975e+00 1.5828689861678511e+00
|
||||
29 -1.3108232656499081e+00 -3.5992986322410760e+00 2.2680459788743503e+00
|
||||
run_vel: ! |2
|
||||
1 5.2257770354932143e-04 4.7726828362807121e-04 -3.0522943208439774e-04
|
||||
2 3.4303751874469003e-03 -4.2180945960502980e-03 5.7574961491201398e-03
|
||||
3 -6.3573466121110811e-04 1.3140213521350942e-03 -2.7079367477976328e-04
|
||||
4 -1.7843971684490083e-03 -1.5758975301724681e-04 -5.2242082857429824e-03
|
||||
5 -8.2227072251703382e-03 -8.5099569970796211e-03 5.4461443188764105e-03
|
||||
1 5.2257770354932143e-04 4.7726828362807121e-04 -3.0522943208439790e-04
|
||||
2 3.4303751874469003e-03 -4.2180945960502972e-03 5.7574961491201398e-03
|
||||
3 -6.3573466121110811e-04 1.3140213521350942e-03 -2.7079367477976312e-04
|
||||
4 -1.7843971684490083e-03 -1.5758975301724708e-04 -5.2242082857429824e-03
|
||||
5 -8.2227072251703399e-03 -8.5099569970796211e-03 5.4461443188764088e-03
|
||||
6 -3.5789209403806882e-05 8.6848093647978698e-04 3.1971012031399484e-04
|
||||
7 -2.0124049923183825e-05 -4.3697732547062816e-04 -4.3839548145203471e-04
|
||||
8 1.5805774595943574e-04 -4.0027425549530720e-04 5.0330078142215716e-04
|
||||
9 2.8822403754462040e-03 -6.8160818050074920e-03 -1.4036982183720428e-02
|
||||
10 2.4663804309963582e-04 5.4279437979848041e-04 -1.1317926570306191e-04
|
||||
11 -3.1643374866053924e-03 -5.2717858128617642e-03 -4.7921591091986630e-03
|
||||
12 7.5165507333444881e-04 -5.1625440836408545e-04 -1.1731908604625759e-03
|
||||
13 -1.4118493310107784e-03 1.1905767851418925e-03 -4.3306400341165912e-04
|
||||
14 2.7000698448074781e-03 -5.6421006571202893e-03 2.4657183892946829e-03
|
||||
15 -2.5296352230596542e-03 4.9931947404907107e-04 1.2186033148767308e-02
|
||||
16 -1.5201520334258572e-04 -2.1134042562761163e-04 1.2515192941693033e-03
|
||||
10 2.4663804309963582e-04 5.4279437979848041e-04 -1.1317926570306194e-04
|
||||
11 -3.1643374866053928e-03 -5.2717858128617642e-03 -4.7921591091986630e-03
|
||||
12 7.5165507333444903e-04 -5.1625440836408534e-04 -1.1731908604625759e-03
|
||||
13 -1.4118493310107784e-03 1.1905767851418921e-03 -4.3306400341165853e-04
|
||||
14 2.7000698448074786e-03 -5.6421006571202893e-03 2.4657183892946824e-03
|
||||
15 -2.5296352230596559e-03 4.9931947404907074e-04 1.2186033148767310e-02
|
||||
16 -1.5201520334258574e-04 -2.1134042562761152e-04 1.2515192941693033e-03
|
||||
17 4.4810518325242042e-04 2.0606663095337982e-04 3.9041801229218036e-04
|
||||
18 -6.0936815808025862e-04 -9.3774557532468582e-04 -3.3558072507805731e-04
|
||||
19 -6.9919768291957119e-04 -3.6060777270430031e-03 4.2833405289822791e-03
|
||||
@ -79,4 +80,34 @@ run_vel: ! |2
|
||||
27 -2.6510179146429716e-04 3.6306203629019116e-04 -5.6235585400647747e-04
|
||||
28 -2.3068708109787484e-04 -8.5663070212203200e-04 2.1302563179109169e-03
|
||||
29 -2.5054744388303732e-03 -1.6773997805290820e-04 2.8436699761004796e-03
|
||||
run_torque: ! |2
|
||||
1 -6.1647479505817486e+00 1.9357854481281628e+01 3.7382095469801669e+01
|
||||
2 3.0399315613293311e+01 3.0488051135473462e+01 3.1728765947776601e+01
|
||||
3 2.2007507947491852e+01 9.4109998472825360e+00 9.8661001086723026e+00
|
||||
4 -2.1950531720941324e+01 -1.0737412605116079e+00 -6.4281696957501318e+00
|
||||
5 -1.6930079491113258e+01 5.6073518561418972e+01 8.8118719638429521e+00
|
||||
6 -5.5485763909032769e+01 1.0218557927200671e+01 1.0838895552811653e+01
|
||||
7 1.8274326315933930e+01 2.1216280114332651e+01 1.4239716147511169e+01
|
||||
8 -4.3381267441302278e+01 3.0143904332030072e+01 7.6018916372387642e+00
|
||||
9 -1.4934802548271753e+01 -3.2261821345722943e+01 4.7416505231431628e+01
|
||||
10 1.0289618520530993e+01 1.3758943483850052e+00 -1.6328406293854261e+01
|
||||
11 1.0022735700488102e+01 7.5963128697318808e+01 7.3062507665818677e+00
|
||||
12 -4.2090738469241007e+00 -8.1165678952507214e+00 2.1227230241477443e+01
|
||||
13 -2.5544233766756054e+01 -3.9693193673378122e+00 5.7328310568812682e+01
|
||||
14 -1.9554818948115717e+01 2.4625292894237067e+00 4.9365595084792723e+01
|
||||
15 -3.7732026063957683e+01 2.3516660930031059e+00 3.4270024136423686e+01
|
||||
16 8.6994109169845970e+00 2.1823823960601231e+01 1.5850366309435540e+00
|
||||
17 -1.3251302305826963e+01 1.1835081351476667e+01 -2.7742173173135507e+00
|
||||
18 3.6436604246446350e+01 -4.6921806536773992e+01 4.5605291742591788e+01
|
||||
19 -3.7134483050033200e+00 -1.1451664296014052e+00 2.0787182552853508e+01
|
||||
20 5.7452322820219557e+01 -2.4299279960037826e+01 -7.4670459237528863e+00
|
||||
21 -1.6224953575653984e+01 -1.4594202239704996e+01 1.9953946153191371e+01
|
||||
22 -3.2024997164679143e+00 -3.5228129036774767e+01 -2.9219994848442951e+01
|
||||
23 -8.1719497151916940e+00 3.3245432738961291e+01 -1.2477031579495556e+01
|
||||
24 1.8566283378926865e+01 -1.5480360463086017e+01 -2.2356249481261020e+01
|
||||
25 1.7702057938310602e+00 -8.1663491932637875e+00 -2.8079286197541229e+01
|
||||
26 1.9982234080733210e+01 -7.8123940419804336e+00 -1.0520190172157513e+01
|
||||
27 -1.0531819764937168e+01 -3.9207117548030453e+01 -5.1024512970804658e+01
|
||||
28 3.9143073850182430e+00 2.3112509566228780e+00 -1.3939273469717621e+00
|
||||
29 2.4603599138901966e+01 4.2571715320386566e+01 -2.2684445980646203e+01
|
||||
...
|
||||
|
||||
@ -1,82 +1,83 @@
|
||||
---
|
||||
lammps_version: 17 Feb 2022
|
||||
date_generated: Fri Mar 18 22:18:01 2022
|
||||
lammps_version: 27 Jun 2024
|
||||
tags: generated
|
||||
date_generated: Fri Aug 2 23:56:34 2024
|
||||
epsilon: 2e-14
|
||||
skip_tests:
|
||||
prerequisites: ! |
|
||||
atom full
|
||||
fix wall/lj93
|
||||
pre_commands: ! |
|
||||
boundary p f p
|
||||
boundary f f f
|
||||
post_commands: ! |
|
||||
fix move all nve
|
||||
fix test solute wall/lj93 ylo EDGE 100.0 2.0 5.0 yhi EDGE 100.0 2.0 5.0
|
||||
fix test solute wall/lj93 xlo EDGE 10 1 9 xhi EDGE 20 2 8 ylo EDGE 30 3 7 yhi EDGE 40 4 6 zlo EDGE 50 9 1 zhi EDGE 60 8 2
|
||||
fix_modify test virial yes
|
||||
input_file: in.fourmol
|
||||
natoms: 29
|
||||
run_stress: ! |2-
|
||||
0.0000000000000000e+00 -5.0602303343219951e+01 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
|
||||
global_scalar: -4.108987997282236
|
||||
run_stress: ! |-
|
||||
-2.0397146716028331e+01 -2.2856621254611628e+02 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
|
||||
global_scalar: -40.30685365068726
|
||||
global_vector: ! |-
|
||||
2 0 -11.164431050504302
|
||||
6 0.29980999393772645 -3.0501185308112175 10.543906177602482 -35.13125907303744 0 0
|
||||
run_pos: ! |2
|
||||
1 -2.7045470054680359e-01 2.4914748797509958e+00 -1.6696421170224640e-01
|
||||
2 3.1002519717316468e-01 2.9626113274873114e+00 -8.5465020014164161e-01
|
||||
3 -7.0398162067377834e-01 1.2305605729036173e+00 -6.2777311164097793e-01
|
||||
4 -1.5818159800097509e+00 1.4837403071563420e+00 -1.2538711657744748e+00
|
||||
5 -9.0719738875553246e-01 9.2652132637432294e-01 3.9954221603268608e-01
|
||||
6 2.4831723728788374e-01 2.8313028009631025e-01 -1.2314233417272680e+00
|
||||
7 3.4143527622588610e-01 -2.2646550717066182e-02 -2.5292291415442443e+00
|
||||
8 1.1743552225802836e+00 -4.8863228494885080e-01 -6.3783432950414043e-01
|
||||
9 1.3800524229825968e+00 -2.5274721033806635e-01 2.8353985887329919e-01
|
||||
10 2.0510765220590312e+00 -1.4604063740279585e+00 -9.8323745081970004e-01
|
||||
11 1.7878031944447623e+00 -1.9921863272956677e+00 -1.8890602447628950e+00
|
||||
12 3.0063007039452563e+00 -4.9013350497696184e-01 -1.6231898107433360e+00
|
||||
13 4.0515402959196631e+00 -8.9202011606671716e-01 -1.6400005529926165e+00
|
||||
14 2.6066963345552767e+00 -4.1789253965578244e-01 -2.6634003608801833e+00
|
||||
15 2.9695287185759982e+00 5.5422613165070589e-01 -1.2342022021804264e+00
|
||||
16 2.6747029695251561e+00 -2.4124119054596429e+00 -2.3435746150366733e-02
|
||||
17 2.2153577785319198e+00 -2.0897985186960004e+00 1.1963150794498112e+00
|
||||
18 2.1369701704057920e+00 3.0158507413651594e+00 -3.5179348337167076e+00
|
||||
19 1.5355837136080241e+00 2.6255292355373734e+00 -4.2353987779868740e+00
|
||||
20 2.7727573003167976e+00 3.6923910440726924e+00 -3.9330842459576383e+00
|
||||
21 4.9040128073837339e+00 -4.0752348170758461e+00 -3.6210314709795299e+00
|
||||
22 4.3582355554510048e+00 -4.2126119427061379e+00 -4.4612844196307497e+00
|
||||
23 5.7439382849366911e+00 -3.5821957939240279e+00 -3.8766361295959513e+00
|
||||
24 2.0689243582397667e+00 3.1513346907334592e+00 3.1550389754792341e+00
|
||||
25 1.3045351331439887e+00 3.2665125705877287e+00 2.5111855257342670e+00
|
||||
26 2.5809237402706717e+00 4.0117602605484128e+00 3.2212060529083963e+00
|
||||
27 -1.9611343130358911e+00 -4.3563411931365605e+00 2.1098293115526028e+00
|
||||
28 -2.7473562684515085e+00 -4.0200819932383203e+00 1.5830052163435302e+00
|
||||
29 -1.3126000191360121e+00 -3.5962518039484110e+00 2.2746342468738372e+00
|
||||
1 -2.7045514660423325e-01 2.4919366600449733e+00 -1.6697231639531507e-01
|
||||
2 3.1000084135335193e-01 2.9645912303343991e+00 -8.5463206395936475e-01
|
||||
3 -7.0397943335818880e-01 1.2305810523260226e+00 -6.2776977494480968e-01
|
||||
4 -1.5818284818588833e+00 1.4850714726761622e+00 -1.2538699508869366e+00
|
||||
5 -9.0720735536750730e-01 9.2652311870881010e-01 3.9954248474779297e-01
|
||||
6 2.4831612077180826e-01 2.8312998598620581e-01 -1.2314234208099035e+00
|
||||
7 3.4143432145485658e-01 -2.2646550480708717e-02 -2.5292291412289485e+00
|
||||
8 1.1743655769886039e+00 -4.8863573859247217e-01 -6.3783597964106820e-01
|
||||
9 1.3800803748715951e+00 -2.5274721986531667e-01 2.8353956705790218e-01
|
||||
10 2.0510864147345527e+00 -1.4605128263713651e+00 -9.8323665039331498e-01
|
||||
11 1.7878396739201072e+00 -1.9926579680652934e+00 -1.8890577068286438e+00
|
||||
12 3.0063280485262682e+00 -4.9013506205958607e-01 -1.6231897745485795e+00
|
||||
13 4.0517059148826196e+00 -8.9225492586105981e-01 -1.6400002853466527e+00
|
||||
14 2.6067556451864973e+00 -4.1789236780812949e-01 -2.6634004714578920e+00
|
||||
15 2.9696053942689340e+00 5.5422609386529809e-01 -1.2342020619448599e+00
|
||||
16 2.6747224655532205e+00 -2.4126238070421215e+00 -2.3433759666701557e-02
|
||||
17 2.2153701802770058e+00 -2.0899272946638008e+00 1.1963135022288505e+00
|
||||
18 2.1369701704036461e+00 3.0158507413784363e+00 -3.5179348337072978e+00
|
||||
19 1.5355837135394632e+00 2.6255292354749651e+00 -4.2353987771402171e+00
|
||||
20 2.7727573003740993e+00 3.6923910441184606e+00 -3.9330842453158126e+00
|
||||
21 4.9040128073779838e+00 -4.0752348170721300e+00 -3.6210314709713383e+00
|
||||
22 4.3582355554508565e+00 -4.2126119427059994e+00 -4.4612844196303154e+00
|
||||
23 5.7439382849363732e+00 -3.5821957939239444e+00 -3.8766361295956120e+00
|
||||
24 2.0689243582383923e+00 3.1513346907508031e+00 3.1550389751044130e+00
|
||||
25 1.3045351331268087e+00 3.2665125705965665e+00 2.5111855257113618e+00
|
||||
26 2.5809237402701828e+00 4.0117602605517018e+00 3.2212060528784647e+00
|
||||
27 -1.9611343130326251e+00 -4.3563411931375260e+00 2.1098293115519637e+00
|
||||
28 -2.7473562684514818e+00 -4.0200819932384704e+00 1.5830052163435808e+00
|
||||
29 -1.3126000191358462e+00 -3.5962518039486921e+00 2.2746342468738376e+00
|
||||
run_vel: ! |2
|
||||
1 8.1727799799441551e-03 1.6773171346479498e-02 4.7791658662457619e-03
|
||||
2 5.4195488166242462e-03 6.5417253116750503e-03 -1.4101336509904706e-03
|
||||
3 -8.2223992085164246e-03 -1.2908451784809975e-02 -4.0945960825392183e-03
|
||||
4 -3.7699737621353186e-03 -6.5732339099368641e-03 -1.1186165990462573e-03
|
||||
5 -1.1021432529769989e-02 -9.8900600342308066e-03 -2.8408577395243402e-03
|
||||
6 -3.9676605755577875e-02 4.6817208693894503e-02 3.7148485968758402e-02
|
||||
7 9.1033903828574569e-04 -1.0128523335196111e-02 -5.1568251845436980e-02
|
||||
8 7.9064705135345748e-03 -3.3507235864772382e-03 3.4557097186682206e-02
|
||||
9 1.5644176974450778e-03 3.7365545213281916e-03 1.5047408817898655e-02
|
||||
10 2.9201446823370270e-02 -2.9249578721348601e-02 -1.5018077430999392e-02
|
||||
11 -4.7835961499775063e-03 -3.7481385151954837e-03 -2.3464104148495902e-03
|
||||
12 2.2696452071679614e-03 -3.4774155893559008e-04 -3.0640770423525257e-03
|
||||
13 2.7531740460470166e-03 5.8171061608719103e-03 -7.9467454050767680e-04
|
||||
14 3.5246182390652257e-03 -5.7939995598917460e-03 -3.9478431188056783e-03
|
||||
15 -1.8547943544027830e-03 -5.8554729976774897e-03 6.2938485111532208e-03
|
||||
16 1.8681499978038456e-02 -1.3262466211006751e-02 -4.5638651456391420e-02
|
||||
17 -1.2896269973838886e-02 9.7527665158999004e-03 3.7296535364672513e-02
|
||||
18 -8.0065796043573602e-04 -8.6270472784857216e-04 -1.4483040597982864e-03
|
||||
19 1.2452390821689194e-03 -2.5061097122815435e-03 7.2998631031035615e-03
|
||||
20 3.5930057864791303e-03 3.6938851570931927e-03 3.2322732168550625e-03
|
||||
21 -1.4689219756961087e-03 -2.7352107824530806e-04 7.0581625180889649e-04
|
||||
22 -7.0694199165145062e-03 -4.2577148692717554e-03 2.8079117911323321e-04
|
||||
23 6.0446963236685256e-03 -1.4000131545098763e-03 2.5819754799379711e-03
|
||||
24 3.1926367400896563e-04 -9.9445663445895099e-04 1.4999996220927227e-04
|
||||
25 1.3789753472275083e-04 -4.4335894812290054e-03 -8.1808138555694750e-04
|
||||
26 2.0485904026313513e-03 2.7813358637372391e-03 4.3245727137078242e-03
|
||||
27 4.5604120258846295e-04 -1.0305523038990200e-03 2.1188058429346654e-04
|
||||
28 -6.2544520868040715e-03 1.4127711161841167e-03 -1.8429821879802923e-03
|
||||
29 6.4110631528576680e-04 3.1273432717073592e-03 3.7253671106756733e-03
|
||||
1 8.1742887450585739e-03 1.7228249520172705e-02 4.7636200154285678e-03
|
||||
2 5.3742131209134954e-03 8.5014084989938534e-03 -1.3734731162460402e-03
|
||||
3 -8.2161778164033632e-03 -1.2869362708201489e-02 -4.0888375199228388e-03
|
||||
4 -3.7787634477676642e-03 -5.2533470458882917e-03 -1.1161118587284771e-03
|
||||
5 -1.1032293389383448e-02 -9.8863340104885598e-03 -2.8403367946737107e-03
|
||||
6 -3.9677570612003256e-02 4.6816683666629423e-02 3.7148298982540365e-02
|
||||
7 9.0938409416312202e-04 -1.0128522535253528e-02 -5.1568254916651068e-02
|
||||
8 7.9194167018994642e-03 -3.3569176675024141e-03 3.4554033379153554e-02
|
||||
9 1.5923285603331428e-03 3.7365113011970019e-03 1.5046752270197748e-02
|
||||
10 2.9208357286776593e-02 -2.9353993769823783e-02 -1.5016704917306721e-02
|
||||
11 -4.7465540645016645e-03 -4.2165276646841865e-03 -2.3412478153019894e-03
|
||||
12 2.2980757077101510e-03 -3.5091405216452847e-04 -3.0640046931904290e-03
|
||||
13 2.9148511000306786e-03 5.5851722208680194e-03 -7.9412268026523897e-04
|
||||
14 3.5836019249020573e-03 -5.7936540681715965e-03 -3.9480663628116922e-03
|
||||
15 -1.7778657432845671e-03 -5.8555598171606280e-03 6.2941335584716009e-03
|
||||
16 1.8700222665862708e-02 -1.3473926436394508e-02 -4.5635589324539552e-02
|
||||
17 -1.2883485803873765e-02 9.6240189248986089e-03 3.7294040194137568e-02
|
||||
18 -8.0065796511591945e-04 -8.6270470075116407e-04 -1.4483040404113881e-03
|
||||
19 1.2452390066448272e-03 -2.5061097760180838e-03 7.2998639311393438e-03
|
||||
20 3.5930058446123790e-03 3.6938852063833996e-03 3.2322738498526673e-03
|
||||
21 -1.4689219875639078e-03 -2.7352107061007723e-04 7.0581626870114592e-04
|
||||
22 -7.0694199167938608e-03 -4.2577148689919644e-03 2.8079118009157448e-04
|
||||
23 6.0446963229432490e-03 -1.4000131543898697e-03 2.5819754806854374e-03
|
||||
24 3.1926367036916678e-04 -9.9445660295952466e-04 1.4999958504844645e-04
|
||||
25 1.3789750016399599e-04 -4.4335894629157517e-03 -8.1808143179135507e-04
|
||||
26 2.0485903999350758e-03 2.7813358672621209e-03 4.3245726820250576e-03
|
||||
27 4.5604120926159787e-04 -1.0305523058923018e-03 2.1188058299333266e-04
|
||||
28 -6.2544520867115292e-03 1.4127711158545754e-03 -1.8429821878482673e-03
|
||||
29 6.4110631563933543e-04 3.1273432711488012e-03 3.7253671106878979e-03
|
||||
...
|
||||
|
||||
78
unittest/force-styles/tests/fix-timestep-wall_reflect.yaml
Normal file
78
unittest/force-styles/tests/fix-timestep-wall_reflect.yaml
Normal file
@ -0,0 +1,78 @@
|
||||
---
|
||||
lammps_version: 17 Apr 2024
|
||||
tags: generated
|
||||
date_generated: Fri Jun 7 18:23:44 2024
|
||||
epsilon: 4e-14
|
||||
skip_tests:
|
||||
prerequisites: ! |
|
||||
atom full
|
||||
fix nve
|
||||
fix wall/reflect
|
||||
pre_commands: ! |
|
||||
boundary f f f
|
||||
post_commands: ! |
|
||||
fix move all nve
|
||||
fix test solute wall/reflect xlo EDGE xhi EDGE ylo EDGE yhi EDGE zlo EDGE zhi EDGE units box
|
||||
input_file: in.fourmol
|
||||
natoms: 29
|
||||
run_pos: ! |2
|
||||
1 -2.7045559775384026e-01 2.4912159905679729e+00 -1.6695851791541885e-01
|
||||
2 3.1004029573899528e-01 2.9612354631094391e+00 -8.5466363037021464e-01
|
||||
3 -7.0398551400789466e-01 1.2305509955830618e+00 -6.2777526944456274e-01
|
||||
4 -1.5818159336499285e+00 1.4837407818929933e+00 -1.2538710836062004e+00
|
||||
5 -9.0719763672789266e-01 9.2652103885675297e-01 3.9954210488374786e-01
|
||||
6 2.4831720524855988e-01 2.8313021497871271e-01 -1.2314233331711453e+00
|
||||
7 3.4143527641386412e-01 -2.2646551041391422e-02 -2.5292291414903052e+00
|
||||
8 1.1743552229100009e+00 -4.8863228565853944e-01 -6.3783432910825522e-01
|
||||
9 1.3800524229500313e+00 -2.5274721030406683e-01 2.8353985887095157e-01
|
||||
10 2.0510765220543883e+00 -1.4604063740302866e+00 -9.8323745081712954e-01
|
||||
11 1.7878031944442556e+00 -1.9921863272948861e+00 -1.8890602447625777e+00
|
||||
12 3.0063007039340053e+00 -4.9013350496963298e-01 -1.6231898107386231e+00
|
||||
13 4.0515402959192999e+00 -8.9202011606653986e-01 -1.6400005529924957e+00
|
||||
14 2.6066963345543819e+00 -4.1789253965514156e-01 -2.6634003608794394e+00
|
||||
15 2.9695287185712913e+00 5.5422613165234036e-01 -1.2342022021790127e+00
|
||||
16 2.6747029695228521e+00 -2.4124119054564295e+00 -2.3435746150616152e-02
|
||||
17 2.2153577785283796e+00 -2.0897985186907717e+00 1.1963150794479436e+00
|
||||
18 2.1369701704094664e+00 3.0158507413593139e+00 -3.5179348337135590e+00
|
||||
19 1.5355837135395243e+00 2.6255292354730009e+00 -4.2353987771401354e+00
|
||||
20 2.7727573003748263e+00 3.6923910441179069e+00 -3.9330842453167185e+00
|
||||
21 4.9040128073837339e+00 -4.0752348170758461e+00 -3.6210314709795299e+00
|
||||
22 4.3582355554510048e+00 -4.2126119427061379e+00 -4.4612844196307497e+00
|
||||
23 5.7439382849366911e+00 -3.5821957939240279e+00 -3.8766361295959513e+00
|
||||
24 2.0689243582454213e+00 3.1513346907303501e+00 3.1550389751128463e+00
|
||||
25 1.3045351331414130e+00 3.2665125705869009e+00 2.5111855257365274e+00
|
||||
26 2.5809237402714267e+00 4.0117602605512728e+00 3.2212060528800821e+00
|
||||
27 -1.9611343130357228e+00 -4.3563411931359752e+00 2.1098293115523705e+00
|
||||
28 -2.7473562684513411e+00 -4.0200819932379330e+00 1.5830052163433954e+00
|
||||
29 -1.3126000191359855e+00 -3.5962518039482929e+00 2.2746342468737835e+00
|
||||
run_vel: ! |2
|
||||
1 8.1705744183262832e-03 1.6516406176274298e-02 4.7902264318913203e-03
|
||||
2 5.4501493445687828e-03 5.1791699408496447e-03 -1.4372931530376549e-03
|
||||
3 -8.2298292722385574e-03 -1.2926551614621364e-02 -4.0984181178163699e-03
|
||||
4 -3.7699042590093523e-03 -6.5722892098813894e-03 -1.1184640360133299e-03
|
||||
5 -1.1021961004346582e-02 -9.8906780939336091e-03 -2.8410737829284408e-03
|
||||
6 -3.9676663166400027e-02 4.6817061464710263e-02 3.7148491979476131e-02
|
||||
7 9.1033953013898742e-04 -1.0128524411938794e-02 -5.1568251805019748e-02
|
||||
8 7.9064712058855742e-03 -3.3507254552631576e-03 3.4557098492564650e-02
|
||||
9 1.5644176117320932e-03 3.7365546102722212e-03 1.5047408822037651e-02
|
||||
10 2.9201446820573192e-02 -2.9249578745486147e-02 -1.5018077424322544e-02
|
||||
11 -4.7835961513517542e-03 -3.7481385134185202e-03 -2.3464104142290089e-03
|
||||
12 2.2696451841920694e-03 -3.4774154398129690e-04 -3.0640770327796979e-03
|
||||
13 2.7531740451953164e-03 5.8171061612840493e-03 -7.9467454022160377e-04
|
||||
14 3.5246182371994183e-03 -5.7939995585585503e-03 -3.9478431172751344e-03
|
||||
15 -1.8547943640122972e-03 -5.8554729942777778e-03 6.2938485140538692e-03
|
||||
16 1.8681499973445252e-02 -1.3262466204585332e-02 -4.5638651457003250e-02
|
||||
17 -1.2896269981100378e-02 9.7527665265956451e-03 3.7296535360836762e-02
|
||||
18 -8.0065795274987550e-04 -8.6270473974390605e-04 -1.4483040536385806e-03
|
||||
19 1.2452390067376805e-03 -2.5061097800836356e-03 7.2998639311871892e-03
|
||||
20 3.5930058460518109e-03 3.6938852051849871e-03 3.2322738480194770e-03
|
||||
21 -1.4689219756961604e-03 -2.7352107824530231e-04 7.0581625180892046e-04
|
||||
22 -7.0694199165145140e-03 -4.2577148692717554e-03 2.8079117911323815e-04
|
||||
23 6.0446963236685256e-03 -1.4000131545098772e-03 2.5819754799379755e-03
|
||||
24 3.1926368451268056e-04 -9.9445664487428712e-04 1.4999960207062358e-04
|
||||
25 1.3789752933078488e-04 -4.4335894831520773e-03 -8.1808138106080109e-04
|
||||
26 2.0485904023410002e-03 2.7813358660936120e-03 4.3245726853349290e-03
|
||||
27 4.5604120293369819e-04 -1.0305523026921102e-03 2.1188058381358391e-04
|
||||
28 -6.2544520861855151e-03 1.4127711176146864e-03 -1.8429821884794260e-03
|
||||
29 6.4110631534402261e-04 3.1273432719593807e-03 3.7253671105656745e-03
|
||||
...
|
||||
@ -126,11 +126,11 @@ TEST(FmtLib, insert_neg_double)
|
||||
TEST(FmtLib, int_for_double)
|
||||
{
|
||||
const double val = -1.5;
|
||||
ASSERT_THROW(fmt::format("word {:d}", val), std::exception);
|
||||
ASSERT_THROW(auto text = fmt::format("word {:d}", val), std::exception);
|
||||
}
|
||||
|
||||
TEST(FmtLib, double_for_int)
|
||||
{
|
||||
const int val = 15;
|
||||
ASSERT_THROW(fmt::format("word {:g}", val), std::exception);
|
||||
ASSERT_THROW(auto text = fmt::format("word {:g}", val), std::exception);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user