Identity

指定されたサイズ (必ずしも正方形ではない) の単位行列を作成する静的関数です。単位行列では、主対角に1が含まれ、その他の部分には0が含まれます。主対角は、[0,0]、[1,1]、[2,2] など、行インデックスと列インデックスが等しい行列要素で構成されます。新しい単位行列を作成します。

既存の行列を単位行列に変換するIdentityメソッドもあります。

static matrix matrix::Identity(
  const ulong  rows,        // 行数
  const ulong  cols,        // 列数
  );
 
void matrix::Identity();
 

パラメータ

rows

[in] n x n行列の行(と列)の数

戻り値

単位行列(主対角に 1 を持つ正方行列)

 

MQL5の例

matrix identity=matrix::Identity(3,3);
Print("identity = \n", identity);  
/*
  identity =
  [[1,0,0]
   [0,1,0]
   [0,0,1]]
*/
matrix identity2(3,5);
identity2.Identity();
Print("identity2 = \n", identity2);  
/*
  identity2 =
  [[1,0,0,0,0]
   [0,1,0,0,0]
   [0,0,1,0,0]]
*/

Pythonの例

np.identity(3)
array([[1., 0., 0.],
      [0., 1., 0.],
      [0., 0., 1.]])