Struct GaussianAcceleratedBilliardWalk::Walk

template<typename Polytope, typename RandomNumberGenerator, typename E_type = typename Polytope::DenseMT>
struct Walk

Public Types

typedef Polytope::PointType Point
typedef Polytope::MT MT
typedef Eigen::Matrix<double, Eigen::Dynamic, Eigen::Dynamic> DenseMT
typedef Polytope::VT VT
typedef Point::FT NT
using AA_type = std::conditional_t<SPARSE, typename Eigen::SparseMatrix<NT>, DenseMT>
using AE_type = std::conditional_t<SPARSE && std::is_base_of<Eigen::SparseMatrixBase<E_type>, E_type>::value, typename Eigen::SparseMatrix<NT, Eigen::RowMajor>, DenseMT>

Public Functions

inline void computeLcov(const E_type E)
template<typename GenericPolytope>
inline Walk(GenericPolytope &P, Point const &p, E_type const &E, RandomNumberGenerator &rng)
template<typename GenericPolytope>
inline Walk(GenericPolytope &P, Point const &p, E_type const &E, RandomNumberGenerator &rng, parameters const &params)
template<typename GenericPolytope>
inline void apply(GenericPolytope &P, Point &p, unsigned int const &walk_length, RandomNumberGenerator &rng)

Public Static Attributes

static constexpr bool SPARSE = std::is_same_v<MT, Eigen::SparseMatrix<NT, Eigen::RowMajor>>