学習環境
- Surface 3 (4G LTE)、Surface 3 タイプ カバー、Surface ペン(端末)
- Windows 10 Pro (OS)
- 数式入力ソフト(TeX, MathML): MathType
- MathML対応ブラウザ: Firefox、Safari
- MathML非対応ブラウザ(Internet Explorer, Microsoft Edge, Google Chrome...)用JavaScript Library: MathJax
- 参考書籍
ラング線形代数学(上)(S.ラング (著)、芹沢 正三 (翻訳)、ちくま学芸文庫)の2章(ベクトル空間)、3(基底)、練習問題2.を取り組んでみる。
コード(Emacs)
Python 3
#!/usr/bin/env python3
from sympy import pprint, symbols, Matrix, solve
print('2.')
a, b = symbols('a b')
vs = [((1, 0), (1, 1), (0, 1)),
((2, 1), (1, -1), (1, 1)),
((1, 1), (2, 1), (-1, 0)),
((4, 3), (2, 1), (-1, 0))]
for i, (x0, a0, b0) in enumerate(vs):
print(f'({chr(ord("a") + i)})')
X = Matrix(x0)
A = Matrix(a0)
B = Matrix(b0)
eq = (a * A + b * B) - X
for t in [eq, solve(eq, dict=True)]:
pprint(t)
print()
print()
入出力結果(Terminal, Jupyter(IPython))
$ ./sample2.py
2.
(a)
⎡a - 1⎤
⎢ ⎥
⎣a + b⎦
[{a: 1, b: -1}]
(b)
⎡a + b - 2 ⎤
⎢ ⎥
⎣-a + b - 1⎦
[{a: 1/2, b: 3/2}]
(c)
⎡2⋅a - b - 1⎤
⎢ ⎥
⎣ a - 1 ⎦
[{a: 1, b: 1}]
(d)
⎡2⋅a - b - 4⎤
⎢ ⎥
⎣ a - 3 ⎦
[{a: 3, b: 2}]
$
0 コメント:
コメントを投稿