Pythonで固有値問題を解く方法についてメモしておく。 メジャーな方法として、以下の3つがある numpy.linalgの関数を使う。 scipy.linalgの関数を使う。 scipy.sparse.linalgの関数を使う。 numpy.linalgとscipy.linalgには以下の4つの関数がある。 eig:一般の行列の固有値・固有ベクトルを求める。 eigh:エルミート(or 実対称)行列の固有値・固有ベクトルを求める。 eigvals:一般の行列の固有値のみを求める。 eigvalsh:エルミート(or 実対称)行列の固有値のみを求める。 関数名のhはHermitianの略。Scipyだと一般化固有値問題*1もオプションで出来る。 ちなみに、scipy.linalgはnumpy.linalgに含まれる関数はすべて含んでいて、さらに追加で他の関数も含んでいる。また、scipy.