2020年2月11日火曜日

学習環境

ラング線形代数学(上) (ちくま学現文庫)(S.ラング (著)、芹沢 正三 (翻訳)、筑摩書房)の3章(行列)、2(行列の積)、練習問題8の解答を求めてみる。



    • X A = [ 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 ]

    • X A = [ 0 0 1 ] A = [ a 31 a 32 a 33 ]

    • 一般化 について。

      行ベクトル X の第 i 要素が1ならば、 XAは行列 A の i 行の行ベクトルである。

コード

#!/usr/bin/env python3
from unittest import TestCase, main
from sympy import MatrixSymbol, Matrix, symbols

print('8.')


def f(i, j):
    if i == j:
        return 1
    return 0


class MyTestCase(TestCase):
    def test(self):
        a = Matrix([[symbols(f'a{i}{j}') for j in range(1, 4)]
                    for i in range(1, 4)])
        for i in range(3):
            x = Matrix([[f(i, j) for j in range(3)]])
            self.assertEqual(x * a, a[i, :])


if __name__ == '__main__':
    main()

入出力結果(Zsh、PowerShell、Terminal、Jupyter(IPython))

% ./sample8.py -v
8.
test (__main__.MyTestCase) ... ok

----------------------------------------------------------------------
Ran 1 test in 0.003s

OK
%

0 コメント:

コメントを投稿