Various Paul updates (depends on 4 center integrals)#87
Conversation
integrals.cpp now has a long-range barrier potential option also various changes to support Gaussian basis operations
|
Paul is trying to build an executable with his latest inversion stuff that isn't in XCtera yet depending on Srijita's recently merged branch to SlaterGPU. He wants this branch merged to main and combined with Srijita's changes before he does that. I just met with Paul and he just pushed an update adding a compiler directive to make most functionality in this branch work without the 4 center integral stuff in #82 . He did a quick update in the github interface though so before merging he'd like us to clean up the spacing / whitespace in his changes and add an option in the pixi/cmake build so someone can turn on the compiler directive he just added if they want to (it should currently be off by default). We could add a quick note in the readme so someone knows how to enable the 4 center integrals (which currently requires a manual libcint build linking directly to Paul's directory on athena). |
Adds a CMake variable that, when ON, defines the COMPILE_CINTW_4C preprocessor macro for the cintw target. This macro gates the bodies of gen_4c_overlap_m4 and gen_4c_overlap in cintwrapper.cpp, which require libcint's cint4c1e_* functions (compiled only with a non-default flag and affected by the known bug in issue #82). Defaults to OFF. Mirrors the existing USE_ACC env-var pattern so users can opt in via: export COMPILE_CINTW_4C=ON Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
The #ifdef COMPILE_CINTW_4C inside gen_4c_overlap (cintwrapper.cpp:756) was 1-space indented; the matching one inside gen_4c_overlap_m4 and both #else / #endif lines are 2-space. Normalize to match. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
integrals.cpp now has a long-range barrier potential option
also various changes to support Gaussian basis operations
In order for this to work, we need Paul's bug fix for the 4 center integrals in libcint as well as the compiler flag that turns on compilation of 4 center integral functions in libcint (see #82 ).
We could use compiler direct not compile the libcint wrapper 4 center integral function unless our custom modification to libcint is present (using compiler directives).
Specific function names: gen_4c_overlap_m4, gen_4c_overlap
Closes ISSUE