[QE-developers] New correlation functional

Fabrizio Ferrari Ruffino faferrar at sissa.it
Thu Apr 27 11:24:59 CEST 2023


Hi Sam,
interesting. Does your functional depend on parameters that you want to set directly from the QE input? Does it depend on external parameters that are 'scf-iteration' dependent? (sorry but at the moment I have no time to go deeper by myself).
I will give you the steps to follow in the simplest case, e.g. no dependence on external parameters. If you have any, just let us know here and I will provide you the additional infos.
So in XClib:
- go to qe_dft_list.f90, change the parameter ncc from 14 to 15, then add a functional label to the array 'dft_LDAc_name' in the 15th position;
- go to qe_funct_corr_lda_lsda.f90 and add your LDA subroutine that gives the energy and potential for a given density point (please don't miss the directive !$acc routine seq needed to enable GPU acceleration). You can put there the LSDA routine as well;
- go to qe_drivers_lda_lsda.f90 and add the calls to your routines both in the xc_lda and xc_lsda drivers in the correlation blocks (the case index must be the last one, so 15);
At this point you should be already able to use your functional with the 'composite' notation. For example if your functional is called ABC, a Slater plus ABC could be put in the input as: input_dft='SLA ABC', or, in the index notation, input_dft='XC-001i-015i'.
You can also add a 'full dft' name in the QE list as combination of various terms including yours. To do this just go to qe_dft_list.f90 and add the index combination you desire and the new dft name in the 'Full DFTs' list, by following the present scheme.
You should also update the 'references' list in the qe_dft_refs.f90 file, again, by following the present scheme.

Cheers,
Fabrizio

CNR-IOM
________________________________
From: developers <developers-bounces at lists.quantum-espresso.org> on behalf of Sam Azadi <sam.azadi at physics.ox.ac.uk>
Sent: Thursday, April 20, 2023 11:10 AM
To: developers at lists.quantum-espresso.org <developers at lists.quantum-espresso.org>
Subject: [QE-developers] New correlation functional


Dear developers,



I have introduced a new LDA correlation functional satisfying the exact asymptotic behaviour at high density:

https://journals.aps.org/prb/abstract/10.1103/PhysRevB.107.L121105



I’d like to test the parameterisation on real materials under pressure.

Would you please guide me to implement the functional in the developer version of QE?

Would it be enough to just add a subroutine to “XClib/qe_funct_corr_lda_lsda.f90” ?



Best wishes,

--

Sam Azadi

University of Oxford




-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.quantum-espresso.org/pipermail/developers/attachments/20230427/69f4a8f0/attachment.html>


More information about the developers mailing list