Function sequant::mbpt::closed_shell_CC_spintrace

Function Documentation

ExprPtr sequant::mbpt::closed_shell_CC_spintrace(ExprPtr const &expr, ClosedShellCCSpintraceOptions options = {})

like closed_shell_spintrace but transforms spin-free moments to biorthogonal form The algorithm (most steps are the same in V1 and V2):

  • factor out symmetrizer from the antisymmetrizer, “set it aside” (remove from the expression), and expand the rest of the antisymmetrizer.

  • spin-trace the resulting expression assuming spin-restricted basis and closed-shell reference

  • biorthogonalize

  • V2 only: collect terms that differ only by external index permutation (i.e. have same colored graph hash), for each group select the terms with the largest coefficients)

  • apply the particle symmetrizer and simplify

The V2 method produces an expression that becomes equivalent that of V1 by application of if the biorthogonal NNS projector (particular linear combination of permutation operators) is applied. The biorthogonal NNS projection should be performed numerically.

Warning

the antisymmetrizer is assumed to be at the front of each tensor network, hence must use “complete” canonicalization to produce the input expression.

Parameters:
  • expr – input expression

  • options – optional parameter controlling the algorithm selection and other traits; the default is to use the V2 method