diff --git a/CMake/GNUCompilers.cmake b/CMake/GNUCompilers.cmake index 730fe31b0..f7669e64d 100755 --- a/CMake/GNUCompilers.cmake +++ b/CMake/GNUCompilers.cmake @@ -1,8 +1,9 @@ #GNU compilers IF(CMAKE_COMPILER_IS_GNUCXX) ADD_DEFINITIONS(-Drestrict=__restrict__ -DADD_ -DINLINE_ALL=inline) - SET(CMAKE_CXX_FLAGS "-O6 -ftemplate-depth-60 -Drestrict=__restrict__ -fstrict-aliasing -funroll-all-loops -finline-limit=1000 -ffast-math -Wno-deprecated ") - SET(CMAKE_C_FLAGS "-O3 -Drestrict=__restrict__ -fstrict-aliasing -funroll-all-loops -finline-limit=1000 -ffast-math -std=gnu99 -fomit-frame-pointer ") +# SET(CMAKE_CXX_FLAGS "-O3 -ftemplate-depth-60 -Drestrict=__restrict__ -fstrict-aliasing -funroll-all-loops -finline-limit=1000 -ffast-math -Wno-deprecated ") + SET(CMAKE_CXX_FLAGS "-g -O3 -ftemplate-depth-60 -Drestrict=__restrict__ -funroll-all-loops -finline-limit=1000 -Wno-deprecated ") + SET(CMAKE_C_FLAGS "-O3 -Drestrict=__restrict__ -funroll-all-loops -finline-limit=1000 -std=gnu99 -fomit-frame-pointer ") IF(HAVE_POSIX_MEMALIGN) SET(CMAKE_TRY_GNU_CC_FLAGS "-mmmx") diff --git a/CMake/IntelCompilers.cmake b/CMake/IntelCompilers.cmake index 3843eb87c..2cfe4cbf5 100755 --- a/CMake/IntelCompilers.cmake +++ b/CMake/IntelCompilers.cmake @@ -15,19 +15,19 @@ SET(INTEL_COMPILER 1) ADD_DEFINITIONS(-DADD_ -DINLINE_ALL=inline -DMPICH_SKIP_MPICXX) #enable Interprocedural (IP) Optimizations #-ipo_obj force generation of real object files (requires -ipo) -#SET(CMAKE_CXX_FLAGS "-restrict -unroll -fno-alias -O3 -Ob=1 -ansi -ipo -ipo_obj -cxxlib-icc") -#SET(CMAKE_CC_FLAGS "-restrict -unroll -fno-alias -O3 -Ob=1 -ansi -ipo -ipo_obj") -#SET(CMAKE_CXX_FLAGS "-restrict -unroll -fno-alias -g -ansi") -#SET(CMAKE_CC_FLAGS "-restrict -unroll -fno-alias -g -ansi") -#SET(CMAKE_CXX_FLAGS "-restrict -unroll -fno-alias -O3 -cxxlib-icc") -#SET(CMAKE_CXX_FLAGS "-restrict -unroll -fno-alias -O3 -ansi -fno-fnalias -ivdep_parallel -Ob=2") -#SET(CMAKE_CXX_FLAGS "-restrict -unroll -fno-alias -O3 -ivdep_parallel -Ob=2") -#SET(CMAKE_CXX_FLAGS "-restrict -unroll -fno-alias -O3 -Ob=2 -qp") -#SET(CMAKE_CXX_FLAGS "-restrict -unroll -fno-alias -O3 -Ob=2 -cxxlib-icc") -#SET(CMAKE_CXX_FLAGS "-restrict -unroll -fno-alias -O3") +#SET(CMAKE_CXX_FLAGS "-unroll -O3 -Ob=1 -ansi -ipo -ipo_obj -cxxlib-icc") +#SET(CMAKE_CC_FLAGS " -unroll -O3 -Ob=1 -ansi -ipo -ipo_obj") +#SET(CMAKE_CXX_FLAGS " -unroll -g -ansi") +#SET(CMAKE_CC_FLAGS " -unroll -g -ansi") +#SET(CMAKE_CXX_FLAGS " -unroll -O3 -cxxlib-icc") +#SET(CMAKE_CXX_FLAGS " -unroll -O3 -ansi -fno-fnalias -ivdep_parallel -Ob=2") +#SET(CMAKE_CXX_FLAGS " -unroll -O3 -ivdep_parallel -Ob=2") +#SET(CMAKE_CXX_FLAGS " -unroll -O3 -Ob=2 -qp") +#SET(CMAKE_CXX_FLAGS " -unroll -O3 -Ob=2 -cxxlib-icc") +#SET(CMAKE_CXX_FLAGS " -unroll -O3") # common options for intel compilers -SET(INTEL_OPTS "-g -restrict -unroll -fno-alias -O3 -ip") +SET(INTEL_OPTS "-g -restrict -unroll -O3 -ip") IF(${CMAKE_SYSTEM_PROCESSOR} MATCHES "i386") SET(CMAKE_CXX_FLAGS "${INTEL_OPTS}") diff --git a/src/QMCHamiltonians/ZeroVarianceForce.cpp b/src/QMCHamiltonians/ZeroVarianceForce.cpp index f68203c80..938d4f8a4 100644 --- a/src/QMCHamiltonians/ZeroVarianceForce.cpp +++ b/src/QMCHamiltonians/ZeroVarianceForce.cpp @@ -80,7 +80,6 @@ namespace qmcplusplus { ZeroVarianceForce::Return_t ZeroVarianceForce::evaluate(ParticleSet& P) { - RealType lapl = Sum(P.L) + Dot(P.G, P.G); for (int ion=0; ion < Nnuc; ion++) { GradType grad = Psi.evalGradSource(P, Ions, ion, grad_grad_psi, lapl_grad_psi); for (int dim=0; dim < OHMMS_DIM; dim++) diff --git a/src/QMCWaveFunctions/Fermion/DiracDeterminantBase.cpp b/src/QMCWaveFunctions/Fermion/DiracDeterminantBase.cpp index 7afe88ab3..92d7562e4 100644 --- a/src/QMCWaveFunctions/Fermion/DiracDeterminantBase.cpp +++ b/src/QMCWaveFunctions/Fermion/DiracDeterminantBase.cpp @@ -349,6 +349,12 @@ namespace qmcplusplus { Phi->evaluateGradSource (P, FirstIndex, LastIndex, source, iat, grad_source_psiM, grad_grad_source_psiM, grad_lapl_source_psiM); + + // HACK HACK HACK + // Phi->evaluate(P, FirstIndex, LastIndex, psiM, dpsiM, d2psiM); + // LogValue=InvertWithLog(psiM.data(),NumPtcls,NumOrbitals, + // WorkSpace.data(),Pivot.data(),PhaseValue); + // Compute matrices phi_alpha_Minv = 0.0; grad_phi_Minv = 0.0; lapl_phi_Minv = 0.0; grad_phi_alpha_Minv = 0.0; diff --git a/src/QMCWaveFunctions/Jastrow/BsplineFunctor.h b/src/QMCWaveFunctions/Jastrow/BsplineFunctor.h index 7d0f4d5b1..936429b94 100644 --- a/src/QMCWaveFunctions/Jastrow/BsplineFunctor.h +++ b/src/QMCWaveFunctions/Jastrow/BsplineFunctor.h @@ -202,16 +202,16 @@ namespace qmcplusplus { inline real_type evaluate(real_type r, real_type& dudr, real_type& d2udr2, real_type &d3udr3) { if (r >= cutoff_radius) { - dudr = d2udr2 = 0.0; + dudr = d2udr2 = d3udr3 = 0.0; return 0.0; } - real_type eps = 1.0e-5; + // real_type eps = 1.0e-5; // real_type dudr_FD = (evaluate(r+eps)-evaluate(r-eps))/(2.0*eps); // real_type d2udr2_FD = (evaluate(r+eps)+evaluate(r-eps)-2.0*evaluate(r))/(eps*eps); - real_type d3udr3_FD = (-1.0*evaluate(r+1.0*eps) - +2.0*evaluate(r+0.5*eps) - -2.0*evaluate(r-0.5*eps) - +1.0*evaluate(r-1.0*eps))/(eps*eps*eps); + // real_type d3udr3_FD = (-1.0*evaluate(r+1.0*eps) + // +2.0*evaluate(r+0.5*eps) + // -2.0*evaluate(r-0.5*eps) + // +1.0*evaluate(r-1.0*eps))/(eps*eps*eps); r *= DeltaRInv; real_type ipart, t; @@ -245,10 +245,9 @@ namespace qmcplusplus { // cerr << "Error in BsplineFunction: r = " << r << " d2udr2 = " << dudr // << " d2udr2_FD = " << d2udr2_FD << " rcut = " << cutoff_radius << endl; - if (std::fabs(d3udr3_FD-d3udr3) > 1.0e-4) - cerr << "Error in BsplineFunction: r = " << r << " d3udr3 = " << dudr - << " d3udr3_FD = " << d3udr3_FD << " rcut = " << cutoff_radius << endl; - + // if (std::fabs(d3udr3_FD-d3udr3) > 1.0e-4) + // cerr << "Error in BsplineFunction: r = " << r << " d3udr3 = " << dudr + // << " d3udr3_FD = " << d3udr3_FD << " rcut = " << cutoff_radius << endl; return (SplineCoefs[i+0]*(A[ 0]*tp[0] + A[ 1]*tp[1] + A[ 2]*tp[2] + A[ 3]*tp[3])+