igraph_to_prufer()andigraph_from_prufer()convert labelled trees to/from Prüfer sequencesigraph_tree_game()samples uniformly from the set of labelled treesigraph_is_tree()checks if a graph is a treeigraph_random_spanning_tree()picks a spanning tree of a graph uniformly at randomigraph_random_edge_walk()returns the indices of edges traversed by a random walk; useful for multigraphs
igraph_community_fluid_communities()detects communities based on interacting fluidsigraph_community_leiden()detects communities with the Leiden method
igraph_maximal_cliques_hist()counts maximal cliques of each sizeigraph_maximal_cliques_callback()calls a function for each maximal cliqueigraph_clique_size_hist()counts cliques of each sizeigraph_cliques_callback()calls a function for each cliqueigraph_weighted_cliques()finds weighted cliques in graphs with integer vertex weightsigraph_weighted_clique_number()computes the weighted clique numberigraph_largest_weighted_cliques()finds the largest weighted cliques
igraph_hsbm_game()for a hierarchical stochastic block modeligraph_hsbm_list_game()for a more general hierarchical stochastic block modeligraph_correlated_game()generates pairs of correlated random graphs by perturbing existing adjacency matrixigraph_correlated_pair_game()generates pairs of correlated random graphsigraph_tree_game()samples uniformly from the set of labelled treesigraph_dot_product_game()generates a random dot product graphigraph_realize_degree_sequence()creates a single graph with a given degree sequence (Havel-Hakimi algorithm)
igraph_adjacency_spectral_embedding()andigraph_laplacian_spectral_embedding()provide graph embedddingsigraph_dim_select()provides dimensionality selection for singular values using profile likelihood
igraph_simplify_and_colorize()encodes edge and self-loop multiplicities into edge and vertex colorsigraph_bridges()finds edges whose removal would disconnect a graphigraph_vertex_coloring_greedy()computes a vertex coloring using a greedy algorithmigraph_rewire_directed_edges()randomly rewires only the starting points or only the endpoints of directed edges- Various
igraph_local_scan_*functions provide local counts and statistics of neighborhoods igraph_sample_sphere_surface()samples points uniformly from the surface of a sphereigraph_sample_sphere_volume()samples points uniformly from the volume of a sphereigraph_sample_dirichlet()samples points from a Dirichlet distributionigraph_malloc(), to be paired with the existingigraph_free()
igraph_degree_sequence_game(): new method added for uniform sampling:IGRAPH_DEGSEQ_SIMPLE_NO_MULTIPLE_UNIFORMigraph_modularity_matrix(): removedmembershipargument (PR #1194)igraph_avg_nearest_neighbor_degree(): addedmodeandneighbor_degree_modearguments (PR #1214).igraph_get_all_simple_paths(): addedcutoffargument (PR #1232).igraph_unfold_tree(): no longer preserves edge ordering of original graphigraph_decompose(): support strongly connected components
- The Bliss library was updated to version 0.73
- igraph now uses the high-performance Cliquer library to find (non-maximal) cliques
- Provide proper support for Windows, using
__declspec(dllexport)and__declspec(dllimport)forDLLs and static usage by using#define IGRAPH_STATIC 1. - Provided integer versions of
dqueueandstackdata types.