2018年11月24日土曜日

学習環境

ラング線形代数学(上)(S.ラング (著)、芹沢 正三 (翻訳)、ちくま学芸文庫)の1章(R^n におけるベクトル)、5(直線と平面)、練習問題16.を取り組んでみる。


  1. X · N = P · N
    • 点 P を通り、ベクトル N に垂直な平面、
    Q + t N
    • 点 Q を通り、ベクトル N に平行な直線である。

    また、点 Q は平面上の点ではないので、平面 と直線はただ1つの点で交わるので、 数ではただ1つ存在する。
    その t の値は、

    Q + t N · N = P · N Q · N + t N · N = P · N t = P - Q · N N · N

コード(Emacs)

Python 3

#!/usr/bin/env python3
from sympy import pprint, symbols, Matrix, solve

t = symbols('t')
N = Matrix(symbols('n1, n2, n3'))
P = Matrix(symbols('p1, p2, p3'))
Q = Matrix(symbols('q1, q2, q3'))
eq = (Q + t * N).dot(N) - P.dot(N)

pprint(solve(eq, t))

入出力結果(Terminal, cmd(コマンドプロンプト), Jupyter(IPython))

$ ./sample16.py
⎡n₁⋅p₁ - n₁⋅q₁ + n₂⋅p₂ - n₂⋅q₂ + n₃⋅p₃ - n₃⋅q₃⎤
⎢─────────────────────────────────────────────⎥
⎢                 2     2     2               ⎥
⎣               n₁  + n₂  + n₃                ⎦
$

0 コメント:

コメントを投稿