8000 GitHub - cmc-ucl/ML_POT
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

cmc-ucl/ML_POT

Repository files navigation

GULP-GAP interface

version 2.0.2

✅ Aug 2022: v1.0.0 preparing trainig data using GULP
✅ Aug 2022: v1.1.0 GAP training
✅ Sep 2022: v1.2.0 dimer curve (Al-F pairwise interaction energy vs interatomic distance)
✅ Oct 2022: v1.3.0 separate the prep, train, vis scripts
✅ Oct 2022: v1.3.1 vis script: RDF
✅ Nov 2022: v1.3.2 vis script: histogram instead of RDF
✅ Dec 2022: v1.4.0 prep: degeracy filter
✅ Dec 2022: v1.4.1 prep: symmetric (duplicate) configuration filter
✅ Dec 2022: v1.4.2 prep: extremely short interatomic dist filter [degeneracyFilter branch]

✅ Jan 2023: v2.0.0 Further modulised scripts (version 2)
✅ Feb 2023: v2.0.1 Stochastic approach of atomic position displacement, (removed: poor degeneracy filter, energy filter)
(at the moment you have to manually turn-on/off the stochastic function)
✅ Mar 2023: v2.0.2 Automatically take average bond distance of cation-cation and anion-anion for RMSE calculation in the ±0.5 angstrom region and plot vertical line at the average bond distance


linke to the image alt text alt text


How to use the code:
python GULP_GAP.py '{eigvec 1} {eigvec 2}...{eigvec n}' {step size for the lambda} {from what IP rank structure} {to what IP rank structure} {n or y (whether including the breathing config or not)} {GAP cutoff parameter} {GAP n_sparce parameter} {degeneracy/duplicate filter}
Example: python GULP_GAP.py '7 9 12' 10 1 10 n 3.0 100 y

first_GAP.py
Preparing IP structures (IP optimised structures, breathing configurations, IP optimised structures + (eigenvector*λ).
It will consider degenerate frequencies to select only one frequency which is to avoid the overfitting the potential energy landscape.
(It will select first frequency among the degenerate frequencies for the training. For example, 7 and 8 are degenerate, then it will use 7th frequency(eigenvalue/eigenvector))
N.B. At the moment 100 % of dataset will be distributed as a training dataset if you want to distribute some to validation/test set please change from line 133.

second_GAP.py
Fitting the GAP potential on the prepared GULP training data

third.py
Visualise the potential from QUIP output using plotly; potential energy VS interatomic potential (it shows the ideal potentials that we want to reproduce, GAP potentials (cation-anion and anion-anion), RDF of the training data configurations, transparent-boxed interatomic distance region (green/red) that covered by the training data (cation-anion/anion-anion)



*The script will be further modulised for numerous purpose. If you have any questions about the project please ask me*

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
0