Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pythonで線形代数の行列の条件数を計算する


線形代数の行列の条件数を計算するには、Pythonでnumpy.linalg.cond()メソッドを使用します。このメソッドは、pの値に応じて、7つの異なるノルムのいずれかを使用して条件数を返すことができます。

行列の条件数を返します。無限かもしれません。 xの条件数は、xのノルムにxの逆数のノルムを掛けたものとして定義されます。ノルムは、通常のL2ノルム、または他の多くの行列ノルムの1つにすることができます。最初のパラメーターは、条件数が求められる行列であるxです。 2番目のパラメーターは、条件数の計算で使用されるノルムの次数であるpです。

ステップ

まず、必要なライブラリをインポートします-

import numpy as np
from numpy import linalg as LA

配列を作成する-

arr = np.array([[ 1, 1, 0],
   [1, 0, 1],
   [1, 0, 0]])

配列を表示する-

print("Our Array...\n",arr)

寸法を確認してください-

print("\nDimensions of our Array...\n",arr.ndim)

データ型を取得-

print("\nDatatype of our Array object...\n",arr.dtype)

形をとる-

print("\nShape of our Array object...\n",arr.shape)

線形代数の行列の条件数を計算するには、Pythonでnumpy.linalg.cond()メソッドを使用します-

print("\nResult...\n",LA.cond(arr))

import numpy as np
from numpy import linalg as LA

# Create an array
arr = np.array([[ 1, 1, 0],
   [1, 0, 1],
   [1, 0, 0]])

# Display the array
print("Our Array...\n",arr)

# Check the Dimensions
print("\nDimensions of our Array...\n",arr.ndim)

# Get the Datatype
print("\nDatatype of our Array object...\n",arr.dtype)

# Get the Shape
print("\nShape of our Array object...\n",arr.shape)

# To compute the condition number of a matrix in linear algebra, use the numpy.linalg.cond() method in Python
print("\nResult...\n",LA.cond(arr))

出力

Our Array...
[[1 1 0]
[1 0 1]
[1 0 0]]

Dimensions of our Array...
2

Datatype of our Array object...
int64

Shape of our Array object...
(3, 3)

Result...
3.7320508075688776


  1. Pythonで複雑なエルミート行列または実対称行列の固有値を計算します

    複雑なエルミート行列または実対称行列の固有値を計算するには、numpy.eigvalsh()メソッドを使用します。このメソッドは、固有値を昇順で返し、それぞれがその多重度に従って繰り返されます。 最初のパラメーターaは、固有値が計算される複素数値または実数値の行列です。 2番目のパラメーターであるUPLOは、計算がaの下三角部分(「L」、デフォルト)で行われるか、上三角部分(「U」)で行われるかを指定します。この値に関係なく、エルミート行列の概念を維持するために、対角線の実数部のみが計算で考慮されます。したがって、対角線の虚数部は常にゼロとして扱われます。 ステップ まず、必要なライブラリ

  2. Pythonの線形代数でコレスキー分解を返す

    コレスキー分解を返すには、numpy.linalg.cholesky()メソッドを使用します。正方行列aのコレスキー分解L*L.Hを返します。ここで、Lは下三角行列で、.Hは共役転置演算子です。 aはエルミートで正定値でなければなりません。 aがエルミートであるかどうかを確認するためのチェックは実行されません。さらに、aの下三角要素と対角要素のみが使用されます。実際にはLのみが返されます。 次に、パラメーターaは、エルミート(すべての要素が実数の場合は対称)の正定値入力行列です。このメソッドは、aの上三角または下三角のコレスキー因子を返します。 aが行列オブジェクトの場合、行列オブジェクトを