summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoss Barnowski <rossbar@berkeley.edu>2023-03-02 06:40:41 -0800
committerGitHub <noreply@github.com>2023-03-02 15:40:41 +0100
commit4a6f2f43508d26d0eb9884a24cba28721d5fb875 (patch)
treeb447c24866362f1a9fbb53c963922fc43d5b6f4c
parent55cfe3b56e846d83cd9e66745aaf77b4da9532da (diff)
downloadnetworkx-4a6f2f43508d26d0eb9884a24cba28721d5fb875.tar.gz
Add docstring for dorogovtsev_goltsev_mendes generator (#6450)
* Add docstring to dgm generator based on arXiv descr. * grammar nit.
-rw-r--r--networkx/generators/classic.py33
1 files changed, 31 insertions, 2 deletions
diff --git a/networkx/generators/classic.py b/networkx/generators/classic.py
index a62229ff..f1ed4ed5 100644
--- a/networkx/generators/classic.py
+++ b/networkx/generators/classic.py
@@ -403,9 +403,38 @@ def cycle_graph(n, create_using=None):
def dorogovtsev_goltsev_mendes_graph(n, create_using=None):
"""Returns the hierarchically constructed Dorogovtsev-Goltsev-Mendes graph.
- n is the generation.
- See: arXiv:/cond-mat/0112143 by Dorogovtsev, Goltsev and Mendes.
+ The Dorogovtsev-Goltsev-Mendes[1_] procedure produces a scale-free graph
+ deterministically with the following properties for a given `n`:
+ - Total number of nodes = ``3 * (3**n + 1) / 2``
+ - Total number of edges = ``3 ** (n + 1)``
+ Parameters
+ ----------
+ n : integer
+ The generation number.
+
+ create_using : NetworkX Graph, optional
+ Graph type to be returned. Directed graphs and multi graphs are not
+ supported.
+
+ Returns
+ -------
+ G : NetworkX Graph
+
+ Examples
+ --------
+ >>> G = nx.dorogovtsev_goltsev_mendes_graph(3)
+ >>> G.number_of_nodes()
+ 15
+ >>> G.number_of_edges()
+ 27
+ >>> nx.is_planar(G)
+ True
+
+ References
+ ----------
+ .. [1]: Dorogotsev S.N., Goltsev A.V., and Mendes J.F.F "Pseudofractal
+ Scale-free Web". arXiv:cond-mat/0112143
"""
G = empty_graph(0, create_using)
if G.is_directed():