|
openjij
Framework for the Ising model and QUBO.
|
Continuous Time Swendsen Wang updater for CTQIsystem on CSR Sparse graph. More...
#include <continuous_time_swendsen_wang.hpp>
Public Types | |
| using | CTIsing = system::ContinuousTimeIsing< graph::CSRSparse< FloatType > > |
| using | GraphType = typename graph::CSRSparse< FloatType > |
| using | CutPoint = typename system::ContinuousTimeIsing< GraphType >::CutPoint |
| using | TimeType = typename system::ContinuousTimeIsing< GraphType >::TimeType |
Static Public Member Functions | |
| template<typename RandomNumberEngine > | |
| static void | update (system::ContinuousTimeIsing< GraphType > &system, RandomNumberEngine &random_number_engine, const utility::TransverseFieldUpdaterParameter ¶meter) |
| continuous time Swendsen-Wang updater for transverse ising model | |
| static std::vector< CutPoint > | create_timeline (const std::vector< CutPoint > &old_timeline, const std::vector< TimeType > &cuts) |
| create new timeline; place kinks by ignoring old cuts and place new cuts | |
| static std::vector< CutPoint > | create_timeline_easy (const std::vector< CutPoint > &old_timeline, const std::vector< TimeType > &cuts) |
| easy but inefficient version of create_timeline() | |
| template<typename RandomNumberEngine > | |
| static std::vector< TimeType > | generate_poisson_points (const TimeType lambda, const TimeType beta, RandomNumberEngine &random_number_engine) |
| generates Poisson points with density lambda in the range of [0:beta) | |
Continuous Time Swendsen Wang updater for CTQIsystem on CSR Sparse graph.
| FloatType |
| using openjij::updater::ContinuousTimeSwendsenWang< system::ContinuousTimeIsing< graph::CSRSparse< FloatType > > >::CTIsing = system::ContinuousTimeIsing<graph::CSRSparse<FloatType> > |
| using openjij::updater::ContinuousTimeSwendsenWang< system::ContinuousTimeIsing< graph::CSRSparse< FloatType > > >::CutPoint = typename system::ContinuousTimeIsing<GraphType>::CutPoint |
| using openjij::updater::ContinuousTimeSwendsenWang< system::ContinuousTimeIsing< graph::CSRSparse< FloatType > > >::GraphType = typename graph::CSRSparse<FloatType> |
| using openjij::updater::ContinuousTimeSwendsenWang< system::ContinuousTimeIsing< graph::CSRSparse< FloatType > > >::TimeType = typename system::ContinuousTimeIsing<GraphType>::TimeType |
|
inlinestatic |
create new timeline; place kinks by ignoring old cuts and place new cuts
|
inlinestatic |
easy but inefficient version of create_timeline()
|
inlinestatic |
generates Poisson points with density lambda in the range of [0:beta)
|
inlinestatic |
continuous time Swendsen-Wang updater for transverse ising model
References openjij::utility::UpdaterParameter< system::transverse_field_system >::beta, openjij::utility::UnionFind::find_set(), openjij::utility::UpdaterParameter< system::transverse_field_system >::s, and openjij::utility::UnionFind::unite_sets().
