2020年3月12日木曜日

学習環境

新装版 数学読本3 (松坂 和夫(著)、岩波書店)の第9章(図形と代数の交錯する世界 - 平面上のベクトル)、9.2(ベクトルの応用)、円とベクトルの問38の解答を求めてみる。



    • 円の半径は r なので

      p0-c=rp0-c2=r2

      また、 2つのベクトル

      CP0=p0-cP0P=p-p0

      は垂直なので、

      p0-c·p-p0=0p0-c·p-c-p0-c=0p0-c·p-c-p0-c2=0p0-c·p-c=r2

      (証明終)


    • 座標で用いて表すと、

      x0-a,y0-b·x-a,y-b=r2x0-ax-a+y0-by-b=r2

コード

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

print('38.')

x, y = symbols('x, y', real=True)

a, b = 0, 0
x0 = 1 / sqrt(2)
y0 = 1 / sqrt(2)
eq0 = (x - a) ** 2 + (y - b) ** 2 - 1
ys0 = solve(eq0, y)
eq1 = (x0 - a) * (x - a) + (y0 - b) * (y - b) - 1
ys1 = solve(eq1, y)

p = plot(*ys0, *ys1,
         (x, -5, 5),
         ylim=(-5, 5),
         legend=True, show=False)

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('sample38.png')

入出力結果(Zsh、PowerShell、Terminal、Jupyter(IPython))

% ./sample38.py
38.
%

0 コメント:

コメントを投稿