Documentation for module xc_optx

calculate optx

source: xc_optx.F
Loading...

public Subroutines/Functions:

evaluates the optx functional for lda
info about the optx functional
evaluates the optx functional for lsd
info about the optx functional (LSD)

SUBROUTINEoptx_lda_eval(rho_set, deriv_set, grad_deriv, optx_params)

evaluates the optx functional for lda

Arguments:
POINTER
:: rho_set the density where you want to evaluate the functional
POINTER
:: deriv_set place where to store the functional derivatives (they are added to the derivatives)
INTEGER,
INTENT(in)
:: grad_deriv degree of the derivative that should be evalated, if positive all the derivatives up to the given degree are evaluated, if negative only the given degree is calculated
POINTER
:: optx_params input parameter (scaling)

SUBROUTINEoptx_lda_info(reference, shortform, needs, max_deriv)

info about the optx functional

Arguments:
CHARACTER(*),
INTENT(out),
OPTIONAL
:: reference string with the reference of the actual functional
CHARACTER(*),
INTENT(out),
OPTIONAL
:: shortform string with the shortform of the functional name
INTENT(inout),
OPTIONAL
:: needs the components needed by this functional are set to true (does not set the unneeded components to false)
INTEGER,
INTENT(out),
OPTIONAL
:: max_deriv implemented derivative of the xc functional

SUBROUTINEoptx_lsd_eval(rho_set, deriv_set, grad_deriv, optx_params)

evaluates the optx functional for lsd

Arguments:
POINTER
:: rho_set the density where you want to evaluate the functional
POINTER
:: deriv_set place where to store the functional derivatives (they are added to the derivatives)
INTEGER,
INTENT(in)
:: grad_deriv degree of the derivative that should be evalated, if positive all the derivatives up to the given degree are evaluated, if negative only the given degree is calculated
POINTER
:: optx_params input parameter (scaling)

SUBROUTINEoptx_lsd_info(reference, shortform, needs, max_deriv)

info about the optx functional (LSD)

Arguments:
CHARACTER(*),
INTENT(out),
OPTIONAL
:: reference string with the reference of the actual functional
CHARACTER(*),
INTENT(out),
OPTIONAL
:: shortform string with the shortform of the functional name
INTENT(inout),
OPTIONAL
:: needs the components needed by this functional are set to true (does not set the unneeded components to false)
INTEGER,
INTENT(out),
OPTIONAL
:: max_deriv implemented derivative of the xc functional