ドキュメンテーションヘルプ センター
最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。
行列のべき乗
C = A^B
C = mpower(A,B)
例
C = A^B は、A の B 乗を計算して、C に結果を返します。
A
B
C
C = mpower(A,B) は A^B の代替方法として実行できますが、まれにしか使われません。これにより、クラスの演算子のオーバーロードが可能です。
A^B
すべて折りたたむ
2 行 2 列の行列を作成し、それを二乗します。
A = [1 2; 3 4]; C = A^2
C = 2×2 7 10 15 22
構文 A^2 は、A*A と等価です。
A^2
A*A
2 行 2 列の行列を作成し、それをスカラーの指数として使用します。
B = [0 1; 1 0]; C = 2^B
C = 2×2 1.2500 0.7500 0.7500 1.2500
C の計算では、最初に行列 B の固有値 D および固有ベクトル V を求めます。
D
V
[V,D] = eig(B)
V = 2×2 -0.7071 0.7071 0.7071 0.7071
D = 2×2 -1 0 0 1
次に、2^B = V*2^D/V の式を使用してべき乗を計算します。
2^B = V*2^D/V
C = V*2^D/V
オペランド。スカラーまたは行列として指定します。入力 A と B は、次の組み合わせのいずれかでなければなりません。
基数 A が正方行列で、指数 B がスカラー。B が正の整数の場合、べき乗は行列乗算の繰り返しによって計算されます。B が他の値の場合、固有値と固有ベクトルを使用して計算します。
基数 A がスカラーで、指数 B が正方行列。計算には固有値と固有ベクトルが使用されます。
整数データ型のオペランドは、複素数にできません。
データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | char 複素数のサポート: あり
single
double
int8
int16
int32
int64
uint8
uint16
uint32
uint64
logical
char
MATLAB® は同じ方法で X^(-1) と inv(X) を計算します。両方とも同じ制限を受けます。詳細については、inv を参照してください。
X^(-1)
inv(X)
inv
使用上の注意事項および制限事項:
A が 2 行 2 列以上の行列で B が Inf または -Inf の場合、A^B は NaN 値の行列を返します。
Inf
-Inf
NaN
A^b については、b が整数でないスカラーの場合、A と b のうち少なくとも一方が複素数でなければなりません。
A^b
b
コード生成では、この関数のスパース行列入力はサポートされません。
この関数は GPU 配列を完全にサポートしています。詳細については、GPU での MATLAB 関数の実行 (Parallel Computing Toolbox)を参照してください。
mtimes | power | times
mtimes
power
times
この例の変更されたバージョンがシステム上にあります。代わりにこのバージョンを開きますか?
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Contact your local office