PSI4-1.10

ウェブページ

https://psicode.org/

バージョン

1.10

ビルド環境

  • miniforge 環境を導入中に取得
    • python 3.12.12
    • GCC 14.3.0 (gcc, g++, gfortran)
    • cmake 4.2.0

ビルドに必要なファイル

  • (以下の手順中でダウンロードします)

ビルド手順

#!/bin/sh

VERSION=1.10
INSTALL_DIR=/apl/psi4/${VERSION}
PSI4_URL=https://github.com/psi4/psi4.git

WORKDIR=/gwork/users/${USER}

MINIFORGE_VERSION=25.9.1-0
MINIFORGE_ARCH=Linux-x86_64
MINIFORGE=Miniforge3-${MINIFORGE_VERSION}-${MINIFORGE_ARCH}.sh
MINIFORGE_URL=https://github.com/conda-forge/miniforge/releases/download/${MINIFORGE_VERSION}/${MINIFORGE}

export LANG=C
PARALLEL=12

# -----------------------------------------------------------------
umask 0022

module -s purge
module -s load pbs/22.05.11

cd ${INSTALL_DIR}
wget ${MINIFORGE_URL}
sh ${MINIFORGE} -b -p ${INSTALL_DIR}/miniforge3
${INSTALL_DIR}/miniforge3/bin/conda shell.bash hook > ${INSTALL_DIR}/conda_init.sh
${INSTALL_DIR}/miniforge3/bin/conda shell.tcsh hook > ${INSTALL_DIR}/conda_init.csh
. ${INSTALL_DIR}/conda_init.sh
rm -f ${MINIFORGE} wget-log

cd ${WORKDIR}
if [ -d psi4 ]; then
 mv psi4 psi4-erase
 rm -rf psi4-erase &
fi
git clone -b v${VERSION} ${PSI4_URL}
cd psi4
conda/psi4-path-advisor.py env --python 3.12 --name base --disable addons docs
conda env update --file env_base.yaml
conda install -y regex jsonschema doxygen geometric gcp-correction \
                zlib fortran-compiler pylibefp armadillo \
                unidecode dftd3-python dftd4-python

export CMAKE_POLICY_VERSION_MINIMUM=3.5
mkdir build && cd build

cmake .. \
 -DCMAKE_INSTALL_PREFIX=${INSTALL_DIR} \
 -DBUILD_SHARED_LIBS=ON \
 -DCMAKE_C_COMPILER=gcc \
 -DCMAKE_CXX_COMPILER=g++ \
 -DCMAKE_Fortran_COMPILER=gfortran \
 -DENABLE_CheMPS2=ON \
 -DENABLE_Einsums=ON \
 -DENABLE_IntegratorXX=ON \
 -DENABLE_OpenOrbitalOptimizer=ON \
 -DENABLE_PCMSolver=ON \
 -DENABLE_adcc=OFF \
 -DENABLE_ambit=ON \
 -DENABLE_bse=ON \
 -DENABLE_ccsort=OFF \
 -DENABLE_cct3=ON \
 -DENABLE_cppe=ON \
 -DENABLE_ddx=ON \
 -DENABLE_dkh=ON \
 -DENABLE_ecpint=ON \
 -DENABLE_gdma=ON \
 -DENABLE_libefp=ON \
 -DENABLE_mdi=ON \
 -DENABLE_psi4fockci=ON \
 -DENABLE_simint=ON \
 -DENABLE_snsmp2=OFF \
 -DENABLE_transqt2=OFF \
 -DENABLE_v2rdm_casscf=ON
make -j ${PARALLEL}
make install

export PATH=${INSTALL_DIR}/bin:${PATH}
export LD_LIBRARY_PATH=${INSTALL_DIR}/lib:${LD_LIBRARY_PATH}
export PYTHONPATH=${INSTALL_DIR}/lib:${PYTHONPATH}

ctest -j${PARALLEL}
mkdir -p ${INSTALL_DIR}/test_results
cp Testing/Temporary/* ${INSTALL_DIR}/test_results

テスト

テストは全てパスしています。ログのコピーは /apl/psi4/1.10/test_results 以下にあります。

メモ

  • gcc-toolset のコンパイラを使うと mcscf2 のテストに失敗するので conda 環境のコンパイラを使用
    • gcc-toolset 11, 12, 14 で失敗を確認。13 は未検証だが、同じ結果になると思われる。/usr/lib64 にある共通の実行時ライブラリの問題かもしれないが未検証
  • export CMAKE_POLICY_VERSION_MINIMUM=3.5 の行は cmake 4.x を使う場合には必要になると思われる
  • adcc, ccsort, transqt2 は有効にするとビルドエラーが発生するため無効化
    • snsmp2 はビルドはできるが、テストで失敗する他、実行時に warning が出るため無効化
  • インテルコンパイラ(llvm)でビルドした場合、並列時の速度が gcc に比べて不利だったため gcc を採用。