Guest User

Untitled

a guest
Jun 17th, 2018
103
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 20.30 KB | None | 0 0
  1. $ python3
  2. Python 3.6.5 (default, May 11 2018, 04:00:52)
  3. [GCC 8.1.0] on linux
  4. Type "help", "copyright", "credits" or "license" for more information.
  5. >>> d=json.load(open('gamma-dynmat.json'))
  6. Traceback (most recent call last):
  7. File "<stdin>", line 1, in <module>
  8. FileNotFoundError: [Errno 2] No such file or directory: 'gamma-dynmat.json'
  9. >>> d=json.load(open('whyyyyyyy-091-a/gamma-dynmat.json'))
  10. >>> list(d)
  11. ['dim', 'complex-blocks', 'col', 'row-ptr']
  12. >>> np.array(d['complex-blocks'].shape)
  13. Traceback (most recent call last):
  14. File "<stdin>", line 1, in <module>
  15. AttributeError: 'list' object has no attribute 'shape'
  16. >>> np.array(d['complex-blocks']).shape
  17. (73164, 2, 3, 3)
  18. >>> np.array(d['complex-blocks'])[:,0]
  19. array([[[ 5.69604874e+00, -7.39489409e-17, 6.56296758e-16],
  20. [-7.39489409e-17, 5.69604874e+00, 1.47897861e-16],
  21. [ 6.56296758e-16, 1.47897861e-16, 1.22197388e+00]],
  22.  
  23. [[-1.24077979e-01, -7.19405585e-02, 7.43219379e-04],
  24. [ 1.98967136e-01, -6.72204767e-02, 4.66179154e-04],
  25. [-6.14371767e-04, 8.43503480e-04, 8.52878657e-02]],
  26.  
  27. [[-1.36438974e-01, -1.91830512e-01, 3.21133001e-05],
  28. [ 7.90771824e-02, -5.48594815e-02, -8.76736440e-04],
  29. [ 1.03768133e-03, 1.10309818e-04, 8.52878657e-02]],
  30.  
  31. ...,
  32.  
  33. [[-2.64307305e-02, -1.28317223e-01, -4.23309558e-04],
  34. [ 1.42590471e-01, -1.64867725e-01, 9.53813297e-04],
  35. [-7.75332679e-04, -4.10557286e-04, 8.52878657e-02]],
  36.  
  37. [[-1.35262114e-01, -7.87987349e-02, 7.89456533e-04],
  38. [ 1.86885598e-01, -5.68633855e-02, 1.58756604e-03],
  39. [-2.02130834e-03, 1.74118001e-03, 8.50622129e-02]],
  40.  
  41. [[ 5.71467463e+00, -1.78455127e-02, 8.48146847e-03],
  42. [-1.78455127e-02, 5.72758720e+00, -1.04347145e-02],
  43. [ 8.48146847e-03, -1.04347145e-02, 1.21963394e+00]]])
  44. >>> np.array(d['complex-blocks'])[:,1]
  45. array([[[ 0., 0., -0.],
  46. [-0., 0., -0.],
  47. [ 0., 0., 0.]],
  48.  
  49. [[ 0., 0., 0.],
  50. [ 0., 0., 0.],
  51. [ 0., 0., 0.]],
  52.  
  53. [[ 0., 0., 0.],
  54. [ 0., 0., 0.],
  55. [ 0., 0., 0.]],
  56.  
  57. ...,
  58.  
  59. [[ 0., 0., 0.],
  60. [ 0., 0., 0.],
  61. [ 0., 0., 0.]],
  62.  
  63. [[ 0., 0., 0.],
  64. [ 0., 0., 0.],
  65. [ 0., 0., 0.]],
  66.  
  67. [[ 0., 0., 0.],
  68. [ 0., 0., 0.],
  69. [ 0., 0., 0.]]])
  70. >>> np.array(d['complex-blocks'])[:,0]
  71. array([[[ 5.69604874e+00, -7.39489409e-17, 6.56296758e-16],
  72. [-7.39489409e-17, 5.69604874e+00, 1.47897861e-16],
  73. [ 6.56296758e-16, 1.47897861e-16, 1.22197388e+00]],
  74.  
  75. [[-1.24077979e-01, -7.19405585e-02, 7.43219379e-04],
  76. [ 1.98967136e-01, -6.72204767e-02, 4.66179154e-04],
  77. [-6.14371767e-04, 8.43503480e-04, 8.52878657e-02]],
  78.  
  79. [[-1.36438974e-01, -1.91830512e-01, 3.21133001e-05],
  80. [ 7.90771824e-02, -5.48594815e-02, -8.76736440e-04],
  81. [ 1.03768133e-03, 1.10309818e-04, 8.52878657e-02]],
  82.  
  83. ...,
  84.  
  85. [[-2.64307305e-02, -1.28317223e-01, -4.23309558e-04],
  86. [ 1.42590471e-01, -1.64867725e-01, 9.53813297e-04],
  87. [-7.75332679e-04, -4.10557286e-04, 8.52878657e-02]],
  88.  
  89. [[-1.35262114e-01, -7.87987349e-02, 7.89456533e-04],
  90. [ 1.86885598e-01, -5.68633855e-02, 1.58756604e-03],
  91. [-2.02130834e-03, 1.74118001e-03, 8.50622129e-02]],
  92.  
  93. [[ 5.71467463e+00, -1.78455127e-02, 8.48146847e-03],
  94. [-1.78455127e-02, 5.72758720e+00, -1.04347145e-02],
  95. [ 8.48146847e-03, -1.04347145e-02, 1.21963394e+00]]])
  96. >>> from scipy.sparse import bsr_matrix
  97. >>> bsr_matrix((np.array(d['complex-blocks'])[:,0], d['col'], d['row-ptr'])
  98. ...
  99. KeyboardInterrupt
  100. >>> m=bsr_matrix((np.array(d['complex-blocks'])[:,0], d['col'], d['row-ptr']), d['dim'])
  101. Traceback (most recent call last):
  102. File "<stdin>", line 1, in <module>
  103. File "/home/lampam/asd/clone/scipy/scipy/sparse/bsr.py", line 213, in __init__
  104. self.check_format(full_check=False)
  105. File "/home/lampam/asd/clone/scipy/scipy/sparse/bsr.py", line 249, in check_format
  106. (len(self.indptr), M//R + 1))
  107. ValueError: index pointer size (365) should be (122)
  108. >>> d['dim']
  109. [364, 364]
  110. >>> max(d['row-ptr'])
  111. 73164
  112. >>> max(d['col'])
  113. 363
  114. >>> m=bsr_matrix((np.array(d['complex-blocks'])[:,0], d['col'], d['row-ptr']), tuple(3*x for x in d['dim']))
  115. >>> m
  116. <1092x1092 sparse matrix of type '<class 'numpy.float64'>'
  117. with 658476 stored elements (blocksize = 3x3) in Block Sparse Row format>
  118. >>> import scipy.sparse.linalg as spla
  119. >>> spla.eigsh(m, k=4, sigma=0, which='LA')
  120. /home/lampam/asd/clone/scipy/scipy/sparse/linalg/dsolve/linsolve.py:295: SparseEfficiencyWarning: splu requires CSC matrix format
  121. warn('splu requires CSC matrix format', SparseEfficiencyWarning)
  122. 2 iterations
  123. (array([3.10594774e-06, 3.10599138e-06, 1.51204583e-04, 2.19732931e-03]), array([[ 4.61343009e-02, -2.15809055e-02, -2.35679865e-02,
  124. -1.13120587e-04],
  125. [ 2.15800151e-02, 4.61470767e-02, -1.64663663e-03,
  126. -7.92368811e-06],
  127. [ 2.76583549e-05, -7.59958518e-09, 5.09959618e-02,
  128. -6.41123842e-02],
  129. ...,
  130. [-4.65772367e-02, 2.25835198e-02, 1.97544783e-02,
  131. 1.02979021e-04],
  132. [-2.18463087e-02, -4.52288143e-02, 4.38217677e-02,
  133. 1.35183692e-04],
  134. [-2.17377649e-03, 7.09817990e-04, 2.80205556e-02,
  135. -5.73705949e-02]]))
  136. >>> spla.eigsh(m, k=4, sigma=0, which='SA')
  137. ^CTraceback (most recent call last):
  138. File "<stdin>", line 1, in <module>
  139. File "/home/lampam/asd/clone/scipy/scipy/sparse/linalg/eigen/arpack/arpack.py", line 1658, in eigsh
  140. params.iterate()
  141. File "/home/lampam/asd/clone/scipy/scipy/sparse/linalg/eigen/arpack/arpack.py", line 537, in iterate
  142. self.ipntr, self.workd, self.workl, self.info)
  143. KeyboardInterrupt
  144. >>> (evals,evecs) = spla.eigsh(m, k=4, sigma=0, maxiter=30, ncv=25 which='SA')
  145. File "<stdin>", line 1
  146. (evals,evecs) = spla.eigsh(m, k=4, sigma=0, maxiter=30, ncv=25 which='SA')
  147. ^
  148. SyntaxError: invalid syntax
  149. >>> (evals,evecs) = spla.eigsh(m, k=4, sigma=0, maxiter=30, ncv=25, which='SA')
  150. 31 iterations
  151. Traceback (most recent call last):
  152. File "<stdin>", line 1, in <module>
  153. File "/home/lampam/asd/clone/scipy/scipy/sparse/linalg/eigen/arpack/arpack.py", line 1658, in eigsh
  154. params.iterate()
  155. File "/home/lampam/asd/clone/scipy/scipy/sparse/linalg/eigen/arpack/arpack.py", line 570, in iterate
  156. self._raise_no_convergence()
  157. File "/home/lampam/asd/clone/scipy/scipy/sparse/linalg/eigen/arpack/arpack.py", line 375, in _raise_no_convergence
  158. raise ArpackNoConvergence(msg % (num_iter, k_ok, self.k), ev, vec)
  159. scipy.sparse.linalg.eigen.arpack.arpack.ArpackNoConvergence: ARPACK error -1: No convergence (31 iterations, 3/4 eigenvectors converged)
  160. >>> (evals,evecs) = spla.eigsh(m, k=4, sigma=0, maxiter=30, ncv=25, which='SA')
  161. 1 iterations
  162. >>> evals
  163. array([-1.41933476e-04, -7.42441034e-10, -7.42440603e-10, -2.56385420e-15])
  164. >>> 15.6333043006705 * 33.3564095198152 * abs(-1.41933476e-04) ** 0.5
  165. 6.212587206416409
  166. >>> (evals,evecs) = spla.eigsh(m, k=4, sigma=0, maxiter=30, ncv=25, which='SA')
  167. 31 iterations
  168. Traceback (most recent call last):
  169. File "<stdin>", line 1, in <module>
  170. File "/home/lampam/asd/clone/scipy/scipy/sparse/linalg/eigen/arpack/arpack.py", line 1658, in eigsh
  171. params.iterate()
  172. File "/home/lampam/asd/clone/scipy/scipy/sparse/linalg/eigen/arpack/arpack.py", line 570, in iterate
  173. self._raise_no_convergence()
  174. File "/home/lampam/asd/clone/scipy/scipy/sparse/linalg/eigen/arpack/arpack.py", line 375, in _raise_no_convergence
  175. raise ArpackNoConvergence(msg % (num_iter, k_ok, self.k), ev, vec)
  176. scipy.sparse.linalg.eigen.arpack.arpack.ArpackNoConvergence: ARPACK error -1: No convergence (31 iterations, 3/4 eigenvectors converged)
  177. >>> (evals,evecs) = spla.eigsh(m, k=4, sigma=0, maxiter=30, ncv=25, which='SA')
  178. 31 iterations
  179. Traceback (most recent call last):
  180. File "<stdin>", line 1, in <module>
  181. File "/home/lampam/asd/clone/scipy/scipy/sparse/linalg/eigen/arpack/arpack.py", line 1658, in eigsh
  182. params.iterate()
  183. File "/home/lampam/asd/clone/scipy/scipy/sparse/linalg/eigen/arpack/arpack.py", line 570, in iterate
  184. self._raise_no_convergence()
  185. File "/home/lampam/asd/clone/scipy/scipy/sparse/linalg/eigen/arpack/arpack.py", line 375, in _raise_no_convergence
  186. raise ArpackNoConvergence(msg % (num_iter, k_ok, self.k), ev, vec)
  187. scipy.sparse.linalg.eigen.arpack.arpack.ArpackNoConvergence: ARPACK error -1: No convergence (31 iterations, 3/4 eigenvectors converged)
  188. >>> (evals,evecs) = spla.eigsh(m, k=4, sigma=0, maxiter=30, ncv=25, which='SA')
  189. 1 iterations
  190. >>> evals
  191. array([-3.37356231e-04, -7.42441038e-10, -7.42440584e-10, -2.56385420e-15])
  192. >>> 15.6333043006705 * 33.3564095198152 * abs(-3.37356231e-04) ** 0.5
  193. 9.577991483650955
  194. >>> m @ evec[0,:]
  195. Traceback (most recent call last):
  196. File "<stdin>", line 1, in <module>
  197. NameError: name 'evec' is not defined
  198. >>> m @ evecs[0,:]
  199. Traceback (most recent call last):
  200. File "<stdin>", line 1, in <module>
  201. File "/home/lampam/asd/clone/scipy/scipy/sparse/base.py", line 559, in __matmul__
  202. return self.__mul__(other)
  203. File "/home/lampam/asd/clone/scipy/scipy/sparse/base.py", line 497, in __mul__
  204. raise ValueError('dimension mismatch')
  205. ValueError: dimension mismatch
  206. >>> m @ evecs[0,None,:]
  207. Traceback (most recent call last):
  208. File "<stdin>", line 1, in <module>
  209. File "/home/lampam/asd/clone/scipy/scipy/sparse/base.py", line 559, in __matmul__
  210. return self.__mul__(other)
  211. File "/home/lampam/asd/clone/scipy/scipy/sparse/base.py", line 515, in __mul__
  212. raise ValueError('dimension mismatch')
  213. ValueError: dimension mismatch
  214. >>> m @ evecs[[0],:]
  215. Traceback (most recent call last):
  216. File "<stdin>", line 1, in <module>
  217. File "/home/lampam/asd/clone/scipy/scipy/sparse/base.py", line 559, in __matmul__
  218. return self.__mul__(other)
  219. File "/home/lampam/asd/clone/scipy/scipy/sparse/base.py", line 515, in __mul__
  220. raise ValueError('dimension mismatch')
  221. ValueError: dimension mismatch
  222. >>> m @ evecs[0,:][None,:]
  223. Traceback (most recent call last):
  224. File "<stdin>", line 1, in <module>
  225. File "/home/lampam/asd/clone/scipy/scipy/sparse/base.py", line 559, in __matmul__
  226. return self.__mul__(other)
  227. File "/home/lampam/asd/clone/scipy/scipy/sparse/base.py", line 515, in __mul__
  228. raise ValueError('dimension mismatch')
  229. ValueError: dimension mismatch
  230. >>> evecs[0,:]
  231. array([ 3.74039029e-02, 5.20195025e-02, -6.40403185e-03, -6.26245188e-10])
  232. >>> m @ evecs[:,0]
  233. array([ 0.33432849, -0.09322168, -0.00890129, ..., 0.105405 ,
  234. -0.29197974, -0.02978163])
  235. >>> m @ evecs[:,0] / evecs[:,0]
  236. array([ 8.93833177, 1.96571957, -2.34015557, ..., -16.79534333,
  237. 18.50840858, -34.77026623])
  238. >>> m @ evecs[:,1] / evecs[:,1]
  239. array([ 2.77632351e-07, 6.29843779e-07, 8.55354915e-01, ...,
  240. 8.68956469e-08, 2.17002838e-06, -4.21830302e-04])
  241. >>> (m @ evecs[:,1]) / evecs[:,1]
  242. array([ 2.77632351e-07, 6.29843779e-07, 8.55354915e-01, ...,
  243. 8.68956469e-08, 2.17002838e-06, -4.21830302e-04])
  244. >>> (m @ evecs[:,2]) / evecs[:,2]
  245. array([ 6.69492082e-06, -2.30612609e-07, -5.34772656e+00, ...,
  246. 2.32376482e-06, -7.19652543e-07, 2.98043380e-04])
  247. >>> (m @ evecs[:,2][None,:]) / evecs[:,2]
  248. Traceback (most recent call last):
  249. File "<stdin>", line 1, in <module>
  250. File "/home/lampam/asd/clone/scipy/scipy/sparse/base.py", line 559, in __matmul__
  251. return self.__mul__(other)
  252. File "/home/lampam/asd/clone/scipy/scipy/sparse/base.py", line 515, in __mul__
  253. raise ValueError('dimension mismatch')
  254. ValueError: dimension mismatch
  255. >>> (m @ evecs[:,2][None,:]) / evecs[:,2][None,:]
  256. Traceback (most recent call last):
  257. File "<stdin>", line 1, in <module>
  258. File "/home/lampam/asd/clone/scipy/scipy/sparse/base.py", line 559, in __matmul__
  259. return self.__mul__(other)
  260. File "/home/lampam/asd/clone/scipy/scipy/sparse/base.py", line 515, in __mul__
  261. raise ValueError('dimension mismatch')
  262. ValueError: dimension mismatch
  263. >>> (m @ evecs[:,2][None,:])
  264. Traceback (most recent call last):
  265. File "<stdin>", line 1, in <module>
  266. File "/home/lampam/asd/clone/scipy/scipy/sparse/base.py", line 559, in __matmul__
  267. return self.__mul__(other)
  268. File "/home/lampam/asd/clone/scipy/scipy/sparse/base.py", line 515, in __mul__
  269. raise ValueError('dimension mismatch')
  270. ValueError: dimension mismatch
  271. >>> evecs[:,2][None,:]
  272. array([[-6.40403185e-03, -5.20194951e-02, -2.13441421e-10, ...,
  273. -5.81539061e-03, -5.20886800e-02, 1.28150719e-05]])
  274. >>> (m @ evecs[:,2][:,None])
  275. array([[-4.28744861e-08],
  276. [ 1.19963515e-08],
  277. [ 1.14142636e-09],
  278. ...,
  279. [-1.35136001e-08],
  280. [ 3.74857510e-08],
  281. [ 3.81944734e-09]])
  282. >>> (m @ evecs[:,2][:,None]) / evecs[:,2][:,None]
  283. array([[ 6.69492082e-06],
  284. [-2.30612609e-07],
  285. [-5.34772656e+00],
  286. ...,
  287. [ 2.32376482e-06],
  288. [-7.19652543e-07],
  289. [ 2.98043380e-04]])
  290. >>> (m @ evecs[:,3][:,None]) / evecs[:,3][:,None]
  291. array([[-2.19304152e-01],
  292. [ 1.81887449e-01],
  293. [ 6.97473644e-11],
  294. ...,
  295. [-4.72068201e-02],
  296. [-1.92302654e+00],
  297. [ 2.33396466e-10]])
  298. >>> (m @ evecs[:,3][:,None] - evals[3] * evecs[:,3][:,None])
  299. array([[ 1.37338170e-10],
  300. [-3.82995035e-11],
  301. [-3.65588819e-12],
  302. ...,
  303. [ 4.32965505e-11],
  304. [-1.19939656e-10],
  305. [-1.22334321e-11]])
  306. >>> (evals,evecs) = spla.eigsh(m, k=4, sigma=0, maxiter=30, ncv=25, which='LA')
  307. ^C^[[A^[[D^[[D^[[D^[[D^[[D^[[D^C^C^C^C^C^C^C^CTraceback (most recent call last):
  308. File "<stdin>", line 1, in <module>
  309. File "/home/lampam/asd/clone/scipy/scipy/sparse/linalg/eigen/arpack/arpack.py", line 1613, in eigsh
  310. symmetric=True, tol=tol)
  311. File "/home/lampam/asd/clone/scipy/scipy/sparse/linalg/eigen/arpack/arpack.py", line 1049, in get_OPinv_matvec
  312. return get_inv_matvec(A, symmetric=symmetric, tol=tol)
  313. File "/home/lampam/asd/clone/scipy/scipy/sparse/linalg/eigen/arpack/arpack.py", line 1042, in get_inv_matvec
  314. return SpLuInv(M).matvec
  315. File "/home/lampam/asd/clone/scipy/scipy/sparse/linalg/eigen/arpack/arpack.py", line 915, in __init__
  316. self.M_lu = splu(M)
  317. File "/home/lampam/asd/clone/scipy/scipy/sparse/linalg/dsolve/linsolve.py", line 309, in splu
  318. ilu=False, options=_options)
  319. KeyboardInterrupt
  320. >>> (evals,evecs) = spla.eigsh(m, k=4, maxiter=30, ncv=25, which='LA')
  321. 31 iterations
  322. Traceback (most recent call last):
  323. File "<stdin>", line 1, in <module>
  324. File "/home/lampam/asd/clone/scipy/scipy/sparse/linalg/eigen/arpack/arpack.py", line 1658, in eigsh
  325. params.iterate()
  326. File "/home/lampam/asd/clone/scipy/scipy/sparse/linalg/eigen/arpack/arpack.py", line 570, in iterate
  327. self._raise_no_convergence()
  328. File "/home/lampam/asd/clone/scipy/scipy/sparse/linalg/eigen/arpack/arpack.py", line 375, in _raise_no_convergence
  329. raise ArpackNoConvergence(msg % (num_iter, k_ok, self.k), ev, vec)
  330. scipy.sparse.linalg.eigen.arpack.arpack.ArpackNoConvergence: ARPACK error -1: No convergence (31 iterations, 0/4 eigenvectors converged)
  331. >>> (evals,evecs) = spla.eigsh(m, k=4, ncv=25, which='LA')
  332. 30 iterations
  333. >>> evals
  334. array([10.85983542, 10.85984277, 10.86362013, 10.86362886])
  335. >>> (m @ evecs[:,2][:,None]) / evecs[:,2][:,None]
  336. array([[10.8625413 ],
  337. [10.85813506],
  338. [10.86362013],
  339. ...,
  340. [10.86362013],
  341. [10.86362013],
  342. [10.86362013]])
  343. >>> (m @ evecs[:,3][:,None]) / evecs[:,3][:,None]
  344. array([[10.83867541],
  345. [10.86291009],
  346. [10.86362886],
  347. ...,
  348. [10.86362886],
  349. [10.86362886],
  350. [10.86362886]])
  351. >>> (evals,evecs) = spla.eigsh(m, k=4, sigma=0, maxiter=30, ncv=25, which='SA')
  352. 31 iterations
  353. Traceback (most recent call last):
  354. File "<stdin>", line 1, in <module>
  355. File "/home/lampam/asd/clone/scipy/scipy/sparse/linalg/eigen/arpack/arpack.py", line 1658, in eigsh
  356. params.iterate()
  357. File "/home/lampam/asd/clone/scipy/scipy/sparse/linalg/eigen/arpack/arpack.py", line 570, in iterate
  358. self._raise_no_convergence()
  359. File "/home/lampam/asd/clone/scipy/scipy/sparse/linalg/eigen/arpack/arpack.py", line 375, in _raise_no_convergence
  360. raise ArpackNoConvergence(msg % (num_iter, k_ok, self.k), ev, vec)
  361. scipy.sparse.linalg.eigen.arpack.arpack.ArpackNoConvergence: ARPACK error -1: No convergence (31 iterations, 3/4 eigenvectors converged)
  362. >>> (evals,evecs) = spla.eigsh(m, k=4, sigma=0, maxiter=30, ncv=25, which='SA')
  363. 1 iterations
  364. >>> evals
  365. array([-6.54957529e-04, -7.42441065e-10, -7.42440575e-10, -2.56385420e-15])
  366. >>> (m @ evecs[:,0][:,None]) / evecs[:,0][:,None]
  367. array([[ 0.04059912],
  368. [ 8.18640569],
  369. [ 1.16094026],
  370. ...,
  371. [ -1.99874594],
  372. [ 8.70126585],
  373. [-12.22762544]])
  374. >>> (evalsL,evecsL) = spla.eigsh(m, k=4, ncv=25, which='LA')
  375. 92 iterations
  376. >>> def normalize(a): return a / np.norm(a)
  377. ...
  378. >>> normalize([1,2,3])
  379. Traceback (most recent call last):
  380. File "<stdin>", line 1, in <module>
  381. File "<stdin>", line 1, in normalize
  382. AttributeError: module 'numpy' has no attribute 'norm'
  383. >>> def normalize(a): return a / a.norm()
  384. ...
  385. >>> normalize(np.array([1,2,3]))
  386. Traceback (most recent call last):
  387. File "<stdin>", line 1, in <module>
  388. File "<stdin>", line 1, in normalize
  389. AttributeError: 'numpy.ndarray' object has no attribute 'norm'
  390. >>> def normalize(a): return a / np.sqrt(np.sum(np.square(a)))
  391. ...
  392. >>> normalize([1,2,3])
  393. array([0.26726124, 0.53452248, 0.80178373])
  394. >>> np.vdot(normalize(m @ evecsL[:,0][:,None]), normalize(evecsL[:,0][:,None]))
  395. 0.9999999999999998
  396. >>> np.vdot(normalize(m @ evecsL[:,1][:,None]), normalize(evecsL[:,1][:,None]))
  397. 1.0
  398. >>> np.vdot(normalize(m @ evecsL[:,2][:,None]), normalize(evecsL[:,2][:,None]))
  399. 1.0
  400. >>> np.vdot(normalize(m @ evecsL[:,2][:,None]), normalize(evecs[:,2][:,None]))
  401. -2.419081482096336e-09
  402. >>> np.vdot(normalize(m @ evecs[:,2][:,None]), normalize(evecs[:,2][:,None]))
  403. -0.0017878162688716906
  404. >>> (evalsSA,evecsSA) = spla.eigsh(m, k=3, maxiter=30, ncv=25, which='SA')
  405. 31 iterations
  406. Traceback (most recent call last):
  407. File "<stdin>", line 1, in <module>
  408. File "/home/lampam/asd/clone/scipy/scipy/sparse/linalg/eigen/arpack/arpack.py", line 1658, in eigsh
  409. params.iterate()
  410. File "/home/lampam/asd/clone/scipy/scipy/sparse/linalg/eigen/arpack/arpack.py", line 570, in iterate
  411. self._raise_no_convergence()
  412. File "/home/lampam/asd/clone/scipy/scipy/sparse/linalg/eigen/arpack/arpack.py", line 375, in _raise_no_convergence
  413. raise ArpackNoConvergence(msg % (num_iter, k_ok, self.k), ev, vec)
  414. scipy.sparse.linalg.eigen.arpack.arpack.ArpackNoConvergence: ARPACK error -1: No convergence (31 iterations, 0/3 eigenvectors converged)
  415. >>> (evalsSA,evecsSA) = spla.eigsh(m, k=3, maxiter=30, ncv=25, which='SA')
  416. ^CTraceback (most recent call last):
  417. File "<stdin>", line 1, in <module>
  418. File "/home/lampam/asd/clone/scipy/scipy/sparse/linalg/eigen/arpack/arpack.py", line 1658, in eigsh
  419. params.iterate()
  420. File "/home/lampam/asd/clone/scipy/scipy/sparse/linalg/eigen/arpack/arpack.py", line 537, in iterate
  421. self.ipntr, self.workd, self.workl, self.info)
  422. KeyboardInterrupt
  423. >>> (evalsSA,evecsSA) = spla.eigsh(m, k=3, ncv=25, which='SA')
  424. ^CTraceback (most recent call last):
  425. File "<stdin>", line 1, in <module>
  426. File "/home/lampam/asd/clone/scipy/scipy/sparse/linalg/eigen/arpack/arpack.py", line 1658, in eigsh
  427. params.iterate()
  428. File "/home/lampam/asd/clone/scipy/scipy/sparse/linalg/eigen/arpack/arpack.py", line 537, in iterate
  429. self.ipntr, self.workd, self.workl, self.info)
  430. KeyboardInterrupt
  431. >>> (evalsSA,evecsSA) = spla.eigsh(m, k=3, ncv=250, which='SA')
  432. 10 iterations
  433. >>> evalsSA
  434. array([-7.42451197e-10, -7.42437037e-10, -3.93353846e-15])
  435. >>> np.vdot(normalize(m @ evecsSA[:,2][:,None]), normalize(evecsSA[:,2][:,None]))
  436. -0.12631758730141507
  437. >>> np.vdot(normalize(m @ evecsSA[:,1][:,None]), normalize(evecsSA[:,1][:,None]))
  438. -0.9999999994851148
  439. >>> np.vdot(normalize(m @ evecsSA[:,1]), normalize(evecsSA[:,1]))
  440. -0.9999999994851148
  441. >>> np.vdot(normalize(m @ evecsSA[:,0]), normalize(evecsSA[:,0]))
  442. -0.9999999995626186
  443. >>> (evalsSA,evecsSA) = spla.eigsh(m, k=8, ncv=250, which='SA')
  444. 7 iterations
  445. >>> evalsSA
  446. array([-7.42451042e-10, -7.42442909e-10, -1.04697980e-14, 3.10599130e-06,
  447. 3.10599130e-06, 2.19728078e-03, 2.23392624e-03, 2.23392624e-03])
  448. >>> 15.6333043006705 * 33.3564095198152 * abs(3.10599130e-06) ** 0.5
  449. 0.919031074275525
  450. >>> np.vdot(normalize(m @ evecsSA[:,3]), normalize(evecsSA[:,3]))
  451. 1.0000000000000002
  452. >>> np.vdot(normalize(m @ evecsSA[:,4]), normalize(evecsSA[:,4]))
  453. 1.0
  454. >>> np.vdot(normalize(m @ evecsSA[:,5]), normalize(evecsSA[:,5]))
  455. 1.0000000000000002
  456. >>> np.vdot(normalize(m @ evecsSA[:,6]), normalize(evecsSA[:,6]))
  457. 1.0
  458. >>>
Add Comment
Please, Sign In to add comment