|
|
XC\_functional is a unique string that represent a DFT exchange-correlation (XC) functional.
|
|
|
XC\_functional is a unique string that describe a DFT exchange-correlation (XC) functional.
|
|
|
It is built by combining values stored in different XC_functional_name, each of which describing one correlation or exchange, or XC functional which is linearly combined to yield the used XC\_functional.
|
|
|
|
|
|
A small string identifying the van der Waals treatment applied.
|
|
|
The XC\_functional can be done during the scf, which is the normal case, and influence the
|
|
|
wavefuntions obtained, in which case it is described in the XC\_functional\_scf,
|
|
|
or be done on the converged wavefunctions perturbatively, and be described in XC\_functional\_perturbative
|
|
|
Below we list all possible values for XC_functional_name.
|
|
|
|
|
|
Here we describe all possible values for both.
|
|
|
|
|
|
In the simplest case it should be one of the standard abbreviations listed below.
|
|
|
If it is a standard combination of (mixing) of standard functionals the string is obtained by:
|
|
|
- join mixing parameter and functional name by '*'
|
|
|
- append ":" and non-standard parameters (see below) to the result
|
|
|
- sort by functional name and join by '+'
|
|
|
|
|
|
If more parameters are changed then ':' and the first 10 characters of the SHA-512 checksum of the normalized json of a dictionary with the parameters (using the names defined here), is appended to the functional form as defined here.
|
|
|
XC\_functional is built starting from the different XC_functional_name in the following way:
|
|
|
- join with a '*' XC_functional_weight and XC_functional_name in the same section_XC_functionals, for all section_XC_functionals in section_method;
|
|
|
- if XC_functional_parameters for the same section_XC_functionals is not empty (it means the adopted XC_functional_name has some non standard values in its parameters), then append ":", followed by the first 10 characters of the base64 url encoding of SHA-512 checksum of the normalized json stored in XC_functional_parameters (which defines the non-standard parameters);
|
|
|
- sort all the string obtained (one for each section_XC_functionals in section_method) above, using the alphabetical order of XC_functional_name. Concatenate the strings, joining them by a '+'.
|
|
|
|
|
|
# Basic XC functional names
|
|
|
|
... | ... | |