pytc.solver.xtc_ccsd._process_ovvv_block

pytc.solver.xtc_ccsd._process_ovvv_block(eris, t1, t2, tau, t1new, Lvv, Wvoov, Wvovo, tmp_a, tmp_b, p0, p1)[source]

Process a chunk of ovvv block for amplitude updates.

ovvv indexing: (k, d, a, c) with shape (nocc, nvir, nvir, nvir). We slice along axis 2 (‘a’) to get ovvv_blk with shape (nocc, nvir, blk, nvir).

Key PySCF formulas from rintermediates.py: - t1new: 2*einsum(‘kdac,ikcd->ia’) - einsum(‘kcad,ikcd->ia’) - Lvv: 2*einsum(‘kdac,kd->ac’) - einsum(‘kcad,kd->ac’) - Wvoov: einsum(‘kcad,id->akic’) - Wvovo: einsum(‘kdac,id->akci’) - tmp_a: einsum(‘kdac,ijcd->kaij’) - tmp_b: einsum(‘kcbd,ijcd->kbij’)