def test_eigenvectors(self): try: import numpy as N eigenval=N.linalg.eigvals except ImportError: raise SkipTest('NumPy not available.') cs='ddiiddid' G=nxt.threshold_graph(cs) (tgeval,tgevec)=nxt.eigenvectors(cs) dot=N.dot assert_equal([ abs(dot(lv,lv)-1.0)<1e-9 for lv in tgevec ], [True]*8) lapl=nx.laplacian_matrix(G)
def test_eigenvectors(self): try: import numpy as N eigenval=N.linalg.eigvals except ImportError: raise SkipTest('NumPy not available.') cs='ddiiddid' G=nxt.threshold_graph(cs) (tgeval,tgevec)=nxt.eigenvectors(cs) dot=N.dot assert_equal([ abs(dot(lv,lv)-1.0)<1e-9 for lv in tgevec ], [True]*8) lapl=nx.laplacian(G) tgev=[ dot(lv,dot(lapl,lv)) for lv in tgevec ] assert_true(sum([abs(c-d) for c,d in zip(tgev,tgeval)]) < 1e-9) tgev.sort() lev=list(eigenval(lapl)) lev.sort() assert_true(sum([abs(c-d) for c,d in zip(tgev,lev)]) < 1e-9)