まず、以下の別ページの問題を先に見て下さい。
以下、勉強中。
減点?解答です。点検用?になりますか。内積。
オリジナル
上と同じです。大学入試数学問題集成>
wolframalphaで
うまくいきませんでした。教えて下さい。関数があった気がします。
・グラフがでます。
・分けて計算しましたが、できませんでした。
解 α = tan^(-1)(2/5)
解 β = π - tan^(-1)(3/7)
結果 tan(tan^(-1)(2/5) + tan^(-1)(3/7))
Mathematicaで
勉強中
sympyで (1)??? Fractionで(参考あり)
solveを使わずに、solvesetのIntervalを駆使しています。(参考あり)
from sympy import *
from fractions import Fraction
α,β=symbols("α β",real=True)
α=solveset( Eq(tan(α), 2/5),α,Interval(0,pi) ).args[0]
β=solveset( Eq(tan(β),-3/7),β,Interval(0,pi) ).args[0]
print("#",tan(α-β) )
print("#",Fraction(float((α-β)/pi))*pi)
# 1.00000000000000
# -3*pi/4
sympyで (2)??? 加法定理 TR12で (参考あり)
・これが一番自然?オーソドックスな解答でした。
・2変数関数の最大値と最小値の問題になりますか? 勉強中。
from sympy import *
from sympy.simplify.fu import TR12
a,b=symbols("a b",real=True)
f=tan(α-β)
mySubs={tan(α):2/5,tan(β):-3/7}
print("#",TR12(f) )
print("#",TR12(f).subs(mySubs) )
# (tan(α) - tan(β))/(tan(α)*tan(β) + 1)
# 1.00000000000000
sympyで (3)??? 内積で
よくわからなくなったので、マイナスをつけました。
from sympy import *
O=Point( 0,0)
A=Point( 5,2)
B=Point(-7,3)
ans=acos( (A-O).dot(B-O)/(A.distance(O)*B.distance(O) ) )
print("#",-ans,tan(-ans,))
# -3*pi/4 1
sympyで (4)??? 「The angle between two lines」でやってみたい。
・ 教科書に,m1,m2と書いてありました。
・「逆三角関数の主値(英:Principal values)」の壁?
http://www.ftext.org/text/subsubsection/2417
sympyで (5) floatで
degreeで
from sympy import *
from fractions import Fraction
α,β=symbols("α β",real=True)
α_deg=float(solveset( Eq(tan(α), 2/5),α,Interval(0,pi) ).args[0]*180/pi)
β_deg=float(solveset( Eq(tan(β),-3/7),β,Interval(0,pi) ).args[0]*180/pi)
print("#",α_deg,β_deg,α_deg-β_deg)
print("#",Fraction((α_deg-β_deg)/180)*pi,tan( Fraction((α_deg-β_deg)/180)*pi ))
# 21.80140948635181 156.80140948635182 -135.0
# -3*pi/4 1
過去問
>α,βは鋭角で、
>α,βが第1象限の角で、
参考
・Fractionについて
>このページではPythonで分数を扱う方法について解説します。
>sympyの
Rationalで分数を扱うことができます。
分数においては標準ライブラリのFractionよりリストなどの要素の場合でも文字列表現が簡潔で見やすいというメリットがあります。
https://www.python.ambitious-engineer.com/archives/3813
・Combine tan arguments as (tan(y) + tan(x))/(tan(x)*tan(y) - 1) -> -tan(x + y).
https://docs.sympy.org/latest/modules/simplify/fu.html#sympy.simplify.fu.TR12i
・solveset
https://docs.sympy.org/latest/modules/solvers/solveset.html