Igorで行列計算
例として以下の行列T1とT2の掛け算をIgorで計算する。
となる。
以上の計算をigorで行った。
以下はそのプログラム例
Make /N=(2,2) T1,T2,T3 //2行2列の行列T1,T2,T3を定義
T1[][0] = {1,2} //0列目に値代入(行列番号は0から始まる)
T1[][1] = {3,4} //1列目に値代入
T2[][0] = {5,6}
T2[][1] = {7,8}
MatrixMultiply T2,T1 //行列の掛け算
T3 = M_product //結果はM_productとして保存される。
AppendToTable T1,T2,T3
ただし行列の掛け算部は,以下の演算子”MatrixOp“を用いたほうが簡単。
行列掛け算部の2行は次の1行と等価である。
MatrixOp /O T3 = T2 x T1 //行列の掛け算はx(エックス)を用いる。
MatrixOpを用いる場合には,T3を前に宣言しておく必要なし。
しかし,ここでは逆に,宣言してしまっているから”/O”フラグで上書き許可してる。
広告