v1.5 — November 2021

  • Saturday, Nov 27, 2021




Release Notes


  • Binary installers: see link above
  • Python Anaconda: conda install psi4 -c psi4.
  • Windows conda packages available (#1560)
  • Dropped dependencies: none
  • Added dependencies: none

New Methods

  • Domain-based local pair natural orbital MP2 implemented! Accessible through energy("dlpno-mp2") (#2093, #2313).

External Libraries

  • DFTD4 has been interfaced, so functional calls like energy("b3lyp-d4") run through QCEngine if the upstream software is available (#2142). Note that it’s not the dftd4 executable that’s needed but the dftd4 Python module. For linux, this is distributed via conda install dftd4 -c psi4. It is also available as conda install dftd4-python -c conda-forge, but that’s trickier to get it and Psi4 dependencies installed together happily.
  • QCSchema runs now return the input and other selected text files in the AtomicResult.native_files field, controllable by AtomicInput.protocols.native_files setting (#2361).

Performance Optimizations

  • Direct SCF jobs can now use density screening and incremental Fock build (#2155).
  • DIIS routines have been vectorized in preparation for their refactoring to Python (#2355).

Details of Interest

  • Linear response enabled for UHF references (#2266).
  • Fix SCF memory leak and Vector::dgemv error. Not an correctness issue (#2347).
  • MBIS charges and volume ratios separated as OEProp tasks (#2273).
  • Save gradient and Hessian results from finite difference more thoroughly in QCVars (#2293).
  • Add DFTensor class for better recording and manipulating density cummulant theory (DCT) (#2250).
  • Fix some memory leaks or memory mangement: DFT integration coordinates (#2352), qcdb.BasisSet (#2349), libmints (#2346), cubeprop (#2345).
  • Prepare DIIS for moving to Python (#2298, #2327, #2350, #2325).

Bug Fixes

  • The performance improvement for exchange in range-separated functionals added in #1911 in v1.4 has been found to have correctness issues discussed in #2279. An internal library call was fixed in v1.4.1 with #2283, but some runtime conditions and BLAS calls still lead to errors, so the controlling wcombine option is disabled while under investigation in #2362.
  • Fix mapping for DFT functional names for BrianQC jobs (#2357).
  • Allow UHF gradients to be run on systems without beta electrons (#2344).
  • Fix external potential + FISAPT results when moledule specified with units Bohr (#2331).
  • Fix MCSCF final energy mismatch (#2259)
  • Fix SCF initialization so that linear dependencies get fed properly to FNOCC (#2302).
  • Make Windows conda build more broadly runnable by altering ENABLE_XHOST option (#2292).
  • Fix fractional occupation with symmetry (#2280, #2290).
  • Fix print spacing in FCIDUMP files for 1e and 0e (#2277).
  • Fix a bug where MOM could clear all electrons (#2270).
  • Fix handling of frozen core orbitals in SAPT between monomer and dimer parts. Common case is when one monomer is an alkali cation (#2271).

Contributors to v1.5

@andyj10224, @maxscheurer, @kis-gergely-dzsi, @alenaizan, @Icyyork, @konpat, @zachglick, @susilehtola, @brianz98, @jeffschriber, @hokru, @loriab, @JonathonMisiewicz, @fevangelista, @andysim