Program Listing for File bernoulli.hpp¶
↰ Return to documentation for file (SeQuant/domain/mbpt/bernoulli.hpp)
#ifndef SEQUANT_DOMAIN_MBPT_BERNOULLI_HPP
#define SEQUANT_DOMAIN_MBPT_BERNOULLI_HPP
#include <SeQuant/core/expr.hpp>
#include <cstddef>
namespace sequant::mbpt::bernoulli {
ExprPtr hbar(std::size_t N, std::size_t rank, bool skip1);
namespace detail {
ExprPtr wick_reduce(const ExprPtr& expr);
ExprPtr wick_commutator(const ExprPtr& A, const ExprPtr& B);
ExprPtr expand_to_blocks(const ExprPtr& expr);
ExprPtr N_part(const ExprPtr& expr, std::size_t cutoff,
std::size_t min_rank = 1);
ExprPtr R_part(const ExprPtr& expr, std::size_t cutoff,
std::size_t min_rank = 1);
} // namespace detail
} // namespace sequant::mbpt::bernoulli
#endif // SEQUANT_DOMAIN_MBPT_BERNOULLI_HPP