学習環境
- Surface、Surface ペン(端末)
- Windows 10 Pro (OS)
- Nebo(Windows アプリ)
- iPad Pro 10.5 + Apple Pencil
- MyScript Nebo - MyScript(iPad アプリ(iOS))
- 参考書籍
ラング線形代数学(上)(S.ラング (著)、芹沢 正三 (翻訳)、ちくま学芸文庫)の7章(スカラー積と直交性)、2(正値スカラー積)、練習問題2の解答を求めてみる。
直交基底。
u=(1,2,1,0)v=(1,2,3,1)-(1,2,3,1)·(1,2,1,0)(1,2,1,0)·(1,2,1,0)(1,2,1,0)=(1,2,3,1)-1+4+31+4+1(1,2,1,0)=(1,2,3,1)-43(1,2,1,0)=43(-1,-2,5,3)正規直交基底。
1√6(1,2,1,0)(-1,-2,5,3)√1+4+25+9=1√39(-1,-2,5,3)直交化。
u=(1,1,0,0)v=(1,-1,1,1)-(1,-1,1,1)·(1,1,0,0)(1,1,0,0)·(1,1,0,0)(1,1,0,0)=(1,-1,1,1)-1-11+1(1,1,0,0)=(1,-1,1,1)w=(-1,0,2,1)-(-1,0,2,1)·(1,-1,1,1)(1,-1,1,1)·(1,-1,1,1)(1,-1,1,1)-(-1,0,2,1)·(1,1,0,0)(1,1,0,0)·(1,1,0,0)(1,1,0,0)=(-1,0,2,1)--1+2+11+1+1+1(1,-1,1,1)--11+1(1,1,0,0)=(-1,0,2,1)-12(1,-1,1,1)+12(1,1,0,0)=12(-2,2,3,1)正規化。
1√2(1,1,0,0)12(1,-1,1,1)(-2,2,3,1)√4+4+9+1=13√2(-2,2,3,1)
コード
Python 3
#!/usr/bin/env python3 from sympy import pprint, Matrix, symbols print('2.') print('(a)') v1 = Matrix([1, 2, 1, 0]) v2 = Matrix([1, 2, 3, 1]) v2 = v2 - v2.dot(v1) / v1.dot(v1) * v1 for v in [v1, v2]: pprint((v / v.norm()).transpose()) print() print('(b)') v1 = Matrix([1, 1, 0, 0]) v2 = Matrix([1, -1, 1, 1]) v2 = v2 - v1.dot(v2) / v2.dot(v2) * v2 v3 = Matrix([-1, 0, 2, 1]) v3 = v3 - v3.dot(v2) / v2.dot(v2) * v2 - v3.dot(v1) / v1.dot(v1) * v1 for v in [v1, v2, v3]: pprint((v / v.norm()).transpose()) print()
入出力結果(Bash、cmd.exe(コマンドプロンプト)、Terminal、Jupyter(IPython))
C:\Users\...>py sample2.py 2. (a) ⎡√6 √6 √6 ⎤ ⎢── ── ── 0⎥ ⎣6 3 6 ⎦ ⎡-√39 -2⋅√39 5⋅√39 √39⎤ ⎢───── ─────── ───── ───⎥ ⎣ 39 39 39 13⎦ (b) ⎡√2 √2 ⎤ ⎢── ── 0 0⎥ ⎣2 2 ⎦ [1/2 -1/2 1/2 1/2] ⎡-√2 √2 √2 √2⎤ ⎢──── ── ── ──⎥ ⎣ 3 3 2 6 ⎦ C:\Users\...>
0 コメント:
コメントを投稿