バージョン1.8では、 np.linalg
いくつかのルーチンは、行列の「スタック」上で動作することができます。つまり、複数の行列が積み重ねられている場合、ルーチンは結果を計算できます。たとえば、 A
は2つの積み重ねられた3行3列の行列として解釈されます。
np.random.seed(123)
A = np.random.rand(2,3,3)
b = np.random.rand(2,3)
x = np.linalg.solve(A, b)
print np.dot(A[0,:,:], x[0,:])
# array([ 0.53155137, 0.53182759, 0.63440096])
print b[0,:]
# array([ 0.53155137, 0.53182759, 0.63440096])
公式のnp
ドキュメントはa : (..., M, M) array_like
ようなパラメータ指定を介してこれを指定していますa : (..., M, M) array_like
。