学習環境
- Surface
- Windows 10 Pro (OS)
- Nebo(Windows アプリ)
- iPad
- MyScript Nebo - MyScript(iPad アプリ(iOS))
- 参考書籍
新装版 数学読本3 (松坂 和夫(著)、岩波書店)の第12章(放物線・だ円・双曲線 - 2次関数)、12.2(2次曲線と直線)、だ円・双曲線と直線の問15の解答を求めてみる。
双曲線と x 軸との交点
における接線の方程式は
で、
なので問題の方程式となる。
の場合、 点
における双曲線の接線の方程式を
とおくと、
が重解をもち、 その解が
なので、 解と係数の関係により、
これを接線の方程式に代入すると、
よって、
(証明終)
コード
#!/usr/bin/env python3
from sympy import plot, solve, symbols, Rational
print('15.')
x, y = symbols('x, y', real=True)
a, b = 2, 1
eq = x ** 2 / a ** 2 - y ** 2 / b ** 2 - 1
ys = solve(eq, y)
p = plot(*ys,
(x, -10, 10),
ylim=(-10, 10),
legend=False,
show=False)
for x0 in [-5, -3, 4, 6]:
ys0 = solve(eq.subs({x: x0}))
for y0 in ys0:
l = solve(x0 * x / a ** 2 - y0 * y / b ** 2 - 1, y)[0]
p.append(
plot(l, legend=False, show=False)[0]
)
colors = ['red', 'green', 'blue', 'brown', 'orange',
'purple', 'pink', 'gray', 'skyblue', 'yellow']
for o, color in zip(p, colors):
o.line_color = color
print(o, color)
p.save('sample15.png')
p.show()
入出力結果(Zsh、PowerShell、Terminal、Jupyter(IPython))
% ./sample15.py
15.
cartesian line: -sqrt(x**2 - 4)/2 for x over (-10.0, 10.0) red
cartesian line: sqrt(x**2 - 4)/2 for x over (-10.0, 10.0) green
cartesian line: sqrt(21)*(5*x + 4)/42 for x over (-10.0, 10.0) blue
cartesian line: -sqrt(21)*(5*x + 4)/42 for x over (-10.0, 10.0) brown
cartesian line: sqrt(5)*(3*x + 4)/10 for x over (-10.0, 10.0) orange
cartesian line: -sqrt(5)*(3*x + 4)/10 for x over (-10.0, 10.0) purple
cartesian line: sqrt(3)*(1 - x)/3 for x over (-10.0, 10.0) pink
cartesian line: sqrt(3)*(x - 1)/3 for x over (-10.0, 10.0) gray
cartesian line: sqrt(2)*(2 - 3*x)/8 for x over (-10.0, 10.0) skyblue
cartesian line: sqrt(2)*(3*x - 2)/8 for x over (-10.0, 10.0) yellow
%
0 コメント:
コメントを投稿