File volume_cooling_balls.hpp
Functions
-
template<typename Point, typename ConvexBody, typename PointList, typename NT>
bool check_convergence(ConvexBody &P, PointList const &randPoints, bool &too_few, NT &ratio, int const &nu, bool const &precheck, bool const &lastball, cooling_ball_parameters<NT> const ¶meters) Helpers.
-
template<typename Polytope, typename Ball, typename NT, typename RNG>
bool get_first_ball(Polytope &P, Ball &B0, NT &ratio, NT const &radius_input, cooling_ball_parameters<NT> const ¶meters, RNG &rng)
-
template<typename Point, typename ball, typename PointList, typename NT>
bool get_next_zonotopeball(std::vector<ball> &BallSet, PointList const &randPoints, NT const &rad_min, std::vector<NT> &ratios, cooling_ball_parameters<NT> const ¶meters)
-
template<typename RandomPointGenerator, typename PolyBall, typename ball, typename Polytope, typename NT, typename RNG>
bool get_sequence_of_polytopeballs(Polytope &P, std::vector<ball> &BallSet, std::vector<NT> &ratios, int const &Ntot, NT const &radius, unsigned int const &walk_length, cooling_ball_parameters<NT> const ¶meters, RNG &rng)
-
template<typename Pollyball, typename Point, typename NT>
bool estimate_ratio_generic(Pollyball &Pb2, Point const &p, NT const &error, estimate_ratio_parameters<NT> &ratio_parameters)
-
template<typename WalkType, typename Point, typename PolyBall1, typename PolyBall2, typename NT, typename RNG>
NT estimate_ratio(PolyBall1 &Pb1, PolyBall2 &Pb2, NT const &ratio, NT const &error, unsigned int const &W, unsigned int const &Ntot, unsigned int const &walk_length, RNG &rng)
-
template<typename Point, typename ball, typename PolyBall, typename NT, typename RNG>
NT estimate_ratio(ball const &B, PolyBall &Pb2, NT const &ratio, NT const &error, int const &W, int const &Ntot, RNG &rng)
-
template<typename Pollyball, typename Point, typename NT>
void full_sliding_window(Pollyball &Pb2, Point const &p, estimate_ratio_interval_parameters<NT> &ratio_parameters)
-
template<typename Pollyball, typename Point, typename NT>
bool estimate_ratio_interval_generic(Pollyball &Pb2, Point const &p, NT const &error, NT const &zp, estimate_ratio_interval_parameters<NT> &ratio_parameters)
-
template<typename Point, typename ball, typename PolyBall2, typename NT, typename RNG>
NT estimate_ratio_interval(ball const &B, PolyBall2 &Pb2, NT const &ratio, NT const &error, int const &W, int const &Ntot, NT const &prob, RNG &rng)
-
template<typename WalkType, typename Point, typename PolyBall1, typename PolyBall2, typename NT, typename RNG>
NT estimate_ratio_interval(PolyBall1 &Pb1, PolyBall2 &Pb2, NT const &ratio, NT const &error, int const &W, int const &Ntot, NT const &prob, unsigned int const &walk_length, RNG &rng)
-
template<typename WalkTypePolicy, typename Polytope, typename RandomNumberGenerator = BoostRandomNumberGenerator<boost::mt11213b, double>>
std::pair<double, double> volume_cooling_balls(Polytope &Pin, RandomNumberGenerator &rng, double const &error = 0.1, unsigned int const &walk_length = 1, unsigned int const &win_len = 300)
-
template<typename WalkTypePolicy = CDHRWalk, typename RandomNumberGenerator = BoostRandomNumberGenerator<boost::mt11213b, double>, typename Polytope>
std::pair<double, double> volume_cooling_balls(Polytope &Pin, double const &error = 0.1, unsigned int const &walk_length = 1)
-
template<typename WalkTypePolicy = CDHRWalk, typename RandomNumberGenerator = BoostRandomNumberGenerator<boost::mt11213b, double>, typename Polytope>
std::pair<double, double> volume_cooling_balls(Polytope &Pin, Cartesian<double>::Point const &interior_point, unsigned int const &walk_length = 1, double const &error = 0.1)
-
template<typename NT>
struct cooling_ball_parameters Public Functions
-
inline cooling_ball_parameters(unsigned int win_len)
-
inline cooling_ball_parameters(unsigned int win_len)
-
template<typename NT>
struct estimate_ratio_parameters