2020年3月12日木曜日

学習環境

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



    • 円の半径は r なので

      p 0 - c = r p 0 - c 2 = r 2

      また、 2つのベクトル

      C P 0 = p 0 - c P 0 P = p - p 0

      は垂直なので、

      p 0 - c · p - p 0 = 0 p 0 - c · p - c - p 0 - c = 0 p 0 - c · p - c - p 0 - c 2 = 0 p 0 - c · p - c = r 2

      (証明終)


    • 座標で用いて表すと、

      x 0 - a , y 0 - b · x - a , y - b = r 2 x 0 - a x - a + y 0 - b y - b = r 2

コード

#!/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 コメント:

コメントを投稿