From c934208a4a462ec55c4a25cadd6b6d3adc307edc Mon Sep 17 00:00:00 2001 From: jrgissing Date: Sun, 28 May 2023 14:07:25 -0400 Subject: [PATCH 1/3] only update ivector if it still exists --- src/atom.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/atom.cpp b/src/atom.cpp index f30ace174e..d5f8b64a52 100644 --- a/src/atom.cpp +++ b/src/atom.cpp @@ -2129,7 +2129,8 @@ void Atom::add_molecule_atom(Molecule *onemol, int iatom, int ilocal, tagint off // initialize custom per-atom properties to zero if present - for (int i = 0; i < nivector; ++i) ivector[i][ilocal] = 0; + for (int i = 0; i < nivector; ++i) + if (ivname[i] != nullptr) ivector[i][ilocal] = 0; for (int i = 0; i < ndvector; ++i) dvector[i][ilocal] = 0.0; for (int i = 0; i < niarray; ++i) for (int j = 0; j < icols[i]; ++j) From 088d870e2062e7613b60f317eaccccd1dfff41cf Mon Sep 17 00:00:00 2001 From: jrgissing Date: Tue, 30 May 2023 17:17:54 -0400 Subject: [PATCH 2/3] check remaining per-atom initializations --- src/atom.cpp | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/src/atom.cpp b/src/atom.cpp index d5f8b64a52..3e9e177ae0 100644 --- a/src/atom.cpp +++ b/src/atom.cpp @@ -2131,13 +2131,16 @@ void Atom::add_molecule_atom(Molecule *onemol, int iatom, int ilocal, tagint off for (int i = 0; i < nivector; ++i) if (ivname[i] != nullptr) ivector[i][ilocal] = 0; - for (int i = 0; i < ndvector; ++i) dvector[i][ilocal] = 0.0; + for (int i = 0; i < ndvector; ++i) + if (dvname[i] != nullptr) dvector[i][ilocal] = 0.0; for (int i = 0; i < niarray; ++i) - for (int j = 0; j < icols[i]; ++j) - iarray[i][ilocal][j] = 0; + if (ianame[i] != nullptr) + for (int j = 0; j < icols[i]; ++j) + iarray[i][ilocal][j] = 0; for (int i = 0; i < ndarray; ++i) - for (int j = 0; j < dcols[i]; ++j) - darray[i][ilocal][j] = 0.0; + if (daname[i] != nullptr) + for (int j = 0; j < dcols[i]; ++j) + darray[i][ilocal][j] = 0.0; if (molecular != Atom::MOLECULAR) return; From a0461d29ddc23485c5995490bdbb126b0e917cfb Mon Sep 17 00:00:00 2001 From: Jacob Gissinger Date: Wed, 31 May 2023 17:04:49 -0400 Subject: [PATCH 3/3] Update atom.cpp --- src/atom.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/atom.cpp b/src/atom.cpp index 3e9e177ae0..08e9639440 100644 --- a/src/atom.cpp +++ b/src/atom.cpp @@ -2130,15 +2130,15 @@ void Atom::add_molecule_atom(Molecule *onemol, int iatom, int ilocal, tagint off // initialize custom per-atom properties to zero if present for (int i = 0; i < nivector; ++i) - if (ivname[i] != nullptr) ivector[i][ilocal] = 0; + if (ivname[i]) ivector[i][ilocal] = 0; for (int i = 0; i < ndvector; ++i) - if (dvname[i] != nullptr) dvector[i][ilocal] = 0.0; + if (dvname[i]) dvector[i][ilocal] = 0.0; for (int i = 0; i < niarray; ++i) - if (ianame[i] != nullptr) + if (ianame[i]) for (int j = 0; j < icols[i]; ++j) iarray[i][ilocal][j] = 0; for (int i = 0; i < ndarray; ++i) - if (daname[i] != nullptr) + if (daname[i]) for (int j = 0; j < dcols[i]; ++j) darray[i][ilocal][j] = 0.0;