is_aperiodic#
- is_aperiodic(G)[源代码]#
返回true
G
是非周期性的。如果没有整数k>1除以图中每个周期的长度,则有向图是非周期的。
- 参数
- G网络X有向图
有向图
- 返回
- 布尔尔
如果图是非周期的,则为真;否则为假
- 加薪
- NetworkXError
如果
G
不定向
笔记
它使用中概述的方法 [1], 它运行在 \(O(m)\) 给出的时间 \(m\) 中的边
G
。请注意,如果一个图是非循环的,则它不是非周期的,因为每个整数平凡除以长度为0的圈。工具书类
- 1
Jarvis,J.P.;Shier,D.R.(1996),“有限马尔可夫链的图论分析”,in Shier,D.R.;Wallenius,K.T.,应用数学建模:多学科方法,CRC出版社。
实例
由一个圈组成的图,其长度为2。因此
k = 2
除以图中每个圈的长度,因此图是 非周期性 ::>>> DG = nx.DiGraph([(1, 2), (2, 1)]) >>> nx.is_aperiodic(DG) False
一种由两个圈组成的图,一个圈的长度为2,另一个圈的长度为3。圈的长度是互素的,因此没有单一的k值,其中
k > 1
它划分了每个循环长度,因此该图是 非周期性的 ::>>> DG = nx.DiGraph([(1, 2), (2, 3), (3, 1), (1, 4), (4, 1)]) >>> nx.is_aperiodic(DG) True
由两个圈组成的图:一个长为2,另一个长为4。这两个圈的长度有一个公因子
k = 2
,因此该图是 非周期性 ::>>> DG = nx.DiGraph([(1, 2), (2, 1), (3, 4), (4, 5), (5, 6), (6, 3)]) >>> nx.is_aperiodic(DG) False
一个非循环图,因此该图是 非周期性 ::
>>> DG = nx.DiGraph([(1, 2), (2, 3)]) >>> nx.is_aperiodic(DG) False