From dfb79e3e113f97dd33b82277f3d3f11e2ddb4614 Mon Sep 17 00:00:00 2001 From: ianchb Date: Thu, 26 Feb 2026 11:48:28 +0800 Subject: [PATCH] Initialize output arrays to zero in fdderivs_c.C and fderivs_c.C --- AMSS_NCKU_source/fdderivs_c.C | 4 ++++ AMSS_NCKU_source/fderivs_c.C | 5 +++++ 2 files changed, 9 insertions(+) diff --git a/AMSS_NCKU_source/fdderivs_c.C b/AMSS_NCKU_source/fdderivs_c.C index cd65ac3..5cc52d4 100644 --- a/AMSS_NCKU_source/fdderivs_c.C +++ b/AMSS_NCKU_source/fdderivs_c.C @@ -73,6 +73,10 @@ void fdderivs(const int ex[3], /* 输出清零:fxx,fyy,fzz,fxy,fxz,fyz = 0 */ const size_t all = (size_t)ex1 * (size_t)ex2 * (size_t)ex3; + for (size_t p = 0; p < all; ++p) { + fxx[p] = ZEO; fyy[p] = ZEO; fzz[p] = ZEO; + fxy[p] = ZEO; fxz[p] = ZEO; fyz[p] = ZEO; + } /* * Fortran: diff --git a/AMSS_NCKU_source/fderivs_c.C b/AMSS_NCKU_source/fderivs_c.C index 0637cba..5f6b94c 100644 --- a/AMSS_NCKU_source/fderivs_c.C +++ b/AMSS_NCKU_source/fderivs_c.C @@ -74,6 +74,11 @@ void fderivs(const int ex[3], // fx = fy = fz = 0 const size_t all = (size_t)ex1 * (size_t)ex2 * (size_t)ex3; + for (size_t p = 0; p < all; ++p) { + fx[p] = ZEO; + fy[p] = ZEO; + fz[p] = ZEO; + } /* * Fortran loops: