Function sequant::mbpt::tensor_hypercontract¶
Defined in File thc.cpp
Function Documentation¶
-
ExprPtr sequant::mbpt::tensor_hypercontract(ExprPtr const &expr, IndexSpace aux_space, std::wstring_view tensor_label, std::wstring_view outer_factor_label, std::wstring_view core_tensor_label)¶
Factorizes 2-particle tensors into five rank-2 tensors using the `tensor hypercontraction’ topology (see DOI 10.1063/1.4732310; also see DOI 10.1021/acs.jctc.0c01310 for discussion in the context of related pseudospectral and CP factorizations). Namely, \( g_{b_1 b_2}^{k_1 k_2} \) is factorized into \( B_{b_1}[r_1] B^{k_1}[r_1] B_{b_2}[r_2] B^{k_2}[r_2] C[r_1,r_2] \)
- Parameters:
expr – The expression to be tensor-hyper-contracted.
aux_space – The index space representing the auxiliary indices ( \( r_1, r_2 \) in the example above) introduced through the decomposition.
tensor_label – The label of the tensor that shall be decomposed
outer_factor_label – The label of the outer factor tensors ( \( B \) in the example above).
core_tensor_label – The label of the core tensor ( \( C \) in the example above).