Skip to content

Releases: LopezGroup-ICIQ/care

v0.6.0

05 May 14:00

Choose a tag to compare

v0.6.0 Pre-release
Pre-release

Release v0.6.0: ML Evaluator Optimization & Julia Integration

This CARE release introduces a major optimization and update to the ML evaluator interfaces, streamlines kinetic simulations, and significantly updates core dependencies.

New Features & Enhancements

  • New UMA Interface: Added support for UMA models via the new FairChemV2IntermediateEvaluator interface.
  • Automated Julia Management: Improved integration between Python and Julia for kinetic simulations. Users no longer need to install Julia and its dependencies manually; juliacall now handles the entire setup automatically.
  • Relaxation Guardrails: Implemented guardrails for scenarios where the ML relaxation of adsorbed species leads to intermediate dissociation. If the structure breaks, the system now keeps the lowest-energy configuration after num_configs * patience attempts.
  • Connectivity Tracking: Added a new connectivity boolean key to Intermediate.ads_configs values to explicitly tag the final outcome of the relaxation process in terms of adsorbate connectivity.

Breaking Changes & Renames

  • OCP Evaluator Renamed: To align with the new UMA integration, care.evaluators.OCPIntermediateEvaluator has been renamed to care.evaluators.FairChemV1IntermediateEvaluator. To use FairChem-v1 models, do pip install care-crn[fairchemv1].
  • PET-MAD Evaluator Renamed: The PET-MAD interface has been updated to UPET and renamed to care.evaluators.UPETIntermediateEvaluator. Now you can install UPET models with pip install care-crn[upet].
  • GAME-Net-UQ Optional: Changed GAME-Net-UQ to an optional dependency, aligning it with all other ML energy evaluators. You can install it with pip install care-crn[gamenetuq].

Dependency & Environment Updates

  • Shift to Modular Environments: As we expand our support for various ML potentials, maintaining a single "one-size-fits-all" environment is no longer practical due to strict, conflicting underlying dependencies. We have transitioned to a "one ML model, one environment" philosophy. Users should now create separate environments tailored to the specific ML evaluator they intend to use. You couldd still attempt resolving a unified environment for multiple models at your own discretion, but it is no longer the standard assumption.
  • Bumped DifferentialEquations.jl to v8.0.0 and pinned the version (previously assumed v7.y.z).
  • Bumped NumPy from v1.26.4 to v2.3.5 and adapted the codebase accordingly.
  • Bumped RDKit from v2023.9.6 to v2025.9.1 and adapted the dissociation reaction template.
  • Bumped ASE to v3.26 and adapted energy evaluator interfaces (note: the converged key has been temporarily omitted).
  • Bumped acat to v2.0.3.
  • Bumped mp-api to v0.46.0.
  • Bumped pydot to v4.0.1.
  • Bumped pandas to 2.3.3.

v0.5.0

16 Mar 16:54

Choose a tag to compare

v0.5.0 Pre-release
Pre-release

This release improves some aspects related to visualization and inspection of care.ReactionNetwork instances.

  • care.crn.visualize.write_dotgraph renamed as care.crn.visualize.plot_crn.
  • care.ReactionNetwork.get_reaction_table: now table can be exported as Pandas Dataframe. Renamed column headers.
  • Deleted old modules which have never really be integrated with CARE core functionalities.

v0.4.0

13 Feb 09:14

Choose a tag to compare

v0.4.0 Pre-release
Pre-release

This release 0.4.0 implements the following:

  • Add care.io sub-package containing JSON serializers for ReactionNetwork, ElementaryReaction, Intermediate, and Surface classes. Before, these objects were stored as pickle .pkl files, and any code update would block the loading of the networks created with old code. Now backward-compatibility is ensured, Networks are stored by default as compressed JSON files .json.gz

  • CRN blueprints now are directly defined as care.ReactionNetwork objects. Add is_evaluated property for networks, reactions and intermediates.

  • Improved network visualization function care.crn.visualize.write_dotgraph.

  • Now graph tools care.evaluators.utils depend on NetworkX only, and not anymore on torch-geometric / pytorch.

v0.3.0

05 Dec 15:06

Choose a tag to compare

v0.3.0 Pre-release
Pre-release

This pre-release adds the following improvements/changes:

  1. Automatic evaluation of selectivity, conversion, and yield from kinetic simulations.
  2. Automated Excel report generation of kinetic simulations (see attached example).
  3. Starts polishing the place_adsorbate function.

Minor release 0.2.0

20 Nov 14:52

Choose a tag to compare

Minor release 0.2.0 Pre-release
Pre-release

This minor release adds the following:

  • Extend care.adsorption.place_adsorbate function for targeted placements on user-defined surface sites and adsorbate anchoring atoms. This option is not intended for high-throughput screening.
  • Add the fixed_atoms property to care.Surface. Before, if a surface was created from an user-provided POSCAR with some freezed atoms, the same constraint was not kept after adsorbate placement, but bottom 50% of slab atoms were freezed by default.
  • Enable creation of care.Intermediate instances from user-defined VASP POSCAR files.

v0.1.3 - PyPI packaging fix

06 Nov 17:05

Choose a tag to compare

Pre-release

This bug fix corrects the pynanoflann optional dependency for orb and updates the install instructions in the README.

v0.1.2 - PyPI Packaging Fix

06 Nov 16:19

Choose a tag to compare

Pre-release

This bug fix ensures correct handling of optional pynanoflann dependency for orb models.

v0.1.1 - PyPi Packaging Fix

06 Nov 16:07

Choose a tag to compare

Pre-release

This bug fix ensures PyPI dependency compliance regarding to energydiagram package.

v0.1.0 - Initial Release

06 Nov 15:30

Choose a tag to compare

Pre-release

This is the first public release of care-crn.

Features

  • Automated generation of Chemical Reaction Networks (CRNs) in heterogeneous catalysis for CHON reactions.
  • Energy evaluator interfaces to GAME-Net-UQ and MLIPs: MACE, FAIRChem-v1, PETMAD, Orb-v2, and SevenNet.
  • Mean-field microkinetic simulation solvers via Julia and SciPy.
  • Tutorial notebooks for getting started.