The Elk Code
 
Loading...
Searching...
No Matches
libxcifc_stub.f90
Go to the documentation of this file.
1
2! Copyright (C) 2009 T. McQueen and J. K. Dewhurst.
3! This file is distributed under the terms of the GNU General Public License.
4! See the file COPYING for license details.
5
6! Stub routines for libxc. See Elk manual for libxc installation instructions.
7
8module libxcifc
9
10integer libxcv(3)
11integer, parameter :: xc_mgga_x_tb09=208
12
13contains
14
15subroutine xcifc_libxc(xctype,n,c_tb09,tempa,rho,rhoup,rhodn,g2rho,g2up,g2dn, &
16 grho2,gup2,gdn2,gupdn,tau,tauup,taudn,ex,ec,vx,vc,vxup,vxdn,vcup,vcdn,dxdgr2, &
17 dxdgu2,dxdgd2,dxdgud,dcdgr2,dcdgu2,dcdgd2,dcdgud,dxdg2r,dxdg2u,dxdg2d,dcdg2r, &
18 dcdg2u,dcdg2d,wx,wxup,wxdn,wc,wcup,wcdn)
19implicit none
20! mandatory arguments
21integer, intent(in) :: xctype(3),n
22! optional arguments
23real(8), optional :: c_tb09,tempa
24real(8), optional :: rho(n),rhoup(n),rhodn(n)
25real(8), optional :: g2rho(n),g2up(n),g2dn(n)
26real(8), optional :: grho2(n),gup2(n),gdn2(n),gupdn(n)
27real(8), optional :: tau(n),tauup(n),taudn(n)
28real(8), optional :: ex(n),ec(n),vx(n),vc(n)
29real(8), optional :: vxup(n),vxdn(n),vcup(n),vcdn(n)
30real(8), optional :: dxdgr2(n),dxdgu2(n),dxdgd2(n),dxdgud(n)
31real(8), optional :: dcdgr2(n),dcdgu2(n),dcdgd2(n),dcdgud(n)
32real(8), optional :: dxdg2r(n),dxdg2u(n),dxdg2d(n)
33real(8), optional :: dcdg2r(n),dcdg2u(n),dcdg2d(n)
34real(8), optional :: wx(n),wxup(n),wxdn(n)
35real(8), optional :: wc(n),wcup(n),wcdn(n)
36write(*,*)
37write(*,'("Error(libxcifc): libxc not or improperly installed")')
38write(*,*)
39stop
40end subroutine
41
42subroutine fxcifc_libxc(fxctype,n,rho,rhoup,rhodn,fxc,fxcuu,fxcud,fxcdd)
43implicit none
44! mandatory arguments
45integer, intent(in) :: fxctype(3),n
46! optional arguments
47real(8), optional :: rho(n),rhoup(n),rhodn(n)
48real(8), optional :: fxc(n),fxcuu(n),fxcud(n),fxcdd(n)
49write(*,*)
50write(*,'("Error(libxcifc): libxc not or improperly installed")')
51write(*,*)
52stop
53end subroutine
54
55subroutine xcdata_libxc(xctype,xcdescr,xcspin,xcgrad,hybrid,hybridc)
56implicit none
57! arguments
58integer xctype(3)
59character(264) xcdescr
60integer xcspin,xcgrad
61logical hybrid
62real(8) hybridc
63write(*,*)
64write(*,'("Error(libxcifc): libxc not or improperly installed")')
65write(*,*)
66stop
67end subroutine
68!EOC
69
70end module
71
subroutine xcdata_libxc(xctype, xcdescr, xcspin, xcgrad, hybrid, hybridc)
integer, dimension(3) libxcv
integer, parameter xc_mgga_x_tb09
subroutine xcifc_libxc(xctype, n, c_tb09, tempa, rho, rhoup, rhodn, g2rho, g2up, g2dn, grho2, gup2, gdn2, gupdn, tau, tauup, taudn, ex, ec, vx, vc, vxup, vxdn, vcup, vcdn, dxdgr2, dxdgu2, dxdgd2, dxdgud, dcdgr2, dcdgu2, dcdgd2, dcdgud, dxdg2r, dxdg2u, dxdg2d, dcdg2r, dcdg2u, dcdg2d, wx, wxup, wxdn, wc, wcup, wcdn)
subroutine fxcifc_libxc(fxctype, n, rho, rhoup, rhodn, fxc, fxcuu, fxcud, fxcdd)