QMC energies higher than DFT?
QMC energies higher than DFT?
Starting from Hartree-Fock, I always obtain lower energies in QMC. But I have one calculation starting from DFT (ROPBEPBE from Gaussian), where the VMC energies are higher than the DFT one. Is it a possible situation, or I have everything completely wrong (i get population explosions in DMC, so it is probably an indication that something is wrong).
-
- Posts: 239
- Joined: Thu May 30, 2013 11:03 pm
- Location: Florence
- Contact:
Re: QMC energies higher than DFT?
Hello varelse,
As you know, Hartree-Fock doesn't attempt to compute the true energy - just the lowest energy consistent with the assumption of a single determinant wave function, which is always higher than the true (non-relativistic) energy unless you're talking about a hydrogen atom. The difference between the two is defined to be the correlation energy. This single-determinant form of many-body wave function does imply that same-spin electrons are correlated (they 'keep out of each other's way') and the lowering in energy from this effect relative to the assumption of a Hartree product wave function (truly independent electrons) is the exchange energy. If you use an approximate basis set, the energy will be higher than the Hartree-Fock energy in the infinite basis limit. Improvements in the basis will lower the energy. The method is therefore variational.
Both DFT and QMC are trying to compute the true (non-relativistic) energy including both exchange and correlation, and you would expect this to be lower than the Hartree-Fock energy, as you have seen.
For VMC and DMC the variational principle holds for the ground-state energy (to within statistical error bars).
If the exact exchange-correlation functional were known, then the DFT method would also be variational. However, it isn't and one must use an approximate functional, like LDA or PBE or whatever. This means that in principle the energy you get out of a real DFT calculation could be lower than the true ground-state energy because of the mathematical errors in the functional i.e. it isn't truly variational.
So the answer to your question is yes, the DFT energy could in principle be lower than the energy you get out of a DMC calculation, and certainly lower than the energy from a VMC calculation (which is usually still some way above the true energy and the DMC energy). In some sense this is because in QMC you are trying to find the solution to the Schroedinger equation, and in DFT you are trying to find the solution to a different equation whose mathematical form is not known exactly.
Best wishes,
Mike
As you know, Hartree-Fock doesn't attempt to compute the true energy - just the lowest energy consistent with the assumption of a single determinant wave function, which is always higher than the true (non-relativistic) energy unless you're talking about a hydrogen atom. The difference between the two is defined to be the correlation energy. This single-determinant form of many-body wave function does imply that same-spin electrons are correlated (they 'keep out of each other's way') and the lowering in energy from this effect relative to the assumption of a Hartree product wave function (truly independent electrons) is the exchange energy. If you use an approximate basis set, the energy will be higher than the Hartree-Fock energy in the infinite basis limit. Improvements in the basis will lower the energy. The method is therefore variational.
Both DFT and QMC are trying to compute the true (non-relativistic) energy including both exchange and correlation, and you would expect this to be lower than the Hartree-Fock energy, as you have seen.
For VMC and DMC the variational principle holds for the ground-state energy (to within statistical error bars).
If the exact exchange-correlation functional were known, then the DFT method would also be variational. However, it isn't and one must use an approximate functional, like LDA or PBE or whatever. This means that in principle the energy you get out of a real DFT calculation could be lower than the true ground-state energy because of the mathematical errors in the functional i.e. it isn't truly variational.
So the answer to your question is yes, the DFT energy could in principle be lower than the energy you get out of a DMC calculation, and certainly lower than the energy from a VMC calculation (which is usually still some way above the true energy and the DMC energy). In some sense this is because in QMC you are trying to find the solution to the Schroedinger equation, and in DFT you are trying to find the solution to a different equation whose mathematical form is not known exactly.
Best wishes,
Mike
-
- Posts: 239
- Joined: Thu May 30, 2013 11:03 pm
- Location: Florence
- Contact:
Re: QMC energies higher than DFT?
And, I forgot to mention - if you get population explosions in DMC, then make the timestep dtdmc smaller (having first made sure the Jastrow optimization was done properly and gives sensible answers).
If explosions occur very frequently, you can use the catastophe recovery facility enabled via the dmc_trip_weight keyword (Type 'casinohelp dmc_trip_weight' to see what it does).
Cheers,
Mike
If explosions occur very frequently, you can use the catastophe recovery facility enabled via the dmc_trip_weight keyword (Type 'casinohelp dmc_trip_weight' to see what it does).
Cheers,
Mike
Re: QMC energies higher than DFT?
Thank You. With smaller timestep it is working. The VMC energies seem reasonable, and the process of optimization also led through sensible energies. BTW, I found that there is a parameter jastrow_plot, which may help in finding whether Jastrow is reasonable, but how to use it? (especially, how to tell Casino the spins of particles)?
And, also BTW, how serious is the warning "bad reblock convergence" in the case of DMC?
And, also BTW, how serious is the warning "bad reblock convergence" in the case of DMC?
-
- Posts: 117
- Joined: Fri May 31, 2013 10:42 am
- Location: Lancaster
- Contact:
Re: QMC energies higher than DFT?
Dear Varelse,
Type "casinohelp jastrow_plot" to see the format of the JASTROW_PLOT block. Use e.g.
%block jastrow_plot
1
1
2
0 0 0
1 0 0
2 0 0
%endblock jastrow_plot
to plot u(r) for antiparallel-spin electrons, chi(r) for spin-up electrons and f with one electron at (0,0,0) and the other on the line (2,0,0)+t(1,0,0).
The two-body term u(r) should increase monotonically to zero. (If you have a p term, u(r)+p(r) should increase monotonically to zero.) If it doesn't do this then you are probably heading for trouble in DMC.
"Bad reblock convergence" basically means that you don't have enough data to work out reliable error bars.
Best wishes,
Neil.
Type "casinohelp jastrow_plot" to see the format of the JASTROW_PLOT block. Use e.g.
%block jastrow_plot
1
1
2
0 0 0
1 0 0
2 0 0
%endblock jastrow_plot
to plot u(r) for antiparallel-spin electrons, chi(r) for spin-up electrons and f with one electron at (0,0,0) and the other on the line (2,0,0)+t(1,0,0).
The two-body term u(r) should increase monotonically to zero. (If you have a p term, u(r)+p(r) should increase monotonically to zero.) If it doesn't do this then you are probably heading for trouble in DMC.
"Bad reblock convergence" basically means that you don't have enough data to work out reliable error bars.
Best wishes,
Neil.
-
- Posts: 239
- Joined: Thu May 30, 2013 11:03 pm
- Location: Florence
- Contact:
Re: QMC energies higher than DFT?
> BTW, I found that there is a parameter jastrow_plot, which may help in finding whether Jastrow is reasonable, but how to use it? (especially,
> how to tell Casino the spins of particles)?
Typing 'casinohelp jastrow_plot' will tell you the syntax of the input block, including the particle spins.
> And, also BTW, how serious is the warning "bad reblock convergence" in the case of DMC?
The warning is sometimes a little over-hysterical but it's trying to imply that you haven't accumulated enough data to calculate the error bars accurately. If you want to check then run the reblock utility on the dmc.hist file. After it's finished there will be a file 'reblock.plot' in the same directory, which can be visualized by typing 'plot_reblock' (assuming you have xmgrace installed). If the plot of error bar versus reblock tranformation number comes to a sort of plateau like the one on p.16 of the manual (linked top left) then the reblocked error bars are accurate. If not, run the DMC simulation for longer (and the warning about bad reblock convergence will then probably go away). Note that you can continue the DMC simulation by reading the config.out file (renamed to config.in) from your initial run: set runtype=dmc_stats and newrun=F in input.
Best wishes,
Mike
[EDIT: I see Neil and I are falling over each other in our haste to answer your question. Do you know any authors of other codes that are so helpful..? (I exclude Lazy Pablo from this; he hasn't been seen on these forums since we started a few weeks back..
) ]
> how to tell Casino the spins of particles)?
Typing 'casinohelp jastrow_plot' will tell you the syntax of the input block, including the particle spins.
> And, also BTW, how serious is the warning "bad reblock convergence" in the case of DMC?
The warning is sometimes a little over-hysterical but it's trying to imply that you haven't accumulated enough data to calculate the error bars accurately. If you want to check then run the reblock utility on the dmc.hist file. After it's finished there will be a file 'reblock.plot' in the same directory, which can be visualized by typing 'plot_reblock' (assuming you have xmgrace installed). If the plot of error bar versus reblock tranformation number comes to a sort of plateau like the one on p.16 of the manual (linked top left) then the reblocked error bars are accurate. If not, run the DMC simulation for longer (and the warning about bad reblock convergence will then probably go away). Note that you can continue the DMC simulation by reading the config.out file (renamed to config.in) from your initial run: set runtype=dmc_stats and newrun=F in input.
Best wishes,
Mike
[EDIT: I see Neil and I are falling over each other in our haste to answer your question. Do you know any authors of other codes that are so helpful..? (I exclude Lazy Pablo from this; he hasn't been seen on these forums since we started a few weeks back..

Re: QMC energies higher than DFT?
Ok, thanks. I used casinohelp, but it was saying LINE 2: "spin of particle i;", so I tried "up", "alpha", and "0.5".
And, well, the u term is not increasing monotonically to zero, it has a slight decrease at longer distances.
(I don't know many other authors of other codes. but certainly You are doing a great job)
And, well, the u term is not increasing monotonically to zero, it has a slight decrease at longer distances.
(I don't know many other authors of other codes. but certainly You are doing a great job)
-
- Posts: 239
- Joined: Thu May 30, 2013 11:03 pm
- Location: Florence
- Contact:
Re: QMC energies higher than DFT?
Good point. I'll adjust the documentation so that it's clearer how to specify spin.
M.
M.
Re: QMC energies higher than DFT?
And what should I do for the non-monotonic u? Try another optimization method/different expansion order etc?
-
- Posts: 117
- Joined: Fri May 31, 2013 10:42 am
- Location: Lancaster
- Contact:
Re: QMC energies higher than DFT?
If the optimisation looked fine in other regards then I would simply continue the optimisation with more configurations.
Best wishes,
Neil.
Best wishes,
Neil.