[QE-users] Tuning amount of exchange/correlation

Zack Windom zww4855 at gmail.com
Mon Aug 5 20:19:20 CEST 2019


Hi all, 

I am trying to reparameterize an existing functional (say B3LYP) to satisfy a known condition. I see that the variable “exx_fraction” is capable of tuning the amount of exchange (for the B3LYP example); the default being 0.2. I say this, because this variable is used throughout the funct.f90 file in defining the appropriate amount of exchange for B3LYP.

I would like to declare a new variable in the espresso input file for the pw.x executable that accepts a user-defined amount of correlation for the B3LYP example. Obviously, this would require modifying the funct.f90 file. My question, though, is which parser-related file(s) would I need to modify in order for Espresso to recognize this new correlation variable in the input file?

As an example, instead of 0.19*VWN + 0.81*LYP used to define B3LYP, I want to adjust this such that the “new” B3LYP might read:

(1-corr_fraction)*VWN + corr_fraction*LYP

Where corr_fraction is user-defined in the input file pw.x ultimately reads, and this definition is then propagated throughout funct.f90.


Thanks in advance,
Zachary Windom

Graduate Student, Chemical Physics
Bartlett Group, Quantum Theory Project
University of Florida, Gainesville, FL


More information about the users mailing list