Function sequant::mbpt::biorthogonal_transform_pre_nnsproject(ExprPtr&, const container::svector<container::svector<SlottedIndex>>&, bool)

Function Documentation

ExprPtr sequant::mbpt::biorthogonal_transform_pre_nnsproject(ExprPtr &expr, const container::svector<container::svector<SlottedIndex>> &ext_idxs, bool factor_out_nns_projector = true)

Performs biorthogonal transformation with factored out NNS projector.

Applies biorthogonal transformation. When factor_out_nns_projector is true (default), factors out the NNS projector by applying additional steps (S_maps and WK_biorthogonalization_filter) to produce compact biorthogonal equations, necessitating a subsequent numerical NNS-projection evaluation. When false, the NNS projector is not factored out, so no need to apply numerical NNS-projection evaluation.

Parameters:
  • expr – The input expression.

  • ext_idxs – A vector of external index groups.

  • factor_out_nns_projector – If true (default), factored out NNS projector. If false, NNS projector is not factored out.

Returns:

Expression pointer to the biorthogonalized result with leading S operator.