README
Local-density approximation exchange-correlation (XC) free-energy functional
Univ. Florida OFDFT group
Last revised: 17 Jun 2015 (v1c)
I. Description
==============
This package provides Fortran 90 subroutines to calculate the local
spin-density approximation XC free-energy per particle, its functional
derivative, and the corresponding XC internal energy per particle for
spin-unpolarized and polarized cases. NOTE! Intermediate polarizations
(given by the interpolation function in Ref. [1]) currently are NOT coded.
Authors: Valentin V. Karasiev ,Travis Sjostrom,
James Dufty, and S. B. Trickey.
Licensure: GNU GPL
II. Main references
===================
[1] "Accurate Homogeneous Electron Gas Exchange-Correlation
Free Energy for Local Spin-Density Calculations",
Valentin V. Karasiev, Travis Sjostrom, James Dufty,
and S. B. Trickey, Physical Review Letters, 112, 076403 (2014).
[2] "Finite-temperature Orbital-free DFT Molecular Dynamics: Coupling
Profess and Quantum Espresso"
V.V. Karasiev, T. Sjostrom, and S.B. Trickey, Computer Physics
Communications 185, 3240 (2014).
Remark: the software distributed here is substantially the same as the
LSDA XC free-energy software contained within the larger package described
in Ref. [2]
III. Distribution and File list
===============================
The distribution consists of this README and a tarball,
TLSDAXC.yyyy.mm.dd.tgz ("yyyy.mm.dd" gives year, month, day of
software revision) that contains the following files, all in a
directory named TLSDAXC:
TLSDAXC.f90 Subroutines for f_xc, corresponding v_xc, and e_xc (see
Ref. [1])
test_fxc.f90 Test program
test_fxc.out output for test_fxc.f90 [see below]
IV. Running test
================
Compile (e.g. with Intel compiler) and execute:
ifort test_fxc.f90 -o test_fxc.x
./test_fxc.x
The results should reproduce data for e_xc, f_xc and v_xc (unpolarized, zeta=0,
and fully-polarized, zeta=1, cases) from Table S1 in the Supplemental Material
for Ref. [1]
The subroutines also have been tested with the gfortran compiler and
produce identical test results.
V. How to call the subroutines
==========================
Ref. [1] presents the functional and its derivative as
analytical functions of the variables r_s (electron Wigner-Seitz
radius) and reduced temperature tred=T/T_F.
Examples of calls are as follows,
for spin-unpolarized case:
call fxc_ksdt_01(fxc,vxc,rs,tred,0)
call exc_ksdt_01(exc,rs,tred,0)
where rs is the value of the Wigner-Seitz radius, tred is the reduced
temperature (input), and fxc, vxc, exc are the XC free-energy per
particle, its functional derivative, and XC internal-energy per
particle.
Similarly, for the fully-polarized case:
call fxc_ksdt_01(fxc,vxc,rs,tred,1)
call exc_ksdt_01(exc,rs,tred,1)
--end--