Closed g7dhaliwal closed 5 years ago
In recommend that that include an isolated atom in your training data (one each for the two species), and yes this is in vacuum, in as large a cell as you can afford. In addition, don't specify e0 on the command line and don't subtract anything from the QE total energies. The gap code will do the right subtraction.
-- Gábor
On 18 Sep 2019, at 22:12, g7dhaliwal notifications@github.com wrote:
Hi,
I am training GAP IP for NiAl system and has question about E0 parameter and isolated atoms energy. The dataset that I generated does not have isolated atoms. The E0 parameter showing in xml file for both the species is equal to -4.0446250187661592, which I guess is average of the energies of all xyz configurations considered in training set.
I am bit confused about the role of E0. How does it affect the energy calculations? Is energy equation something like E_str = E_GAP + n*E0, where E_str is the energy of a crystal structure with n as number of atoms.
I am using quantum espresso for data generation and computing the energy of the structure with n atoms using following equation (can be modified for more than one atomic species) E = E_DFT - n*E_iso_vac.
E_DFT is QE output in Ry and E_iso_vac is the energy of isolated atom in vacuum (single atom in large simulation cell). On converting from Ry to eV, I input 'E' from above equation as energy into GAP. Is it normal to train GAP this way?
I am assuming isolated atoms that GAP is expecting should be with respect to simulation cell that corresponds to unit cell of the element considered and not vacuum. Will really appreciate if you can confirm if that's the case.
Thanks!
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or mute the thread.
Hi Gabor,
Thanks for your response. I will follow your suggestion.
The isolated atom energy for Al, w.r.t PBE pseudopotential is coming out to be -39.24263781 Ry (-533.92 eV ). Should I expect this value as E0 in the gp.xml file? To further validate IP during MD simulations, won't cohesive energy of two atom system, E_coh = (E_2atoms - 2*E0)/2 ? I assume E_coh will be GAP output.
Regards, Gurjot
I think GAP output for two atoms system should be E_atoms - 2*E0 and not the one I wrote in last comment. Can you please confirm if thats the case as it will help me debug the IP during MD runs. E0 can be any value that QE produces for isolated atoms.
Don't forget to convert all your energies to eV and all your lengths to Å (and forces to eV/Å). Then, if you include the isolated atom in the training data, and don't specify any e0 by hand, you will indeed see the isolated atom energy in the xml file.
When GAP predicts energies, it will add back the E0, so what you will see as total energies should be compared with the DFT energies directly.
-- Gábor
On 19 Sep 2019, at 15:13, g7dhaliwal notifications@github.com wrote:
Hi Gabor,
Thanks for your response. I will follow your suggestion.
The isolated atom energy for Al, w.r.t PBE pseudopotential is coming out to be -39.24263781 Ry ( ). Should I expect this value as E0 in the gp.xml file? To further validate IP during MD simulations, won't half of this value be the cohesive energy of two atom system, E_coh = (E_2atoms - 2*E0)/2 ? I assume E_coh will be GAP output and I am trying to validate it using existing GAP potentials.
Regards, Gurjot
— You are receiving this because you commented. Reply to this email directly, view it on GitHub, or mute the thread.
Cool. I understand that GAP predicts energy with isolated atoms energy added to them. And these values should match DFT values of the strucuture.
When we run MD simulation with lammps, won't GAP output need to be reduced by isolated atoms energies?
Otherwise predictions might be different than other classical IPs and these predictions will be highly dependent on the pseudopotential as well. As in above example PAW predicts isolated Al energy as -533.92 eV while US predicts the same energy to be as something like -76.932.
Cool. I understand that GAP predicts energy with isolated atoms energy added to them. And these values should match DFT values of the strucuture.
When we run MD simulation with lammps, won't GAP output need to be reduced by isolated atoms energies?
Not sure what you mean by "reduced". Do you mean that isolated atom energies should be subtracted? I don't see why. Ab initio MD doesn't subtract them...
Otherwise predictions might be different than other classical IPs
Not sure what to make of this comment. Classical IPs are generally less accurate. The goal of GAP is to reproduce the ab initio energies and forces as closely as possible.
and these predictions will be highly dependent on the pseudopotential as well.
But of course. Ab initio MD also depends on the pseudopotential as well. And yes, the absolute energy levels will be highly dependent on the pseudopotential. So what? If your pseudopotentials we good, the forces (and therefore MD trajectories and all observables) should be largely independent of the pseudopotential - the difference is just a constant shift in energy.
As in above example PAW predicts isolated Al energy as -533.92 eV while US predicts the same energy to be as something like -76.932.
And a GAP trained to PAW DFT data will be shifted in its energy from one trained to US data. MAke sure your training data is consistent, using the same pseudopotential for every configuration.
— You are receiving this because you commented. Reply to this email directly, view it on GitHub, or mute the thread.
Thanks a lot for your response. Let me retrain the gap model based on your suggestions and I will update you if I have more questions.
“When we run MD simulation with lammps, won't GAP output need to be reduced by isolated atoms energies?” Yes I meant subtracting the isolated atoms energy. I think,and I can be wrong, energy from quip/gap that is returned to lammps is potential energy of the structure and not the absolute dft/ aimd energy
“When we run MD simulation with lammps, won't GAP output need to be reduced by isolated atoms energies?” Yes I meant subtracting the isolated atoms energy. I think,and I can be wrong, energy from quip/gap that is returned to lammps is potential energy of the structure and not the absolute dft/ aimd energy
I don't know what you mean by "energy of the structure". It should be a close approximation of what AIMD should give it you could run it.
can we close this now?
Hi,
Deep apologies for this late reply.
Let me explain my confusion using Diamond dataset from libatoms.org. I ran a simple calculation in nve ensemble for 10 timesteps using airebo and GAP potential (downloaded from libatoms). The atomic positions are from the downloaded data corresponding to 8 atoms. Below are the outputs from lammps using airebo and GAP potential.
1.) Using airebo
Step PotEng KinEng TotEng Temp Press Density Lx Ly Lz 0 -58.984954 9.0482101e-05 -58.984863 0.1 -155274.17 3.3792001 3.64 3.6 3.6 1 -58.990864 0.0059853111 -58.984879 6.6149117 -155570.14 3.3792001 3.64 3.6 3.6
2.) Using GAP 10 -1247.5004 9.0482101e-05 -1247.5003 0.1 2.048686 3.3792001 3.64 3.6 3.6
So, potential energy of this 8 atom system using airebo is -58.99 eV and using GAP it is -1247.5 eV. I checked the input file used to train GAP potential and AIMD/DFT value for this structure is -1264.726377. So GAP is predicting close to AIMD value.
If I try to predict cohesive energy using the above values, for airebo it comes out to be -7.37375 eV (-58.99 /8 ). For GAP, I need to know the isolated atoms energy and proper relationship between DFT/AIMD/GAP output and this isolated atom's energy. Only with access of this information, we can compare GAP potentials with classical IPs.
I am seeking this relationship between iso atom energy and DFT that GAP uses so that I can make proper comparison with the classical IPs for the system of interest.
Thanks
How would you compute the cohesive energy with DFT? You would take the energy of the diamond structure and subtract Nx the energy of the isolated atom (computed with DFT). Just do the same with GAP.
-- Gábor
On 28 Oct 2019, at 16:16, g7dhaliwal notifications@github.com wrote:
Hi,
Deep apologies for this late reply.
Let me explain my confusion using Diamond dataset from libatoms.org. I ran a simple calculation in nve ensemble for 10 timesteps using airebo and GAP potential (downloaded from libatoms). Below are the outputs from lammps
1.) Using airebo
Step PotEng KinEng TotEng Temp Press Density Lx Ly Lz 0 -58.984954 9.0482101e-05 -58.984863 0.1 -155274.17 3.3792001 3.64 3.6 3.6 1 -58.990864 0.0059853111 -58.984879 6.6149117 -155570.14 3.3792001 3.64 3.6 3.6
2.) Using GAP 10 -1247.5004 9.0482101e-05 -1247.5003 0.1 2.048686 3.3792001 3.64 3.6 3.6
So, potential energy of this 8 atom system using airebo is -58.99 eV and using GAP it is -1247.5 eV. I checked the input file used to train GAP potential and AIMD/DFT value for this structure is -1264.726377. So GAP is predicting close to AIMD value.
If I try to predict cohesive energy using the above values, for airebo it comes out to be -7.37375 eV (-58.99 /8 ). For GAP, I need to know the isolated atoms energy and proper relationship between DFT/AIMD/GAP output and this isolated atom's energy. Only with access of this information, we can compare GAP potentials with classical IPs.
I am seeking this relationship between iso atom energy and DFT that GAP uses so that I can make proper comparison with the classical IPs for the system of interest.
Thanks
— You are receiving this because you commented. Reply to this email directly, view it on GitHub, or unsubscribe.
I got the E0 value from the potential file as -155.99044470996076939 eV. Subtracting 8X times of it from GAP led to -16.8028193203138. Dividing by 8, cohesive energy comes out to be around -2.4 eV. I visualized the strucutre using Ovito and it seems a valid diamond structure with lattice parameter around 2.46 A.
This low value of -2.4 eV does not seem right. Any thoughts?
what do you get when you compute the isolated atom with GAP? this is what I suggested.
-- Gábor
On 28 Oct 2019, at 21:20, g7dhaliwal notifications@github.com wrote:
I got the E0 value from the potential file as -155.99044470996076939 eV. Subtracting 8X times of it from GAP led to -16.8028193203138. Dividing by 8, cohesive energy comes out to be around -2.4 eV. I visualized the strucutre using Ovito and it seems a valid diamond structure with lattice parameter around 2.46 A.
This low value of -2.4 eV does not seem right. Any thoughts?
— You are receiving this because you commented. Reply to this email directly, view it on GitHub, or unsubscribe.
also, I don't remember if that dataset includes the isolated atom, it is quite an old one. if it does not, then the prediction for the cohesive energy will not be good at all. play with the much more recent aC potential (also available from the same site) or the most recent Si potential (from the PRX paper in 2018, not the 2010 PRL). both these have the isolated atom correct, and therefore cohesive energies correct
Thanks for your valuable comments. Closing the issue
Hi,
I am training GAP IP for NiAl system and has question about E0 parameter and isolated atoms energy. The dataset that I generated does not have isolated atoms. The E0 parameter showing in xml file for both the species is equal to -4.0446250187661592, which I guess is average of the energies of all xyz configurations considered in training set.
I am bit confused about the role of E0. How does it affect the energy calculations? Is energy equation something like E_str = E_GAP + n*E0, where E_str is the energy of a crystal structure with n as number of atoms.
I am using quantum espresso for data generation and computing the energy of the structure with n atoms using following equation (can be modified for more than one atomic species) E = E_DFT - n*E_iso_vac.
E_DFT is QE output in Ry and E_iso_vac is the energy of isolated atom in vacuum (single atom in large simulation cell). On converting from Ry to eV, I input 'E' from above equation as energy into GAP. Is it normal to train GAP this way?
I am assuming isolated atoms that GAP is expecting should be with respect to simulation cell that corresponds to unit cell of the element considered and not vacuum. Will really appreciate if you can confirm if that's the case.
Thanks!