学習環境
- 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(基底)、練習問題3.を取り組んでみる。
コード(Emacs)
Python 3
#!/usr/bin/env python3
from sympy import pprint, symbols, Matrix, solve
print('3.')
a, b, c = symbols('a b c')
vs = [((1, 0, 0), (1, 1, 1), (-1, 1, 0), (1, 0, -1)),
((1, 1, 1), (0, 1, -1), (1, 1, 0), (1, 0, 2)),
((0, 0, 1), (1, 1, 1), (-1, 1, 0), (1, 0, -1))]
for i, (x0, a0, b0, c0) in enumerate(vs):
print(f'({chr(ord("a") + i)})')
X = Matrix(x0)
A = Matrix(a0)
B = Matrix(b0)
C = Matrix(c0)
eq = (a * A + b * B + c * C) - X
for t in [eq, solve(eq, dict=True)]:
pprint(t)
print()
print()
入出力結果(Terminal, Jupyter(IPython))
$ ./sample3.py
3.
(a)
⎡a - b + c - 1⎤
⎢ ⎥
⎢ a + b ⎥
⎢ ⎥
⎣ a - c ⎦
[{a: 1/3, b: -1/3, c: 1/3}]
(b)
⎡ b + c - 1 ⎤
⎢ ⎥
⎢ a + b - 1 ⎥
⎢ ⎥
⎣-a + 2⋅c - 1⎦
[{a: 1, b: 0, c: 1}]
(c)
⎡a - b + c⎤
⎢ ⎥
⎢ a + b ⎥
⎢ ⎥
⎣a - c - 1⎦
[{a: 1/3, b: -1/3, c: -2/3}]
$
0 コメント:
コメントを投稿