学習環境
- Surface
- Windows 10 Pro (OS)
- Nebo(Windows アプリ)
- iPad
- MyScript Nebo - MyScript(iPad アプリ(iOS))
- 参考書籍
ラング線形代数学(上) (ちくま学現文庫)(S.ラング (著)、芹沢 正三 (翻訳)、筑摩書房)の5章(線形写像と行列)、3(線形写像の合成)、練習問題2の解答を求めてみる。
(証明終)
コード
#!/usr/bin/env python3
from unittest import TestCase, main
import random
from sympy import symbols, Matrix, cos, sin
print('2.')
class TestRotateNorm(TestCase):
def test(self):
theta = symbols('θ')
f = Matrix([[cos(theta), -sin(theta)],
[sin(theta), cos(theta)]])
for _ in range(100):
X = Matrix([random.randrange(-10, 11)
for _ in range(2)]).reshape(2, 1)
d = {theta: random.randrange(-10, 11)}
self.assertAlmostEqual(float((f * X).norm().subs(d)),
float(X.norm().subs(d)))
if __name__ == "__main__":
main()
入出力結果(Zsh、PowerShell、Terminal、Jupyter(IPython))
% ./sample2.py -v
2.
test (__main__.TestRotateNorm) ... ok
----------------------------------------------------------------------
Ran 1 test in 1.554s
OK
%
0 コメント:
コメントを投稿