From 646d5bb1b9aa5cc9ad86e6c225f26d4642e388dc Mon Sep 17 00:00:00 2001
From: athomps <athomps@f3b2605a-c512-4ea7-a41b-209d697bcdaa>
Date: Fri, 26 Aug 2016 20:03:55 +0000
Subject: [PATCH] Added check for undefined hbonds

git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@15507 f3b2605a-c512-4ea7-a41b-209d697bcdaa
---
 src/USER-REAXC/reaxc_ffield.cpp         | 5 +++++
 src/USER-REAXC/reaxc_hydrogen_bonds.cpp | 1 +
 2 files changed, 6 insertions(+)

diff --git a/src/USER-REAXC/reaxc_ffield.cpp b/src/USER-REAXC/reaxc_ffield.cpp
index 912a49daa2..fda2841403 100644
--- a/src/USER-REAXC/reaxc_ffield.cpp
+++ b/src/USER-REAXC/reaxc_ffield.cpp
@@ -643,6 +643,11 @@ char Read_Force_Field( FILE *fp, reax_interaction *reax,
   c = Tokenize( s, &tmp );
   l = atoi( tmp[0] );
 
+  for( i = 0; i < reax->num_atom_types; ++i )
+    for( j = 0; j < reax->num_atom_types; ++j )
+      for( k = 0; k < reax->num_atom_types; ++k )
+        reax->hbp[i][j][k].r0_hb = -1.0;
+
   for( i = 0; i < l; i++ ) {
     fgets( s, MAX_LINE, fp );
     c = Tokenize( s, &tmp );
diff --git a/src/USER-REAXC/reaxc_hydrogen_bonds.cpp b/src/USER-REAXC/reaxc_hydrogen_bonds.cpp
index f58f9c5842..8d7b3b3819 100644
--- a/src/USER-REAXC/reaxc_hydrogen_bonds.cpp
+++ b/src/USER-REAXC/reaxc_hydrogen_bonds.cpp
@@ -103,6 +103,7 @@ void Hydrogen_Bonds( reax_system *system, control_params *control,
             type_i = system->my_atoms[i].type;
 	    if (type_i < 0) continue;
             hbp = &(system->reax_param.hbp[ type_i ][ type_j ][ type_k ]);
+	    if (hbp->r0_hb <= 0.0) continue;
             ++num_hb_intrs;
 
             Calculate_Theta( pbond_ij->dvec, pbond_ij->d, dvec_jk, r_jk,
-- 
GitLab