Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MALA for multiple elements #606

Draft
wants to merge 17 commits into
base: develop
Choose a base branch
from

Conversation

RandomDefaultUser
Copy link
Member

@RandomDefaultUser RandomDefaultUser commented Nov 15, 2024

While some work in that respect has already been performed at the Sandia National Labs, MALA does not have full multi-element capabilities yet. This PR aims to make multi-element systems fully available within MALA.
This includes:

  • Two elements (example: Barium Oxide)
    • Bispectrum descriptor calculation (serial)
    • Bispectrum descriptor calculation (parallel/GPU)
    • Total energy evaluation
    • Total energy evaluation (using the atomic density formula)
    • Testing the full workflow (only that it runs, not that the predictions are good)
    • Implement a way to adjust the weights through the regular MALA interface
      • Make a plan to enable descriptor calculation on the fly for (bispectrum) descriptor optimization, because that could become pretty relevant
    • Confirming that the models are also accurate
  • More then two elements (example: Barium Nitrate)
    • Bispectrum descriptor calculation (serial)
    • Bispectrum descriptor calculation (parallel/GPU)
    • Total energy evaluation
    • Total energy evaluation (using the atomic density formula)
    • Testing the full workflow (only that it runs, not that the predictions are good)
    • Confirming that the models are also accurate

While not the same issue in and of itself, it would be prudent to also tackle core electrons/"isolated" electronic levels in the same PR. I.e., if one has a system with, e.g., electronic levels located at -14 to -12 eV (core electrons) and then the next level is at, e.g., -1 to 0 eV, than by default the LDOS contains a lot of zeros. This can be alleviated by

  • Implement an LDOS cutting that cuts out zeros in the middle of the LDOS
  • Test that the entire worklfow runs with that

@RandomDefaultUser RandomDefaultUser marked this pull request as draft November 15, 2024 10:18
@RandomDefaultUser
Copy link
Member Author

I just realized that the TEM will work by default, since there is only one pseudopotential path anyway. The atomic density/Gaussian equation of course has to still be tackled.

@RandomDefaultUser
Copy link
Member Author

I confirmed basic functionality for the two element case. The code changes so far have been minimal, but the accuracy is not yet great. That could just be because I am using a minimal example (https://github.com/mala-project/test-data/tree/multielement, Barium Oxide unit cell), or because the bispectrum descriptors need tweaking. I will investigate this further and look into the three element case.

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.

1 participant