-
Notifications
You must be signed in to change notification settings - Fork 97
[WIP] State refactor #1142
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
base: master
Are you sure you want to change the base?
[WIP] State refactor #1142
Conversation
|
For exact exchange, would the psi go into the densities as well? |
|
We discussed this with @mfherbst. Ideally the codensities would go there, but they're probably too expensive to store. Maybe we could do a kind of lazy structure... |
|
Actually we probably should think about this a bit more because it violates the assumption that the "direct arrow" is quadratic |
|
I was thinking we might keep that quadratic assumption for direct arrows and instead go for an indirect arrow: orbitals -> densities.orbitals -> E_x_exact (with the first map being the identity) It should allow for initial guessing, mixing, preconditioning, and saving (expensive but necessary for exact exchange?) of the orbitals. But I don't know if it's the best fit. For example for response you'd get both an orbital change hiding as a density change and a "normal" orbital change from the response solver. |
|
Actually I'm not even sure about codensities I think I was wrong there. Having orbitals in densities kind of defeats the whole purpose of the thing. We should maybe just drop the quadratic assumption, or have three kinds of terms, quadraticterm, densitiesterm and "misc" terms. |
|
I think hybrids are sufficiently different (and rate limiting, since they're the most expensive part by far) that they have to be special-cased anyway |
d382a9f to
9c9428f
Compare
|
Alright, pushed a big update! It's still quite messy and a lot of functionality is likely broken, but at least a basic SCF works for silicon, for Hubbard and for meta-GGAs 😉 Note 1: Having a Hubbard potential is quite unusual. |
Really? It should be something like a Fock matrix.
That's a nice side effect! |
Here it's just But it's probably the right expression if we want to mix the hubbard_n (an interesting direction!) |
|
Yeah I want to look at hubbard mixing more closely, I don't know what people do currently. |
I agree, we briefly discussed this here, too. update: see comment by @jaemolihm below ! |
|
Hi, Quantum ESPRESSO does mix the Hubbard occupations. If I understand correctly, it essentially concatenates the charge density at each real-space grid and the Hubbard occupations (in a You can take a look at https://gitlab.com/QEF/q-e/-/blob/master/PW/src/mix_rho.f90 and search for lda_plus_u. But I am not aware of any rigorous analysis of the convergence or stability. |
|
Thanks! Do you know if they precondition it in any way? |
|
It seems preconditioning is applied only to the charge density, but not to the Hubbard occupation. |
|
A related question is mixing and preconditioning for meta-GGAs. (May or may not be more relevant than DFT+U.) I think that QE might be missing meta-GGA DFPT, for example. (DFPT, preconditioning, convergence analysis... all are related :)) |
No description provided.