From 47e2ca6eb200b6dc7921a3d79b2a439f93084558 Mon Sep 17 00:00:00 2001 From: Axel Kohlmeyer <akohlmey@gmail.com> Date: Wed, 7 Mar 2018 09:52:14 -0500 Subject: [PATCH] apply bugfix to reaxff taper function as described in issue #828 --- lib/reax/reax_charges.F | 2 +- src/KOKKOS/pair_reaxc_kokkos.cpp | 2 +- src/QEQ/fix_qeq_shielded.cpp | 2 +- src/REAX/pair_reax.cpp | 2 +- src/USER-REAXC/fix_qeq_reax.cpp | 2 +- src/USER-REAXC/reaxc_init_md.cpp | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/lib/reax/reax_charges.F b/lib/reax/reax_charges.F index 5a884d82c6..5815501a29 100644 --- a/lib/reax/reax_charges.F +++ b/lib/reax/reax_charges.F @@ -78,7 +78,7 @@ c$$$ end if SWC3= 140.0D0*(SWA3*SWB+3.0D0*SWA2*SWB2+SWA*SWB3)/D7 SWC2=-210.0D0*(SWA3*SWB2+SWA2*SWB3)/D7 SWC1= 140.0D0*SWA3*SWB3/D7 - SWC0=(-35.0D0*SWA3*SWB2*SWB2+21.0D0*SWA2*SWB3*SWB2+ + SWC0=(-35.0D0*SWA3*SWB2*SWB2+21.0D0*SWA2*SWB3*SWB2- $7.0D0*SWA*SWB3*SWB3+SWB3*SWB3*SWB)/D7 return diff --git a/src/KOKKOS/pair_reaxc_kokkos.cpp b/src/KOKKOS/pair_reaxc_kokkos.cpp index 1f59637767..032e428162 100644 --- a/src/KOKKOS/pair_reaxc_kokkos.cpp +++ b/src/KOKKOS/pair_reaxc_kokkos.cpp @@ -358,7 +358,7 @@ void PairReaxCKokkos<DeviceType>::init_md() k_tap.h_view(3) = 140.0 * (swa3*swb + 3.0*swa2*swb2 + swa*swb3 ) / d7; k_tap.h_view(2) =-210.0 * (swa3*swb2 + swa2*swb3) / d7; k_tap.h_view(1) = 140.0 * swa3 * swb3 / d7; - k_tap.h_view(0) = (-35.0*swa3*swb2*swb2 + 21.0*swa2*swb3*swb2 + + k_tap.h_view(0) = (-35.0*swa3*swb2*swb2 + 21.0*swa2*swb3*swb2 - 7.0*swa*swb3*swb3 + swb3*swb3*swb ) / d7; k_tap.template modify<LMPHostType>(); diff --git a/src/QEQ/fix_qeq_shielded.cpp b/src/QEQ/fix_qeq_shielded.cpp index 661dd73f7b..a5e0324d69 100644 --- a/src/QEQ/fix_qeq_shielded.cpp +++ b/src/QEQ/fix_qeq_shielded.cpp @@ -105,7 +105,7 @@ void FixQEqShielded::init_shielding() Tap[3] = 140.0 * (swa3*swb + 3.0*swa2*swb2 + swa*swb3 ) / d7; Tap[2] =-210.0 * (swa3*swb2 + swa2*swb3) / d7; Tap[1] = 140.0 * swa3 * swb3 / d7; - Tap[0] = (-35.0*swa3*swb2*swb2 + 21.0*swa2*swb3*swb2 + + Tap[0] = (-35.0*swa3*swb2*swb2 + 21.0*swa2*swb3*swb2 - 7.0*swa*swb3*swb3 + swb3*swb3*swb ) / d7; } diff --git a/src/REAX/pair_reax.cpp b/src/REAX/pair_reax.cpp index be270b3ede..202051fc52 100644 --- a/src/REAX/pair_reax.cpp +++ b/src/REAX/pair_reax.cpp @@ -720,7 +720,7 @@ void PairREAX::taper_setup() swc3= 140.0e0*(swa3*swb+3.0e0*swa2*swb2+swa*swb3)/d7; swc2=-210.0e0*(swa3*swb2+swa2*swb3)/d7; swc1= 140.0e0*swa3*swb3/d7; - swc0=(-35.0e0*swa3*swb2*swb2+21.0e0*swa2*swb3*swb2+ + swc0=(-35.0e0*swa3*swb2*swb2+21.0e0*swa2*swb3*swb2- 7.0e0*swa*swb3*swb3+swb3*swb3*swb)/d7; } diff --git a/src/USER-REAXC/fix_qeq_reax.cpp b/src/USER-REAXC/fix_qeq_reax.cpp index d1c4f90771..a79c5edd07 100644 --- a/src/USER-REAXC/fix_qeq_reax.cpp +++ b/src/USER-REAXC/fix_qeq_reax.cpp @@ -428,7 +428,7 @@ void FixQEqReax::init_taper() Tap[3] = 140.0 * (swa3*swb + 3.0*swa2*swb2 + swa*swb3) / d7; Tap[2] =-210.0 * (swa3*swb2 + swa2*swb3) / d7; Tap[1] = 140.0 * swa3 * swb3 / d7; - Tap[0] = (-35.0*swa3*swb2*swb2 + 21.0*swa2*swb3*swb2 + + Tap[0] = (-35.0*swa3*swb2*swb2 + 21.0*swa2*swb3*swb2 - 7.0*swa*swb3*swb3 + swb3*swb3*swb) / d7; } diff --git a/src/USER-REAXC/reaxc_init_md.cpp b/src/USER-REAXC/reaxc_init_md.cpp index b11cdd2fbc..4af21284f2 100644 --- a/src/USER-REAXC/reaxc_init_md.cpp +++ b/src/USER-REAXC/reaxc_init_md.cpp @@ -113,7 +113,7 @@ void Init_Taper( control_params *control, storage *workspace, MPI_Comm comm ) workspace->Tap[3] = 140.0 * (swa3*swb + 3.0*swa2*swb2 + swa*swb3 ) / d7; workspace->Tap[2] =-210.0 * (swa3*swb2 + swa2*swb3) / d7; workspace->Tap[1] = 140.0 * swa3 * swb3 / d7; - workspace->Tap[0] = (-35.0*swa3*swb2*swb2 + 21.0*swa2*swb3*swb2 + + workspace->Tap[0] = (-35.0*swa3*swb2*swb2 + 21.0*swa2*swb3*swb2 - 7.0*swa*swb3*swb3 + swb3*swb3*swb ) / d7; } -- GitLab