2018年11月20日火曜日

学習環境

線型代数入門 (松坂和夫 数学入門シリーズ 2) (松坂 和夫(著)、岩波書店)の第9章(エルミート双1次形式、内積空間)、2(双1次形式・共役双1次形式の行列表現)、問題2.を取り組んでみる。


  1. 成分について考える。
    和について。

    A + B * = a i j + b i j * = a j i + b j - i = a j - i + b j - i = a j - i + b j - i = A * + B *

    積について。

    A B * = k = 1 n a i k b k j * = k = 1 n a j k b k i - = k = 1 n b k - i a j - k = B * A *

    共役転置行列(随伴行列)の共役転置行列について。

    A * * = a j - i * = a i j = A

コード(Emacs)

Python 3

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

print('2.')


def func(M):
    return M.T.conjugate()


for n in range(2, 5):
    A = Matrix([[random.randrange(10) + random.randrange(10) * I
                 for _ in range(n)]
                for _ in range(n)])
    B = Matrix([[random.randrange(10) + random.randrange(10) * I
                 for _ in range(n)]
                for _ in range(n)])
    A1 = func(A)
    B1 = func(B)
    for t in [A, A1, B, B1,
              func(A + B) == A1 + B1,
              func(A * B) == B1 * A1,
              func(A1) == A]:
        pprint(t)
        print()
    print()

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

$ ./sample2.py
2.
⎡7 + 5⋅ⅈ  8 + 8⋅ⅈ⎤
⎢                ⎥
⎣9 + 4⋅ⅈ   4 + ⅈ ⎦

⎡7 - 5⋅ⅈ  9 - 4⋅ⅈ⎤
⎢                ⎥
⎣8 - 8⋅ⅈ   4 - ⅈ ⎦

⎡2 + 4⋅ⅈ    9⋅ⅈ  ⎤
⎢                ⎥
⎣8 + 5⋅ⅈ  4 + 9⋅ⅈ⎦

⎡2 - 4⋅ⅈ  8 - 5⋅ⅈ⎤
⎢                ⎥
⎣ -9⋅ⅈ    4 - 9⋅ⅈ⎦

True

True

True


⎡4 + 4⋅ⅈ  8 + 5⋅ⅈ  9 + 6⋅ⅈ⎤
⎢                         ⎥
⎢5 + 4⋅ⅈ  2 + 4⋅ⅈ  7 + 9⋅ⅈ⎥
⎢                         ⎥
⎣6 + 7⋅ⅈ  6 + 3⋅ⅈ  1 + 3⋅ⅈ⎦

⎡4 - 4⋅ⅈ  5 - 4⋅ⅈ  6 - 7⋅ⅈ⎤
⎢                         ⎥
⎢8 - 5⋅ⅈ  2 - 4⋅ⅈ  6 - 3⋅ⅈ⎥
⎢                         ⎥
⎣9 - 6⋅ⅈ  7 - 9⋅ⅈ  1 - 3⋅ⅈ⎦

⎡5 + 8⋅ⅈ  1 + 8⋅ⅈ  7 + 3⋅ⅈ⎤
⎢                         ⎥
⎢9 + 8⋅ⅈ  5 + 5⋅ⅈ  3 + 6⋅ⅈ⎥
⎢                         ⎥
⎣2 + 2⋅ⅈ  3 + 2⋅ⅈ  2 + 9⋅ⅈ⎦

⎡5 - 8⋅ⅈ  9 - 8⋅ⅈ  2 - 2⋅ⅈ⎤
⎢                         ⎥
⎢1 - 8⋅ⅈ  5 - 5⋅ⅈ  3 - 2⋅ⅈ⎥
⎢                         ⎥
⎣7 - 3⋅ⅈ  3 - 6⋅ⅈ  2 - 9⋅ⅈ⎦

True

True

True


⎡   2       3⋅ⅈ    7 + 6⋅ⅈ  4 + 6⋅ⅈ⎤
⎢                                  ⎥
⎢2 + 4⋅ⅈ   4 + ⅈ   8 + 2⋅ⅈ  3 + 8⋅ⅈ⎥
⎢                                  ⎥
⎢9 + 2⋅ⅈ  3 + 7⋅ⅈ  2 + 5⋅ⅈ   6 + ⅈ ⎥
⎢                                  ⎥
⎣6 + 9⋅ⅈ     5     9 + 7⋅ⅈ  6 + 8⋅ⅈ⎦

⎡   2     2 - 4⋅ⅈ  9 - 2⋅ⅈ  6 - 9⋅ⅈ⎤
⎢                                  ⎥
⎢ -3⋅ⅈ     4 - ⅈ   3 - 7⋅ⅈ     5   ⎥
⎢                                  ⎥
⎢7 - 6⋅ⅈ  8 - 2⋅ⅈ  2 - 5⋅ⅈ  9 - 7⋅ⅈ⎥
⎢                                  ⎥
⎣4 - 6⋅ⅈ  3 - 8⋅ⅈ   6 - ⅈ   6 - 8⋅ⅈ⎦

⎡7 + 3⋅ⅈ  7 + 3⋅ⅈ  8 + 8⋅ⅈ  6 + 4⋅ⅈ⎤
⎢                                  ⎥
⎢9 + 5⋅ⅈ     ⅈ     1 + 7⋅ⅈ  5 + 9⋅ⅈ⎥
⎢                                  ⎥
⎢   9     8 + 8⋅ⅈ   4 + ⅈ      9   ⎥
⎢                                  ⎥
⎣1 + 2⋅ⅈ  4 + 2⋅ⅈ  4 + 3⋅ⅈ  8 + 3⋅ⅈ⎦

⎡7 - 3⋅ⅈ  9 - 5⋅ⅈ     9     1 - 2⋅ⅈ⎤
⎢                                  ⎥
⎢7 - 3⋅ⅈ    -ⅈ     8 - 8⋅ⅈ  4 - 2⋅ⅈ⎥
⎢                                  ⎥
⎢8 - 8⋅ⅈ  1 - 7⋅ⅈ   4 - ⅈ   4 - 3⋅ⅈ⎥
⎢                                  ⎥
⎣6 - 4⋅ⅈ  5 - 9⋅ⅈ     9     8 - 3⋅ⅈ⎦

True

True

True


$

0 コメント:

コメントを投稿