Function sequant::mbpt::op::ref_av(ExprPtr, const OpConnections<std::wstring>&, bool, bool, bool)

Function Documentation

ExprPtr sequant::mbpt::op::ref_av(ExprPtr expr, const OpConnections<std::wstring> &op_connections, bool use_topology = true, bool screen = true, bool skip_clone = false)

computes the reference expectation value

Note

equivalent to vac_av if the reference state is the Wick vacuum, i.e. if get_default_context().index_space_registry()->reference_occupied_space() == get_default_context().index_space_registry()->vacuum_occupied_space()

Parameters:
  • expr[in] input expression

  • op_connections[in] list of pairs of operator labels to be connected; connections are defined left-to-right, i.e., pair {opL,opR} declares that opL and opR are to be connected when opR precedes opL, i.e. opL is to the left of opR

  • use_topology[in] if true, WickTheorem uses topological equivalence of terms, default is true

  • screen[in] if true, expressions are screened before lowering to Tensor level and calling WickTheorem, default is true

  • skip_clone[in] if true, will not clone the input expression

Returns:

the reference expectation value