3.33 CC-aims: Interface to CC4S
The Coupled Cluster 4 Solids (CC4S) code offers a continuously increasing variety of wavefunction-based
beyond-DFT methods for both molecules and materials
(https://manuals.cc4s.org/user-manual/index.html).
In order to perform a correlated calculation, CC4S requires a set of quantities including at least
the single-particle energies and the so-called Coulomb vertex[150].
The CC-aims library[221] (https://gitlab.com/moerman1/fhi-cc4s),
which serves as an interface between FHI-aims and CC4S, performs the
calculation and preparation of the Coulomb vertex and of other quantities including metadata in a format
which CC4S can understand.
A basic guide on CC-aims for FHI-aims users including installation and a tutorial
can be found in the CC-aims manual
(https://moerman1.gitlab.io/fhi-cc4s/for_FHIaims_users/).
To run the CC-aims interface in the most basic way after a completed HF/KS-SCF-calculation, it sufficies to add output cc4s to the general section of the control.in.
Also note, that as CC-aims is used as a post-SCF feature, it respects the frozen_core_postscf-keyword. Hence, if you want to reduce the computational cost of your CC4S-calculation by neglecting core-like HF/KS-states, you can do this by specifying frozen_core_postscf.
However, FHI-aims offers an additional set of CC-aims-related keywords, which extend the functionality of the interface and which are listed below.
Tags for general section of control.in
Tag: cc4s_debug(control.in)
Usage: cc4s_debug flag
Purpose: This keyword signals to the CC-aims library that more verbose output should be
generated. In additiion to that, CC4S-input files which would be written to a
binary/unformatted file, like the Coulomb vertex, will be output as human-readable files.
As some of the output quantities, including the Coulomb vertex, can become huge this
debug-option is only recommended for small systems.
flag is a logical string, either .false. or .true.
Default: .false.
Tag: cc4s_screen_thresh(control.in)
Usage: cc4s_screen_thresh value
Purpose: If this keyword is specified, a principal component analysis (PCA)
is performed during the construction of the Coulomb vertex, thus reducing the
final size of that quantity. During the PCA, all singular values of the
Coulomb vertex smaller than value are discarded.
value is a small positive real number.
Default: No PCA is performed.
Tag: cc4s_screen_num(control.in)
Usage: cc4s_screen_num number
Purpose: Similarly to cc4s_screen_thresh value this
keyword invokes a PCA of the Coulomb vertex. In the case of
cc4s_screen_num, however, number is the maximum
absolute number of singular values kept after the PCA.
number is a positive integer.
Default: No PCA is performed.
To avoid confusion, please only specify either cc4s_screen_thresh
or cc4s_screen_num but not both.