def get_jk(mol, dm, hermi=1, mf_opt=None): n2c = dm.shape[0] dd = numpy.zeros((n2c * 2, ) * 2, dtype=numpy.complex) dd[:n2c, :n2c] = dm dhf._call_veff_llll(mol, dd, hermi, None) vj, vk = _vhf.rdirect_mapdm('cint2e', 's8', ('ji->s2kl', 'jk->s1il'), dm, 1, mol._atm, mol._bas, mol._env, mf_opt) return dhf._jk_triu_(vj, vk, hermi)
def get_jk(mol, dm, hermi=1, mf_opt=None): n2c = dm.shape[0] dd = numpy.zeros((n2c*2,)*2, dtype=numpy.complex) dd[:n2c,:n2c] = dm dhf._call_veff_llll(mol, dd, hermi, None) vj, vk = _vhf.rdirect_mapdm('cint2e', 's8', ('ji->s2kl', 'jk->s1il'), dm, 1, mol._atm, mol._bas, mol._env, mf_opt) return dhf._jk_triu_(vj, vk, hermi)
def get_jk(mol, dm, hermi=1, mf_opt=None, with_j=True, with_k=True): '''J/K matrices in the j-adapted spinor basis. ''' n2c = dm.shape[0] dd = numpy.zeros((n2c * 2, ) * 2, dtype=numpy.complex128) dd[:n2c, :n2c] = dm dhf._call_veff_llll(mol, dd, hermi, None) vj, vk = _vhf.rdirect_mapdm('int2e_spinor', 's8', ('ji->s2kl', 'jk->s1il'), dm, 1, mol._atm, mol._bas, mol._env, mf_opt) return dhf._jk_triu_(vj, vk, hermi)