Repository navigation
Standardize on CHGNet-PES-MatPES-*-1M-2026.9 and refresh MatGL recommendations - #53
Merged
bowen-bd merged 4 commits intoOct 11, 2026
Merged
Conversation
…*-1M-2026.9 The model lists agents read (MCP load_model description, environment rules, skill standards, developer guide, site) and the skill recommendations now list the current MatGL checkpoints, CHGNet 1M-2026.9 and TensorNet. CHGNet-MPtrj-2023.12.1 no longer loads in matgl 4, so warnings about MPtrj-trained models cite MACE-MP instead. MatGLWrapper defaults to CHGNet-PES-MatPES-PBE-1M-2026.9, and the CHGNet tests use that checkpoint. The MP2020 example's 'no correction needed' case now uses the current CHGNet; fixes the ml-foundation-potentials link to mat-dft-mixing-functionals. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…M-2026.9 - mat-elemental-energies: new CHGNet PBE/r2SCAN 1M-2026.9 libraries; drop the CHGNet-MPtrj, CHGNet-MatPES-2025.2.10 and other superseded files. - mat-pourbaix-diagram: H2O references for the new CHGNet, example re-run; fix the elemental-energies library path and mp_api EntryID handling. - ml-mlip-benchmark, ml-mlip-speed, ml-mlip-nvalchemi: re-measured with the new CHGNet; outdated model rows, plots and list entries removed. - ml-property-predictor: MatGL path uses a CHGNet backbone; adds the dataset script; model checkpoints are no longer kept in the example. - ml-matgl-finetune: ported train_matgl.py to matgl 4.1 and re-ran the WBM example with the new CHGNet. - mat-sample-pes-by-md, mat-lammps-md: examples and defaults use the new CHGNet (LAMMPS example not re-run). Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…ighted validation CHGNet returns one value per graph with shape [B]; dividing by atom counts of shape [B, 1] broadcast predictions to [B, B], so the training loss and validation MSE/MAE used the wrong quantity for batches with unequal atom counts. Predictions and counts are now 1-D, and validation errors are summed per structure and divided by the number of structures. A failed pretrained-model load now raises instead of falling back to a freshly initialized CHGNet, which cannot be built for intensive targets. Adds a batched-vs-individual regression test and re-runs the bulk-modulus example (validation MAE 20.8 GPa vs a 56.9 GPa mean-value baseline). Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…oint matgl 4.1 already reports Energy_MAE/RMSE per atom, so the history callback's extra division by the mean atom count understated energy errors. The saved checkpoint now stores the potential under model_state_dict, the format MatGLWrapper.load_checkpoint() reads; the example verifies a fresh-process reload reproduces the fine-tuned prediction. WBM example re-run: zero-shot energy MAE 241.3 meV/atom. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Standardizes AtomisticSkills on the current CHGNet checkpoints,
CHGNet-PES-MatPES-PBE-1M-2026.9andCHGNet-PES-MatPES-r2SCAN-1M-2026.9, which are already the matgl 4.1 andmatgl_serverdefaults.CHGNet-MPtrj-2023.12.1-2.7M-PESno longer loads in matgl 4, and its data and mentions are removed. Examples, reference data and docs that used the earlier MatPES checkpoint (2025.2.10) now use 1M-2026.9; the code still accepts the older names.Model lists and recommendations now point to the current MatGL checkpoints (CHGNet 1M-2026.9 and TensorNet). This covers the MCP
load_modeldescription, the environment rules, the skill standards, the developer guide, the site and the skill docs.Changes
MatGLWrapperdefaults toCHGNet-PES-MatPES-PBE-1M-2026.9; the CHGNet tests use it.mat-elemental-energies: new 89-element libraries for both 1M-2026.9 checkpoints, using the library protocol. Neither collapses the O₂ molecular crystal. Superseded library files are removed. The example now compares CHGNet r2SCAN with MP r2SCAN: MAE 38.1 meV/atom.mat-pourbaix-diagram:ml-mlip-benchmark: CHGNet example re-run on the same 100 MP r2SCAN structures. Energy MAE (meV/atom): MACE-MATPES-R2SCAN-0 73.7, CHGNet r2SCAN 1M 77.5, TensorNet r2SCAN 88.3.ml-mlip-nvalchemi: batched vs sequential static inference re-measured for both new checkpoints. ΔF = 0, ΔE ≤ 9.5e-7 eV; speedup 3.4× at N = 5 and 10.7–10.9× at N = 20.ml-mlip-speed: stored benchmark updated, and a measured CHGNet 1M entry added (0.107 ms/atom at 2000 atoms); plots regenerated.ml-property-predictor:ml-matgl-finetune: WBM example re-run with the new CHGNet (10 epochs, frozen backbone). Energy RMSE goes from 382.2 to 328.8 meV/atom, force MAE from 154.6 to 146.3 meV/Å and stress MAE from 4.97 to 3.66 meV/ų; energy MAE rises from 241.3 to 250.6 meV/atom. A fresh-process reload of the saved checkpoint reproduces the fine-tuned prediction.mat-sample-pes-by-md: LiMnO₂ example re-run with the new CHGNet.mat-lammps-md: the input file and run-script default now use the new CHGNet. Not re-run: it needs a MatGL ML-IAP LAMMPS build.mat-dft-mixing-functionals: the "no correction needed" case uses the current CHGNet.ml-foundation-potentialstomat-dft-mixing-functionals.Fixes found while re-running
mat-pourbaix-diagram:calculate_pourbaix.pylooked for elemental references under the pre-renameskills/elemental-energies/path.get_pourbaix_structures.pyfailed on theEntryIDobjects returned by newermp_api.ml-matgl-finetune:train_matgl.pyis ported to matgl 4.1. This covers theMGLDatasetarguments, the device ofelement_refs, memory pinning, andinference_mode=Falsefor force validation.ml-property-predictor:run_matgl.py's reload check read a result key that does not exist.ml-matgl-finetunemetrics and checkpoint:model_state_dict, the keyMatGLWrapper.load_checkpoint()reads.Testing
venv/run cpu python -m pytest tests/test_*.py -q: 1082 passed, 5 skipped.venv/run mlip python -m pytest tests/matgl -q(CPU): 47 passed, including the new batching test.tools/check_skill_commands.pypass.🤖 Generated with Claude Code