v1.11 — June 2026

  • Monday, Jun 29, 2026
blog-image

Documentation

Installers

Source

Release Notes

Advertised Version: 1.11 Continuous Version: 1.11 Release Date: 29 Jun 2026 Documentation: https://psicode.org/psi4manual/1.11.x/ . Availability: Public, GitHub source, CMake build, ~Conda binary installers~, ~Docker~ Span: ~48 PRs~

New Contributors

Full Changelog: https://github.com/psi4/psi4/compare/v1.10...v1.11

Required Dependency Changes

  • For compatibility with QCSchema v2 and Py v3.14 in general, Psi4 now needs pydantic >=2.11, qcelemental >=0.50.4, qcengine >=0.50.0, qcmanybody >=0.7.1, optking >=0.5.0, qcfractal >= ~0.64 (not available for Py 3.14 until unreleased v0.70), dftd3-python >=1.3.0, dftd4-python >=4.1.0 by @loriab in https://github.com/psi4/psi4/pull/3341
  • Python v3.14 is now useable. Some QCSchema v1 functionality may be unavailable due to pydantic constraints (i.e., Pydantic does not allow QCSchema v1 objects to be created with Py >=3.14) by @loriab in https://github.com/psi4/psi4/pull/3341

New Methods

  • DLPNO: DLPNO-CCSD is callable as energy('dlpno-ccsd') and DLPNO-CCSD(T) is callable as energy('dlpno-ccsd(t)') by @andyj10224 in https://github.com/psi4/psi4/pull/3293
  • The user may evaluate the Hellmann-Feynman gradient term associated with an arbitrary potential via numerical quadrature with psi4.core.NumIntHelper.potential_gradient(). The potential must be supplied as a list of psi4.core.Vector, where each vector object corresponds to a block in the psi4.core.DFTGrid used to instantiate the psi4.core.NumIntHelper by @johnppederson in https://github.com/psi4/psi4/pull/3322
  • Set relativistic zora to make the core Hamiltonian scalar-relativistic (with minimal cost) with zeroth-order regular approximation (ZORA) by @NathanGillispie in https://github.com/psi4/psi4/pull/3292
  • Add MBIS charges for atomic number Z=1–118 (previously Z=1–36 only); no API changes by @jaclark5 in https://github.com/psi4/psi4/pull/3399
  • The functionality of the longstanding fsapt.py post-SAPT analysis script is now joined by a driver fsapt_analysis() function to do the analysis in-script or on an AtomicResult. Also better storing of SAPT QCVariables on wfn by @Awallace3 in https://github.com/psi4/psi4/pull/3222
  • Users can get the analytic gradient of the energy for molecules in the presence of diffuse charges, the analytic gradient of the energy for embedded diffuse charges by calling ExternalPotential.gradient_on_diffuses(), the interaction energy between diffuse/point charges in separate ExternalPotential objects via ExternalPotential.computeExternExternInteraction() by @johnppederson in https://github.com/psi4/psi4/pull/3374

External Libraries

Breaking Changes

Performance Optimizations

  • Fix redundant LibXC build caused by GauXC’s ExchCXX dependency handling by @TiborGY in https://github.com/psi4/psi4/pull/3330
  • Optimize wK block in DirectJK: use clone() instead of N separate creations for performance improvement for range-separated functionals (wB97, wB97X, CAM-B3LYP, etc) by @ConstLike in https://github.com/psi4/psi4/pull/3334
  • Fix mbis memory overallocation and free atom method selection allowing bigger molecules and less memory @esingh41 in https://github.com/psi4/psi4/pull/3329
  • Fix an SCF performance conversion regression bug (not a correctness bug) in the SAD guess. Characteristics: very different SAD energy, jumps in SCF energies, more iterations to converge or fails to converge, sometimes positive SCF energies. SAD is affected, SADNO is ok. worse with larger basis sets. Of released versions, only v1.10.0 was affected; v1.9.x and v1.10.1 were correct. by @loriab in https://github.com/psi4/psi4/pull/3390
  • OOO (OpenOrbitalOptimizer) is now converging SCF far tighter now, so more useable. set orbital_optimizer_package ooo by @loriab in https://github.com/psi4/psi4/pull/3392
  • New function psi4.core.get_timer_records() to collect timer.dat info from parallel timers in dictionary form and without going through a file.. Extend QCSchema wrapper to collect additional native files. Added export of timer data to structured data, removing half-working timer.dat. When submitted with protocol native_files='all', qcschema jobs now report timer data like the below under key timer.json. The format isn’t necessarily final. Credit to @Awallace3 , @Lexiiiy, @pot8osince98 https://github.com/psi4/psi4/pull/3443
  • Evaluations for diffuse charges involving ERIs have been parallelized by @johnppederson in https://github.com/psi4/psi4/pull/3374

Details of Interest

Conda Package Updates

  • Added gauxc for snlink. Some changes to allow it by @loriab in https://github.com/psi4/psi4/pull/3445
  • Some path-advisor-generated environments were solving to include MPI. Now requesting non-mpi variant of MolSSI’s MDI to avoid this (#3392)
  • Anyone using simple-dftd3 directly or through the run_sdftd3 fn of psi4, see https://github.com/psi4/psi4/pull/3380 . Normal energy("<functional>-d3") through psi4 is unchanged.
  • Try updated Windows constraints: MKL 2025, Clang 19 (rather than 17), and LLVM OpenMP (rather than iomp5) by @loriab in https://github.com/psi4/psi4/pull/3345

Bug Fixes

Known Bugs

  • In set perturb_with sphere there is likely a bug when the basis set uses pure d-, f-, etc. functions and contains d-shells or higher. If you need this, see https://github.com/psi4/psi4/pull/3437 for a potential solution