2#include "./spinflip.hpp"
4namespace triqs_ctint::moves {
18 if (std::find(
vpos.begin(),
vpos.end(), this_vpos) ==
vpos.end()) {
19 vpos.emplace_back(this_vpos);
30 g_tau_scalar_t det_ratio =
lazy_op.execute_try_change_col_row();
33 return mc_weight_t{det_ratio};
37 for (
auto &d :
qmc_config->dets) d.complete_operation();
40 for (
auto const &this_vpos :
vpos) {
49 for (
auto &d :
qmc_config->dets) d.reject_last_try();
mc_weight_t accept()
Accept vertex removal.
triqs::mc_tools::random_generator & rng
The random number generator.
void reject()
Reject vertex removal.
std::vector< int > vpos
Positions at which to flip the spins.
lazy_det_operation_t lazy_op
Object that allows to delay determinant operations, necessary for multi-spinflips.
mc_weight_t attempt()
Attempt vertex removal.
qmc_config_t * qmc_config
The Monte-Carlo configuration.
int n_spinflips
Switch for multi vertex spinflips.