diff --git a/lib/reax/reax_charges.F b/lib/reax/reax_charges.F
index 5a884d82c6dcfc17803df9a3410888b856fc332d..5815501a29fe3c67696936d8edb8e26985767d62 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 1f596377679fcac252660addc37109675da0260e..032e42816258ba2dae1573163a1bca9e810069d1 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 661dd73f7b1c9f0ffae392a356297f454b431958..a5e0324d694db4a3385f7ffde2a92818dbf2213d 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 be270b3ede7dbf3df971ac1824f93f24fa67f8b2..202051fc5238e46f848c34e310a8ba12398c5721 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 d1c4f907714ccce73e048d2b6611988a8a9f54dd..a79c5edd07329c7453dfd2222ad21a70b896fecb 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 b11cdd2fbcddb8bd235bf410ac349a1e39328b47..4af21284f2bfd97028cc32832f8c20231ea4abeb 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;
 }