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

Qm7x dataset #216

Merged
merged 11 commits into from
Mar 31, 2024
Merged

Qm7x dataset #216

merged 11 commits into from
Mar 31, 2024

Conversation

allaffa
Copy link
Collaborator

@allaffa allaffa commented Mar 26, 2024

@frobnitzem
among all the energies that can be retrieved from the QM7x dataset, may you help me identify the one that corresponds to the energy returned by OC2020 and OC2022?

@allaffa allaffa self-assigned this Mar 26, 2024
@frobnitzem
Copy link
Collaborator

frobnitzem commented Mar 26, 2024

@allaffa Comparing energies is complicated because QM methods have many settings which modify their energy function:

  • density functional (e.g. LDA, PBE or PBE0 or HSE06 or B3LYP)
  • pseudopotential (e.g Ultrasoft, Norm-Conserving, or PAW)
  • "U" parameter applied to metal d- or f- electrons
  • basis set / planewave cutoff

And there are 2 different ways to reference energies between different QM methods (to make comparison of the "energy" across methods valid). Both subtract off the energy of all isolated atoms computed with the same QM method. One (simple) way treats isolated atoms as single, uncharged atoms in gas phase. The other (physical) way is to treat isolated atoms as part of their equilibrium material (e.g. N2 gas for nitrogen, solid graphite for carbon, liquid for bromine, etc).

Among the QM7-x properties, the most useful energies for comparison are:

  • 'ePBE0': PBE0 energy [eV] (1)
  • 'eAT': PBE0 atomization energy [eV] (1)

The first one is the total energy output by DFT with the PBE0 functional. The second one is the PBE0 energy after subtracting the energies of the isolated atoms using the first (simple) method. Ideally we should fit that second one.
see atomic energies in Table S3

OpenCatalyst provides "raw DFT" energies output from VASP with DFT+U as well as (since OC22) reference energies using a non-standard version of the second (physical) method, - see also Table 17 on p. 42 of the OC22 paper. However, they don't seem to have included similar references for the slab atoms. The VASP forum notes that the "raw DFT" energies are usually close to atomization energies, but this isn't guaranteed. Calculations on single atoms are difficult with VASP.

So we need to adjust the referenced energies of OC or QM7x to compare. Despite being non-physical, I favor the simple atomization energies because their reference QM calculations are more exact (single atom vs. liquid, for example).

@allaffa
Copy link
Collaborator Author

allaffa commented Mar 29, 2024

@pzhanggit @jychoi-hpc
This is ready for review.

Copy link
Member

@jychoi-hpc jychoi-hpc left a comment

Choose a reason for hiding this comment

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

It looks good to me.

@allaffa allaffa merged commit a1f1c43 into ORNL:main Mar 31, 2024
2 checks passed
@allaffa allaffa deleted the qm7x_dataset branch March 31, 2024 20:08
RylieWeaver pushed a commit to RylieWeaver/HydraGNN that referenced this pull request Oct 17, 2024
* qm7example rebased with updated capabiltiies from the main

* qm7x example updated

* qm7x example updated

* coordinates added in data.x

* black formatting of train.py

* option to normalize energy by number of atoms added

* qm7x example updated with correct variable name

* energy_per_atoms boolean variable added

* write only ADIOS format as default

* qm7 dataset fixed

* black formatting fixed

---------

Co-authored-by: Massimiliano Lupo Pasini <[email protected]>
Co-authored-by: Massimiliano Lupo Pasini <[email protected]>
Co-authored-by: Massimiliano Lupo Pasini <[email protected]>
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.

3 participants