File parallel_mmcs.hpp

Functions

template<typename WalkTypePolicy, typename Polytope, typename RandomNumberGenerator, typename MT, typename Point, typename NT>
bool perform_parallel_mmcs_step(Polytope &P, RandomNumberGenerator &rng, unsigned int const &walk_length, unsigned int const &target_ess, unsigned int const &max_num_samples, unsigned int const &window, unsigned int &Neff_sampled, unsigned int &total_samples, unsigned int const &num_rounding_steps, MT &TotalRandPoints, const Point &starting_point, unsigned int const &nburns, unsigned int const &num_threads, bool request_rounding, NT L)

The class implements a single step of the Parallel Multiphase Monte Carlo Sampling algorithm given in,

A. Chalkis, V. Fisikopoulos, E. Tsigaridas, H. Zafeiropoulos, Geometric algorithms for sampling the flux space of metabolic networks, SoCG 21.

Template Parameters:
  • WalkTypePolicy – random walk type

  • Polytope – convex polytope type

  • RandomNumberGenerator – random number generator type

  • MT – matrix type

  • Point – cartensian point type

  • NT – number type