TRIQS/TRIQS 4.0.0
Researching Interacting Quantum Systems
Loading...
Searching...
No Matches
triqs::mc_tools::MCMove

#include <triqs/mc_tools/concepts.hpp>

Detailed Description

Check if a type can be used as a MC move.

A MC move type is required to define the following methods:

  • attempt() -> MCSignType: Proposes a new MC configuration and returns the acceptance ratio of the proposed move.
  • accept() -> MCSignType: Accepts the previously proposed move and returns a possible sign correction.

See also triqs::mc_tools::move and triqs::mc_tools::move_set for more information.

Template Parameters
TType to check.

Definition at line 59 of file concepts.hpp.

Concept definition

template<typename T, typename MCSignType>
concept triqs::mc_tools::MCMove = requires(T x) {
{ x.attempt() } -> std::convertible_to<MCSignType>;
{ x.accept() } -> std::convertible_to<MCSignType>;
}
Check if a type can be used as a MC move.
Definition concepts.hpp:59