Skip to content

Adding SBH17 surface barriers benchmark#375

Open
gkleryoung wants to merge 1 commit intoddmms:mainfrom
gkleryoung:sbh17
Open

Adding SBH17 surface barriers benchmark#375
gkleryoung wants to merge 1 commit intoddmms:mainfrom
gkleryoung:sbh17

Conversation

@gkleryoung
Copy link

Pre-review checklist for PR author

PR author must check the checkboxes below when creating the PR.

Summary

Scripts to calculate activation barriers to dissociative chemisorption from the gas phase, for 16 adsorbate-surface combinations, and compare to PBE (dispersionless) datapoints from published SBH17 dataset. This simply requires 2 single-point calculations, as E(barrier) = E(transition state) - E(gas phase) , and the results can be put on a scatter plot.

Linked issue

Resolves #311

Progress

  • Calculations
  • Analysis
  • Application
  • Documentation

Testing

Models tested:
mace-matpes-r2scan
mace-mp-0a
mace-mp-0b3
mace-mpa-0
mace-omat-0
orb-v3-consv-inf-omat
pet-mad

New decorators/callbacks

No

@gkleryoung gkleryoung changed the title Added SBH17 surface barriers benchmark Adding SBH17 surface barriers benchmark Feb 18, 2026
@ElliottKasoar ElliottKasoar added the new benchmark Proposals and suggestions for new benchmarks label Feb 18, 2026
@joehart2001
Copy link
Collaborator

looks really good! @gkleryoung would you be able to send us the input data for the calculation so we can upload it?


def get_system_names() -> list[str]:
"""
Get list of X23 system names.
Copy link
Collaborator

Choose a reason for hiding this comment

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

Suggested change
Get list of X23 system names.
Get list of SBH17 system names.

Comment on lines +38 to +51
calc = model.get_calculator()

# Do not want D3 as references here are dispersionless PBE
# calc = model.add_d3_calculator(calc)

# Download SBH17 dataset
# sbh17_dir = (
# download_s3_data(
# key="inputs/surfaces/sbh17/sbh17.zip",
# filename="sbh17.zip",
# )
# / "sbh17"
# )
sbh17_dir=Path("/home/gk504/localCodeFolder/proj-other/ml-peg-contrib/sbh17")
Copy link
Collaborator

Choose a reason for hiding this comment

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

Suggested change
calc = model.get_calculator()
# Do not want D3 as references here are dispersionless PBE
# calc = model.add_d3_calculator(calc)
# Download SBH17 dataset
# sbh17_dir = (
# download_s3_data(
# key="inputs/surfaces/sbh17/sbh17.zip",
# filename="sbh17.zip",
# )
# / "sbh17"
# )
sbh17_dir=Path("/home/gk504/localCodeFolder/proj-other/ml-peg-contrib/sbh17")
# Do not want D3 as references here are dispersionless PBE
calc = model.get_calculator()
# Download SBH17 dataset
sbh17_dir = (
download_s3_data(
key="inputs/surfaces/SBH17/SBH17.zip",
filename="sbh17.zip",
)
/ "sbh17"
)

This should work now the data is uploaded

with open(sbh17_dir / "list") as f:
systems = f.read().splitlines()

for system in systems:
Copy link
Collaborator

Choose a reason for hiding this comment

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

Could you add tqdm around this so we can get a progress bar?

Copy link
Collaborator

@ElliottKasoar ElliottKasoar left a comment

Choose a reason for hiding this comment

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

Thanks for this!

Can you have a go at applying the pre-commit (see https://ddmms.github.io/ml-peg/developer_guide/get_started.html#automatic-coding-style-check (you can also run this outside of making new commits e.g. pre-commit run --all-files), just to make sure all of our tests pass

Comment on lines +149 to +150
SBH17
================================
Copy link
Collaborator

Choose a reason for hiding this comment

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

Suggested change
SBH17
================================
SBH17
=====

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

Labels

new benchmark Proposals and suggestions for new benchmarks

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Surface barrier heights

3 participants

Comments