学習環境
- Surface 3 (4G LTE)、Surface 3 タイプ カバー、Surface ペン(端末)
- Windows 10 Pro (OS)
- 数式入力ソフト(TeX, MathML): MathType
- MathML対応ブラウザ: Firefox、Safari
- MathML非対応ブラウザ(Internet Explorer, Google Chrome...)用JavaScript Library: MathJax
- 参考書籍
ラング線形代数学(上)(S.ラング (著)、芹沢 正三 (翻訳)、ちくま学芸文庫)の5章(線形写像と行列)、3(線形写像に対応する行列)、練習問題6、7.を取り組んでみる。
F、Θ、x'、y'は前問、問6と同じ。
コード(Emacs)
Python 3
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
from sympy import pprint, symbols, Matrix, cos, sin, sqrt
Θ = symbols('Θ')
M = Matrix([[cos(Θ), -sin(Θ)],
[sin(Θ), cos(Θ)]])
pprint(M)
f = lambda X: M * X
x, y = symbols('x y')
X = Matrix([x, y])
Y = f(X)
x1, y1 = Y
pprint(Y)
pprint(x1)
pprint(y1)
nx = sqrt(X[0] ** 2 + X[1] ** 2)
ny = sqrt(Y[0] ** 2 + Y[1] ** 2)
pprint(nx)
pprint(ny)
pprint(ny.expand())
入出力結果(Terminal, IPython)
$ ./sample6.py ⎡cos(Θ) -sin(Θ)⎤ ⎢ ⎥ ⎣sin(Θ) cos(Θ) ⎦ ⎡x⋅cos(Θ) - y⋅sin(Θ)⎤ ⎢ ⎥ ⎣x⋅sin(Θ) + y⋅cos(Θ)⎦ x⋅cos(Θ) - y⋅sin(Θ) x⋅sin(Θ) + y⋅cos(Θ) _________ ╱ 2 2 ╲╱ x + y _________________________________________________ ╱ 2 2 ╲╱ (x⋅sin(Θ) + y⋅cos(Θ)) + (x⋅cos(Θ) - y⋅sin(Θ)) ___________________________________________________ ╱ 2 2 2 2 2 2 2 2 ╲╱ x ⋅sin (Θ) + x ⋅cos (Θ) + y ⋅sin (Θ) + y ⋅cos (Θ) $
0 コメント:
コメントを投稿