Coupled Cluster Methods
TeraChem includes a variety of coupled cluster methods for describing dynamic electron correlation. These include methods that exploit tensor hypercontraction and rank-reduction, leading to \(O(N^4)\) scaling for CCSD, compared to the usual \(O(N^6)\) scaling of CCSD in conventional codes. Analytic gradients are not currently implemented for any of the coupled cluster methods implemented in TeraChem, so these methods are suitable primarily for energy evaluation (gradients can only be obtained by numerical differentation).
A summary of the coupled cluster methods available:
- Ground State Methods
- CCSD - coupled cluster with single and double excitations
- CCSD(T) - CCSD with perturbative triple excitations
- CC2 - second order approximate coupled cluster
- Excited State Methods
- EOM-EE-CCSD - equation-of-motion excitation energy CCSD
- EOM-IP-CCSD - equation-of-motion ionization potential CCSD
- EOM-CVS-CCSD - equation-of-motion core-valence-separation CCSD
- EOM-CVS-IP-CCSD - equation-of-motion core-valence-separtion ionization potential CCSD
- EOM-EE-CC2 - equation-of-motion excitation energy CC2
All coupled cluster methods in TeraChem use the Cholesky decomposition of the two-electron integrals:
This does not lead to any scaling reduction, but does make the calculation much faster because of reduced I/O requirements.
There are several keywords pertaining to the Cholesky Decomposition and are therefore relevant to any coupled cluster method in terachem.
Summary of Cholesky Decomposition keywords
| Keyword | Type | Default | Description |
|---|---|---|---|
| ccbox_cd_thresh | float | 1.0e-6 | Accuracy threshold for Cholesky Decomposition of integrals |
| ccbox_cholesky | string | "cpu" | Whether to use the CPU or GPU Cholesky Decomposition routine |
| ccbox_cd_max | integer | INT_MAX (= 2147483647 for 32-bit integers) | Maximum allowable size of Cholesky factorization |
| ccbox_cd_threall | double | 1.0e-14 | Threshold to neglect shell pairs in Cholesky Decomposition |
| ccbox_cd_threspdp | double | 0.0 | SPDP threshold in Cholesky Decomposition |
Usually the default Cholesky Decomposition parameters are a reasonable choice, but for large systems a looser CD threshold may be necessary.
There are also several general keywords that govern any coupled cluster calculation in TeraChem.
Summary of general keywords
| Keyword | Type | Default | Description |
|---|---|---|---|
| ccbox_frozen_core | integer | 0 | Number of orbitals which are "frozen," i.e. doubly occupied in all included determinants |
| ccbox_scratch_dir | string | /tmp | Directory where scratch files for CC will be stored |
| ccbox_no_disk | boolean | false | Store all CC arrays in memory, rather than writing to temporary disk storage? |
| ccbox_timings | string | "no" | Print detailed timings for CC calculation? |