2017年12月16日土曜日

学習環境

ラング線形代数学(上)(S.ラング (著)、芹沢 正三 (翻訳)、ちくま学芸文庫)の3章(行列)、3(行列の乗法)、練習問題8.を取り組んでみる。


  1. X = 0 , 1 , 0

    の場合、 XA は行列 A の第2行ベクトル、

    X = 0 , 0 , 1

    の場合、 XA は行列 A の第3行の転値行列となる。

    一般化した場合、第 n 行ベクトルとなる。

    実際に3×3の場合で確認。

    0 , 1 , 0 ( a 11 a · 12 a 13 a 21 a 22 a 23 a 31 a 32 a 33 ) = a 21 , a 22 , a 23
    0 , 0 , 1 ( a 11 a 12 a 1.3 a 21 a 22 a 23 a 31 a 32 a 33 ) = a 31 , a 32 , a 33

コード(Emacs)

Python 3

#!/usr/bin/env python3
from sympy import pprint, symbols, Matrix

A = Matrix([[symbols(f'a{i + 1}{j + 1}') for j in range(3)]
            for i in range(3)])
X1 = Matrix([[0, 1, 0]])
X2 = Matrix([[0, 0, 1]])

for t in [A, X1, X2, X1 * A, X2 * A]:
    pprint(t)
    print()

入出力結果(Terminal, Jupyter(IPython))

$ ./sample8.py
⎡a₁₁  a₁₂  a₁₃⎤
⎢             ⎥
⎢a₂₁  a₂₂  a₂₃⎥
⎢             ⎥
⎣a₃₁  a₃₂  a₃₃⎦

[0  1  0]

[0  0  1]

[a₂₁  a₂₂  a₂₃]

[a₃₁  a₃₂  a₃₃]

$

0 コメント:

コメントを投稿