PerturbativeTriples

Table of Contents

1. Brief description

Evaluates the (T) contribution.

2. Algorithm call

A typical input file snippet to call the PerturbativeTriples algorithm is given below.

- name: PerturbativeTriples
  in:
    coulombIntegrals: CoulombIntegrals
    amplitudes: Amplitudes
    slicedEigenEnergies: EigenEnergies
    mp2PairEnergies: Mp2PairEnergies
  out:
    {}

3. Algorithm input

Table 1: Input keywords for PerturbativeTriples
Keyword Value
amplitudes Singles and doubles amplitudes
coulombIntegrals Coulomb Integrals
slicedEigenEnergies Sliced one-electron energies
mp2PairEnergies MP2 pair energies matrix

4. Algorithm output

4.1. Sample stdout

Below an example standard output stream is shown for a successful PerturbativeTriples algorithm run.

step: 7, PerturbativeTriples
Progress(%)  time(s)   GFLOP/s      
1            0         4.187        
10           0         5.657        
20           0         5.789        
30           0         5.919        
40           0         5.916        
50           0         5.938        
60           0         5.913        
70           0         5.877        
80           0         5.850        
90           0         5.857        
100          0         5.845        
(T) correlation energy:      -0.822530510989498
realtime 2.592587863 s
--

5. Sample yaml output

Below an example yaml output stream is shown for a successful PerturbativeTriples algorithm run.

floatingPointOperations: 11703705600
flops: 729564426.2969619
in:
  amplitudes: 0x24cd038
  coulombIntegrals: 0x247f2b8
  slicedEigenEnergies: 0x2487f38
name: PerturbativeTriples
out:
  energy:
    correlation: -0.82253051098949848
    unit: 0.036749322175638782
realtime: 2.592587863

6. Computational complexity

The computational cost is \(\mathcal{O}{(N_o^3 N_v^3(N_o+N_v))}\) with \(N_o\) and \(N_v\) being the number of occupied and virtual orbitals, respectively. The memory footprint is mainly determined by the storage of the PPPH-integral, which is of size \(\mathcal{O}{N_o N_v^3}\).

7. Theory

The implemented expressions of (T) correspond to those from Ref. (Raghavachari et al. 1989). For more details see Ref. (Bartlett and Musiał 2007) and references therin.

8. Reference implementation

In addition to the PerturbativeTriples algorithm, there is also a slower reference implementation called PerturbativeTriplesReference which is used in the same way as PerturbativeTriples. To use it, you should just change the name PerturbativeTriples by PerturbativeTriplesReference.

9. Literature

Bartlett, R.J., and Monika Musiał. 2007. “Coupled-cluster theory in quantum chemistry.” Rev. Mod. Phys. 79 (1): 291–352. doi:10.1103/RevModPhys.79.291.
Raghavachari, Krishnan, Gary W. Trucks, John A. Pople, and Martin Head-Gordon. 1989. “A Fifth-Order Perturbation Comparison of Electron Correlation Theories.” Chemical Physics Letters 157 (6): 479–83. doi:https://doi.org/10.1016/S0009-2614(89)87395-6.

Created: 2023-03-16 Thu 10:59