Skip to content

Conversation

@calvinp0
Copy link
Member

@calvinp0 calvinp0 commented Jan 6, 2026

RMG-database for AEC has the suffix of years for methods and this can cause issues for ARC when it attempts to find a method/basis if the user does not provide the year. This PR is meant to allow for the following:

  • omit the year and if a non year version is not availble, ARC should report it and not attempt to match latest year. (CBS-QB3 in RMG-database has a 2023 version and a non year version)
  • provide the year in the input.yml for the sp_level and it will then attempt to match that specific year
  • If a year is not available, it will be report
  • If the user writes '23' instead of '2023' it will error.

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds support for optional 4-digit year suffixes to distinguish method variants in the Arkane database (e.g., b97d3 vs b97d32023). The implementation allows users to omit the year (ARC matches the latest available), specify an explicit year, or receive warnings when a requested year is unavailable.

Key changes:

  • Added year parameter to the Level class with validation requiring 4-digit integers
  • Implemented flexible method/basis matching logic with year-aware searching in Arkane database
  • Enhanced error reporting to list available years when a requested year is not found

Reviewed changes

Copilot reviewed 5 out of 5 changed files in this pull request and generated 7 comments.

Show a summary per file
File Description
docs/source/advanced.rst Documents the new year parameter with usage examples
arc/level.py Adds year attribute with 4-digit validation and updates string representations
arc/level_test.py Adds test for year validation (rejects 2-digit, accepts 4-digit)
arc/statmech/arkane.py Core implementation: adds normalization functions, year-aware matching logic, and improved error messages; also adds spinMultiplicity to non-SMILES species template and thread limit environment variables
arc/statmech/arkane_test.py Adds test for year-not-found warning behavior and year in _level_to_str

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants