Skip to content

Releases: SCM-NV/PLAMS

2025.105

13 Oct 09:15
aa87126

Choose a tag to compare

2025.104

18 Aug 08:34
aa87126

Choose a tag to compare

What's Changed

  • Fix for loading legacy multi-jobs by @dormrod in #288
  • Fix for finalize when job fails during execution and GridRunner regression by @dormrod in #298

Full Changelog: 2025.103...2025.104

2024.107

11 Aug 08:26
19de701

Choose a tag to compare

What's Changed

  • Fix NoneType exception in amsjob check SCMSUITE-10161 SO-- by @dormrod in #188

Full Changelog: 2024.106...2024.107

2025.103

17 Jun 08:25
1b63699

Choose a tag to compare

What's Changed

  • Fix job loading for dill files from PLAMS<2025 by @dormrod in #271
  • SO--. Fix bug in PLAMS wrapper for pyCRS example. by @WLChen1118 in #278

Full Changelog: 2025.102...2025.103

PLAMS 2025.102

28 Apr 09:45
6223cfa

Choose a tag to compare

What's Changed

Full Changelog: 2025.101...2025.102

PLAMS 2025.101

09 Apr 14:00
2025.101
9f09a44

Choose a tag to compare

This release corresponds to AMS release 2025.101

Added

  • Methods get_system, get_input_system and get_main_system to AMSResults, which return an AMS ChemicalSystem instead of a PLAMS Molecule
  • AMSJob can accept an AMS ChemicalSystem instead of a PLAMS Molecule as an input system
  • Specific ConfigSettings and related settings classes with explicitly defined fields
  • Support for work functions: AMSResults.get_work_function_results and plot_work_function
  • New packmol_around function for packing in non-orthorhombic boxes.
  • New plot_grid_molecules function for plotting with rdkit multiple molecules.
  • Molecule.delete_atoms method to delete multiple atoms with partial success
  • Examples on MoleculeFormats and MoleculeTools
  • Examples on Logging
  • Script generate_example.sh to generate documentation pages from notebook examples
  • GitHub workflows for CI and publishing to PyPI
  • Build using pyproject.toml, addition of extras groups to install optional dependencies
  • Logging of job summaries to CSV logfile
  • Logging of AMS job error messages to stdout and logfile on job failure
  • Method get_errormsg enforced on the Job base class, with a default implementation
  • Added an interface to the Serenity program through methods such as SerenityJob, SerenityResults and SerenitySettings
  • Methods Settings.nested_keys, Settings.block_keys for accessing nested keys and Settings.contains_nested and Settings.pop_nested for checking if nested keys exist in a settings object and popping them
  • Method Settings.compare added to compare and contrast items in two settings objects
  • Method readcoskf added to Molecule class, enabling the reading of COSKF file
  • JobAnalysis tool for extracting job statuses, settings and results
  • Added support for calculating the hydrogen bond center using the Densf calculation in the ADFCOSMORSCompoundJob class
  • Introduced the update_hbc_to_coskf method in ADFCOSMORSCompoundJob class to calculate the hydrogen bond center using an existing COSKF file
  • Added AMSViscosityFromBinLogJob for running the AMS trajectory analysis tool to extract viscosity.

Changed

  • Functions for optional packages (e.g. RDKit, ASE) are available even when these packages are not installed, but will raise an MissingOptionalPackageError when called
  • AMSResults.get_main_ase_atoms also includes atomic charges
  • Global config is initialized with a ConfigSettings instead of loading from the standard plams_defaults file
  • init and finish functions are now optional
  • Job.status is a JobStatus string enum
  • Supercell and RDKit properties are no longer serialized to AMS input
  • Restructuring of examples and conversion of various examples to notebooks
  • Support for networkx>=3 and ase>=3.23
  • Use standard library logger for log function
  • Make Job class inherit from ABC and mark abstract methods
  • Exceptions raised in prerun and postrun will always be caught and populate error message
  • Settings.get_nested takes a default argument which is returned if the nested key is not present in the settings instance
  • JobManager.workdir converted to a readonly property, with the underlying workdir lazily created if it does not exist
  • JobRunner.parallel, JobRunner.maxjobs and JobRunner.maxthreads are properties which can take values of 0 or >1 and JobRunner.semaphore has been moved to a protected attribute JobRunner._job_limit

Fixed

  • Molecule.properties.charge is a numeric instead of string type when loading molecule from a file
  • Molecule.delete_all_bonds removes the reference molecule from the removed bond instances
  • SingleJob.load returns the correctly loaded job
  • AMSJob.check handles a NoneType status, returning False
  • MultiJob.run locking resolved when errors raised within prerun and postrun methods
  • Molecule.add_hatoms to use bonding information if available when adding new hydrogen atoms
  • Changes made to JobRunner.maxjobs after initialization are correctly applied

Deprecated

  • plams launch script is deprecated in favor of simply running with amspython

Removed

  • Legacy BANDJob, DFTBJob, UFFJob, MOPACJob, ReaxFFJob, CSHessianADFJob and ADFJob have been removed
  • Exception classes AMSPipeDecodeError, AMSPipeError, AMSPipeInvalidArgumentError, AMSPipeLogicError, AMSPipeRuntimeError, AMSPipeUnknownArgumentError, AMSPipeUnknownMethodError, AMSPipeUnknownVersionError, were moved from scm.plams to scm.amspipe.

PLAMS 2024.106

08 Jan 11:02

Choose a tag to compare

This release corresponds to AMS 2024.106.

Full Changelog: 2024.105...2024.106

PLAMS 2024.105

20 Nov 14:32

Choose a tag to compare

This release corresponds to AMS 2024.105.

Fixed

  • Race-condition in AMSJob.run(watch=True) where final logs may not have been forwarded
  • AMSCalculator to work with ase==3.23
  • Molecule to work with networkx>=3

PLAMS 2024.104

21 Oct 13:48

Choose a tag to compare

This release corresponds to AMS 2024.104.

Full Changelog: 2024.103...2024.104

PLAMS 2024.103

09 Oct 11:55

Choose a tag to compare

Overview

This is the first PLAMS release which uses a new versioning scheme to align with AMS versioning and releases.

Going forwards, there will be a PLAMS release for each main AMS release. This release therefore corresponds to AMS 2024.103.

What's Changed

See release notes