# DFT-NL¶

*Section author: Holger Kruse*

Non-local (NL), density based correlation energy from the VV10 kernel can be added to arbitrary functionals.

For pre-defined functionals (see Functional overview in this Table ) it is sufficient to add -NL to the functional name:

1 | ```
energy('b3lyp-nl')
``` |

Modification of the parameters b and C is done setting DFT_VV10_B and DFT_VV10_C. The C is usually left unchanged and the originally proposed value of C=0.0093 is used.

Adding DFT_VV10_B to any functional activates the calculation of the VV10 kernel. A BLYP-NL calculation can be set as follows:

1 2 | ```
set DFT_VV10_B 4.0
energy('blyp')
``` |

The default C parameter will be used.

Similar to DFT_DISPERSION_PARAMETERS the tuple NL_DISPERSION_PARAMETERS can used:

1 2 | ```
set NL_DISPERSION_PARAMTERS [4.0]
energy('blyp')
``` |

which is equivalent to the example above.

Further examples can be found in the respective regression test

## post-SCF time savings¶

Substantial time-savings for energy calculations are available by evaluating the VV10 kernel only at the converged electron density, i.e. in a post-SCF fashion. The deviations from the fully self-consistent treatment are usually minimal. To activate this set DFT_VV10_POSTSCF to true.