48#include <lal/linear_arrangement.hpp>
49#include <lal/graphs/rooted_tree.hpp>
50#include <lal/detail/array.hpp>
Uniformly random selection of projective arrangements of a rooted tree.
Definition rand_projective_arrangements.hpp:86
linear_arrangement yield_arrangement() noexcept
Returns a random projective arrangement.
Definition rand_projective_arrangements.hpp:124
rand_projective_arrangements(const graphs::rooted_tree &rT, const uint64_t seed=0) noexcept
Constructor with tree.
std::mt19937 m_gen
Random number generator.
Definition rand_projective_arrangements.hpp:141
detail::array< detail::array< node > > m_rdata
The random data for all vertices.
Definition rand_projective_arrangements.hpp:138
linear_arrangement get_arrangement() noexcept
Make a random projective arrangement of a rooted tree.
const graphs::rooted_tree & m_rT
The rooted tree of which we are making projective arrangements uniformly at random.
Definition rand_projective_arrangements.hpp:130
Rooted tree graph class.
Definition rooted_tree.hpp:109
Linear arrangement of vertices.
Definition linear_arrangement.hpp:103
Main namespace of the library.
Definition basic_types.hpp:48
Wrapper of a C array for automatic deallocation of memory.
Definition array.hpp:59