Documentation for module xc_pbe

calculates the pbe correlation functional

source: xc_pbe.F
Loading...

public Subroutines/Functions:

evaluates the pbe correlation functional for lda
return various information on the functional
evaluates the becke 88 exchange functional for lsd
return various information on the functional

SUBROUTINEpbe_lda_eval(rho_set, deriv_set, grad_deriv, pbe_params)

evaluates the pbe correlation 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
:: pbe_params ...

SUBROUTINEpbe_lda_info(pbe_params, reference, shortform, needs, max_deriv)

return various information on the functional

Arguments:
POINTER
:: pbe_params section selecting the varius parameters for the functional
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 ...

SUBROUTINEpbe_lsd_eval(rho_set, deriv_set, grad_deriv, pbe_params)

evaluates the becke 88 exchange functional for lsd

Arguments:
POINTER
:: rho_set ...
POINTER
:: deriv_set ...
INTEGER,
INTENT(in)
:: grad_deriv ...
POINTER
:: pbe_params ...

SUBROUTINEpbe_lsd_info(pbe_params, reference, shortform, needs, max_deriv)

return various information on the functional

Arguments:
POINTER
:: pbe_params section selecting the varius parameters for the functional
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 ...