From 817aa61341954e39c0702684d821506204c57c37 Mon Sep 17 00:00:00 2001 From: mitsuaki1987 Date: Tue, 22 Aug 2017 14:23:43 +0900 Subject: [PATCH] double-comples as argments for isfinite is not arrowed in GCC5 --- src/mVMC/matrix.c | 2 +- src/mVMC/vmccal.c | 2 +- src/mVMC/vmcmake.c | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/mVMC/matrix.c b/src/mVMC/matrix.c index 7ab4120d..beb6ec92 100644 --- a/src/mVMC/matrix.c +++ b/src/mVMC/matrix.c @@ -472,7 +472,7 @@ int calculateMAll_BF_fcmp_child( /* calculate Pf M */ M_ZSKPFA(&uplo, &mthd, &n, invM, &lda, &pfaff, iwork, work, &lwork, rwork, &info); //TBC if(info!=0) return info; - if(!isfinite(pfaff)) return qpidx+1; + if(!(isfinite(creal(pfaff)) && isfinite(cimag(pfaff)))) return qpidx+1; PfM[qpidx] = pfaff; /* DInv */ diff --git a/src/mVMC/vmccal.c b/src/mVMC/vmccal.c index acc604ec..85698c08 100644 --- a/src/mVMC/vmccal.c +++ b/src/mVMC/vmccal.c @@ -401,7 +401,7 @@ void VMC_BF_MainCal(MPI_Comm comm) { /* calculate double occupation D */ db = CalculateDoubleOccupation(eleIdx, eleCfg, eleNum, eleProjCnt); StopTimer(41); - if (!isfinite(e)) { + if (! (isfinite(creal(e)) && isfinite(cimag(e)))) { fprintf(stderr, "waring: VMCMainCal rank:%d sample:%d e=%e\n", rank, sample, creal(e)); continue; } diff --git a/src/mVMC/vmcmake.c b/src/mVMC/vmcmake.c index fc8f87bc..d829d6ba 100644 --- a/src/mVMC/vmcmake.c +++ b/src/mVMC/vmcmake.c @@ -531,7 +531,7 @@ void VMC_BF_MakeSample(MPI_Comm comm) CalculateMAll_BF_fcmp(TmpEleIdx, qpStart, qpEnd); logIpOld = CalculateLogIP_fcmp(PfM, qpStart, qpEnd, comm); - if (!isfinite(logIpOld)) { + if (! (isfinite(creal(logIpOld)) && isfinite(cimag(logIpOld)))) { if (rank == 0) fprintf(stderr, "waring: VMCMakeSample remakeSample logIpOld=%e\n", creal(logIpOld)); //TBC makeInitialSampleBF(TmpEleIdx, TmpEleCfg, TmpEleNum, TmpEleProjCnt, TmpEleProjBFCnt, qpStart, qpEnd, comm);