occ
Loading...
Searching...
No Matches
occ::qm::cc::CCIntegrals Struct Reference

Restricted (closed-shell, spatial-MO) integral blocks in chemist notation (pq|rs), plus a vvvv-ladder callable. More...

#include <integrals.h>

Public Types

using Tensor4 = Eigen::Tensor< double, 4 >
 

Public Attributes

int nocc {0}
 
int nvir {0}
 
occ::Vec mo_energy
 length nocc+nvir
 
occ::Mat fock
 (nmo x nmo); diag(mo_energy) for a canonical reference
 
Tensor4 oooo
 (ij|kl)
 
Tensor4 ooov
 (ij|ka)
 
Tensor4 oovv
 (ij|ab)
 
Tensor4 ovoo
 (ia|jk)
 
Tensor4 ovov
 (ia|jb)
 
Tensor4 ovvo
 (ia|bj)
 
Tensor4 ovvv
 (ia|bc)
 
std::function< Tensor4(const Tensor4 &tau)> ladder
 vvvv ladder: L(i,j,a,b) = sum_cd (ac|bd) tau(i,j,c,d), never forming vvvv.
 

Detailed Description

Restricted (closed-shell, spatial-MO) integral blocks in chemist notation (pq|rs), plus a vvvv-ladder callable.

The CCSD solver is written against this interface, so the exact / DF / THC backends are drop-in interchangeable. Only the <=2-virtual blocks and ovvv are stored; the O(V^4) vvvv is never formed – it is applied through ladder.

Member Typedef Documentation

◆ Tensor4

using occ::qm::cc::CCIntegrals::Tensor4 = Eigen::Tensor<double, 4>

Member Data Documentation

◆ fock

occ::Mat occ::qm::cc::CCIntegrals::fock

(nmo x nmo); diag(mo_energy) for a canonical reference

◆ ladder

std::function<Tensor4(const Tensor4 &tau)> occ::qm::cc::CCIntegrals::ladder

vvvv ladder: L(i,j,a,b) = sum_cd (ac|bd) tau(i,j,c,d), never forming vvvv.

◆ mo_energy

occ::Vec occ::qm::cc::CCIntegrals::mo_energy

length nocc+nvir

◆ nocc

int occ::qm::cc::CCIntegrals::nocc {0}

◆ nvir

int occ::qm::cc::CCIntegrals::nvir {0}

◆ oooo

Tensor4 occ::qm::cc::CCIntegrals::oooo

(ij|kl)

◆ ooov

Tensor4 occ::qm::cc::CCIntegrals::ooov

(ij|ka)

◆ oovv

Tensor4 occ::qm::cc::CCIntegrals::oovv

(ij|ab)

◆ ovoo

Tensor4 occ::qm::cc::CCIntegrals::ovoo

(ia|jk)

◆ ovov

Tensor4 occ::qm::cc::CCIntegrals::ovov

(ia|jb)

◆ ovvo

Tensor4 occ::qm::cc::CCIntegrals::ovvo

(ia|bj)

◆ ovvv

Tensor4 occ::qm::cc::CCIntegrals::ovvv

(ia|bc)


The documentation for this struct was generated from the following file: