v0.14.0 / 2020-02-06¶
(GH#201) Psi4 -
psi4 --versioncollection to only grab the last line.
(GH#202) Entos - Adds wavefunction parsing.
(GH#203) NWChem - Parses DFT empirical dispersion energy.
(GH#204) NWChem - Allows custom DFT functionals to be run.
(GH#205) NWChem - Improved gradient output and added Hessian support for NWChem.
(GH#215) Psi4 - if Psi4 location can be found by either PATH or PYTHONPATH, harness sets up both subprocesses and API execution.
get_programshows the helpful “install this” messages from
found()rather than just saying “cannot be found”.
v0.13.0 / 2019-12-10¶
(GH#175) Allows specifications for
nnodesto begin MPI support.
(GH#177) NWChem - Parsing updates including Hessian abilities.
(GH#180) GAMESS - Output properties improvements.
(GH#181) NWChem - Output properties improvements.
(GH#183) Entos - Hessian and XTB support.
(GH#185) Entos - Improved subcommand support.
(GH#187) QChem - Support for raw log files without the binary file requirements and improved output properties support.
(GH#188) Automatic buffer reads to prevent deadlocking of process for very large outputs.
(GH#194) DFTD3 - Improved error message on failed evaluations.
(GH#195) Blackens the code base add GHA-based lint checks.
v0.12.0 / 2019-11-13¶
(GH#155) Support for Psi4 Wavefunctions using v1.4a2 or greater.
(GH#162) Adds test for geometry optimization with trajectory protocol truncation.
(GH#167) CFOUR and NWChem parsing improvements for CCSD(T) properties.
(GH#168) Standardizes on
dispatch.outfor the common output files.
(GH#170) Increases coverage and begins a common documentation page.
(GH#171) Add Molpro to the standard suite.
v0.11.0 / 2019-10-01¶
(GH#162) Adds a test to take advantage of Elemental’s Protocols. Although this PR does not technically change anything in Engine, bumping the minor version here allows upstream programs to note when this feature was available because the minimum version dependency on Elemental has been bumped as well.
(GH#149) The GAMESS Harness has been improved by adding testing.
(GH#150, GH#153) TorchANI has been improved by adding a Hessian driver to it and additional information is returned in the
energyis the driver. This also bumped the minimum version of TorchANI Engine supports from 0.5 to 0.9.
(GH#154) Molpro’s harness has been improved to support
callinfo_Xproperties, unrestricted HF and DFT calculations, and the initial support for parsing local correlation calculations.
(GH#158) Entos’ output parsing has been improved to read the json dictionary produced by the program directly. Also updates the input file generation.
(GH#161) Updates MOPAC to have more sensible quantum-chemistry like keywords by default.
v0.10.0 / 2019-08-25¶
(GH#132) Expands CLI for
(GH#137) A new CI pipeline through Azure has been developed which uses custom, private Docker images to house non-public code which will enable us to test Engine through integrated CI on these codes securely.
(GH#140) GAMESS, CFOUR, NWChem preliminary implementations.
v0.9.0 / 2019-08-14¶
(GH#120) Engine now takes advantage of Elemental’s new Msgpack serialization option for Models. Serialization defaults to msgpack when available (
conda install msgpack-python [-c conda-forge]), falling back to JSON otherwise. This results in substantial speedups for both serialization and deserialization actions and should be a transparent replacement for users within Engine and Elemental themselves.
MolproHarnesshas been updated to handle DFT and CCSD(T) energies and gradients.
(GH#116) An environment context manager has been added to catch NumPy style parallelization with Python functions.
(GH#117) MOPAC and DFTD3 can now accept an
extrasfield which can pass around additional data, conforming to the rest of the Harnesses.
(GH#119) Small visual improvements to the docs have been made.
(GH#120) Lists inside models are now generally converted to numpy arrays for internal storage to maximize the benefit of the new Msgpack feature from Elemental.
(GH#133) The GAMESS Harness now collects the CCSD as part of its output.
v0.8.2 / 2019-07-25¶
v0.8.1 / 2019-07-22¶
v0.8.0 / 2019-07-19¶
(GH#94) The gradient and molecule parsed from a GAMESS calculation output file are now returned in
(GH#101) Enabled extra files in TeraChem scratch folder to be requested by users, collected after program execution, and recorded in the
Resultobject as extras.
(GH#103) Random errors can now be retried a finite, controllable number of times (current default is zero retries). Geometry optimizations automatically set retries to 2. This only impacts errors which are categorized as
RandomErrorby QCEngine and all other errors are raised as normal.
v0.7.1 / 2019-06-18¶
v0.7.0 / 2019-06-17¶
(GH#85) The resource file
programs.dftd3.dashparam.pyhas relocated and renamed to
util.executeforgot str argument
scratch_directoryin the same role of existing directory within which temporary directories are created and cleaned up. Non-user-facing function
(GH#60) WIP: QCEngine interface to GAMESS can run the program (after light editing of rungms) and parse selected output (HF, CC, FCI) into QCSchema.
(GH#73) WIP: QCEngine interface to CFOUR can run the program and parse a variety of output into QCSchema.
(GH#59, GH#71, GH#75, GH#76, GH#78, GH#88) Molpro improvements: Molpro can be run by QCEngine; and the input generator and output parser now supports CCSD energy and gradient calculations. Large thanks to @sjrl for many of the improvements
(GH#69) Custom Exceptions have been added to QCEngine’s returns which will make parsing and diagnosing them easier and more programmatic for codes which invoke QCEngine. Thanks to @dgasmith for implementation.
(GH#82) QCEngine interface to entos can create input files (dft energy and gradients), run the program, and parse the output.
(GH#62, GH#67, GH#83) A large block of TeraChem improvements thanks to @ffangliu contributions. Changed the input parser to call qcelemental to_string method with bohr unit, improved output of parser to turn stdout into Result, and modified how version is parsed.
(GH#63) QCEngine functions
util.safe_versionremoved after migrating to QCElemental.
(GH#65) Torchani can now handle the ANI1-x and ANI1-ccx models. Credit to @dgasmith for implementation
(GH#74) Removes caching and reduces pytorch overhead from Travis CI. Credit to @dgasmith for implementation
util.execute(..., outfiles=)learned to collect output files matching a globbed filename.
util.executelearned list argument
as_binaryto handle input or output files as binary rather than string.
util.executelearned bool argument
scratch_exist_okto run in a preexisting directory. This is handy for stringing together execute calls.
util.executelearned str argument
scratch_suffixto identify temp dictionaries for debugging.
(GH#90) DFTD3 now supports preliminary parameters for zero and Becke-Johnson damping to use with SAPT0-D
v0.6.4 / 2019-03-21¶
(GH#54) Psi4’s Engine implementation now checks its key words in a case insensitive way to give the same value whether you called Psi4 or Engine to do the compute.
(GH#55) Fixed an error handling routine in Engine to match Psi4.
(GH#56) Complex inputs are now handled better through Psi4’s wrapper which caused Engine to hang while trying to write to
v0.6.3 / 2019-03-15¶
dftd3’s workings received an overhaul. The
molkeyword has been replaced with
dtype=2, full Psi4 support is now provided, and an MP2D interface has been added.
(GH#50 and GH#51) Executing Psi4 on a single node with multiprocessing is more stable because Psi4 temps are moved to scratch directories. This behavior is now better documented with an example as well.
(GH#52) Psi4 calls are now executed through the
subprocessmodule to prevent possible multiprocessing issues and memory leak after thousands of runs. A trade off is this adds about 0.5 seconds to task start-up, but its safe. A future Psi4 release will correct this issue and the change can be reverted.
v0.6.2 / 2019-03-07¶
(GH#43) Added a base model for all
Procedureobjects to derive from. This allows procedures’ interactions with compute programs to be more unified. This PR also ensured GeomeTRIC provides Provenance information.
(GH#40) This PR improved numerous back-end and testing quality of life aspects. Fixed
unittestwhen running tests on install. Some conda packages for Travis-CI are cached to reduce the download time of the larger computation codes. Psi4 is now pinned to the 1.3 version to fix build-level pin of libint. Conda-build recipe removed to avoid possible confusion for everyone who isn’t a Conda-Forge recipe maintainer. Tests now rely exclusively on the
v0.6.0 / 2019-02-28¶
(GH#36) breaking change Model objects are returned by default rather than a dictionary.
(GH#18) Add the
dftd3program to available computers.
(GH#29) Adds preliminary support for the
(GH#31) Moves all computation to
ProgramExecutorto allow for a more flexible input generation, execution, output parsing interface.
(GH#32) Adds a general
executeprocess which safely runs subprocess jobs.