2019年6月24日月曜日

学習環境

ラング線形代数学(上)(S.ラング (著)、芹沢 正三 (翻訳)、ちくま学芸文庫)の7章(スカラー積と直交性)、2(正値スカラー積)、練習問題5の解答を求めてみる。


  1. 直交化、直交基底。

    u = 1 v = t - t , 1 1 , 1 1 t , 1 = 0 1 t · 1 dt = 1 2 1 , 1 = 0 1 1 · 1 dt = 1 v = t - 1 2 w = t 2 - t 2 , t - 1 2 t - 1 2 , t - 1 2 t - 1 2 - t 2 , 1 1 , 1 1 t 2 , t - 1 2 = 0 1 t 3 - 1 2 t 2 dt = 1 4 - 1 2 · 1 3 = 3 - 2 12 = 1 12 t - 1 2 , t - 1 2 = 0 1 t 2 - t + 1 4 dt = 1 3 - 1 2 + 1 4 = 4 - 6 + 3 12 = 1 12 t 2 , 1 = 0 1 t 2 dt = 1 3 w = t 2 - t - 1 2 - 1 3 = t 2 - t + 1 6

    正規化、正規直交基底。

    u u = 1 1 , 1 = 1 v v = t - 1 2 t - 1 2 , t - 1 2 = 12 t - 1 2 = 2 3 t - 1 2 = 2 3 t - 3 w w . = t 2 - t + 1 6 t 2 - t + 1 6 , t 2 - t + 1 6 t 2 - t + 1 6 , t 2 - t + 1 6 = 0 1 t 4 - 2 t 3 + 4 3 t 2 - 1 3 t + 1 36 dt = 1 5 - 1 2 + 4 9 - 1 6 + 1 36 = 36 - 90 + 80 - 30 + 5 5 · 6 2 = 1 5 · 6 2 w w = 6 5 t 2 - t + 1 6 = 6 5 t 2 - 6 5 t + 5 1 , 2 3 t - 3 , 6 5 - 6 5 t + 5

コード

Python 3

#!/usr/bin/env python3
from sympy import pprint, symbols, plot, Integral, sqrt

print('5.')

t = symbols('t')


def scalar_mul(f, g):
    return Integral(f * g, (t, 0, 1)).doit()


def norm(f):
    return sqrt(scalar_mul(f, f))


f = 1
g = t
h = t ** 2
u = f / norm(f)
v = g - scalar_mul(g, u) / scalar_mul(u, u) * u
v = v / norm(v)
w = h - scalar_mul(h, v) / scalar_mul(v, v) * v - \
    scalar_mul(h, u) / scalar_mul(u, u) * u

for o in [u, v, w]:
    pprint(o)
    print()

p = plot(f, g, h, u, v, w, ylim=(-10, 10), show=False, legend=True)
colors = ['red', 'green', 'blue', 'brown', 'orange',
          'purple', 'pink', 'gray', 'skyblue', 'yellow']
for s, color in zip(p, colors):
    s.line_color = color

p.show()
p.save('sample5.png')

入出力結果(Bash、cmd.exe(コマンドプロンプト)、Terminal、Jupyter(IPython))

C:\Users\...>py sample5.py
5.
1

2⋅√3⋅(t - 1/2)

 2       1
t  - t + ─
         6


C:\Users\...>

0 コメント:

コメントを投稿