Function uw12::integrals::transformations::mo_transform_two_index_full

Function Documentation

inline linalg::Mat uw12::integrals::transformations::mo_transform_two_index_full(const linalg::Mat &J3, const linalg::Mat &C_left, const linalg::Mat &C_right)

Directly transform the three-index density-fitting integrals from the ao basis to mo space using orbital matrices C_left and C_right.

Transform both ao indices of the matrix J3 of three-index density-fitting integrals \((\mu\nu | A)\) for ao indices \(\mu, \nu\) to the space of orbitals k and i resulting in a matrix of three-index integrals \((i k | A)\) for df index A.

The density-fitting integrals J3 are in matrix form with n_ao * (n_ao + 1) /2 rows and nA columns. The orbital coefficient matrices C_left and C_right should be of sizes n_ao * n_i and n_ao * n_k respectively. For number of ao basis functions n_ao and number of i and k orbitals n_i and n_k respectively. The resulting matrix is of size (n_i * n_k) * nA.

Parameters
  • J3 – Three-index density-fitting integrals \((\mu\nu|A)\)

  • C_left – Orbital coefficients \(C_{\mu i}\)

  • C_right – Orbital coefficients \(C_{\mu k}\)

Returns

Two-index mo transformed df integrals \((i k|A)\)