Random uniform hypergraphs#

Undirected random uniform hypergraph#

random_uniform_hypergraph[vert_type](size: int, edge_degree: int, edge_prob: float, random_state) undirected_hypernetwork[vert_type]#
template<integer_network_vertex VertT, std::uniform_random_bit_generator Gen>
undirected_hypernetwork<VertT> random_uniform_hypergraph(VertT size, VertT edge_degree, double edge_prob, Gen &generator)#

Generates a random hypergraph of size size vertices where each of the possible edges of degree edge_degree are present independently with probability edge_prob. This is the natural extension of Erdős–Rényi networks to uniform hypergraphs.

All edges will consist of exactly edge_degree vertices.

Directed random uniform hypergraph#

random_directed_uniform_hypergraph[vert_type](size: int, edge_in_degree: int, edge_out_degree: int, edge_prob: float, random_state) directed_hypernetwork[vert_type]#
template<integer_network_vertex VertT, std::uniform_random_bit_generator Gen>
directed_hypernetwork<VertT> random_directed_uniform_hypergraph(VertT size, VertT edge_in_degree, VertT edge_out_degree, double edge_prob, Gen &generator)#

Generates a random hypergraph of size size vertices where each of the possible directed edges of in-degree edge_in_degree and out-degree edge_out_degree are present independently with probability edge_prob. This is the natural extension of directed Erdős–Rényi networks to uniform directed hypergraphs.

All edges will consist of exactly edge_in_degree mutator vertices (tail of the arrow) and edge_out_degree mutated vertices (head of the arrow).