0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

加法定理「2023岩手大学前期【1】(2)」をWolframAlphaとsympyでやってみたい。

Last updated at Posted at 2023-05-29

まず、以下の別ページの問題を先に見て下さい。

以下、勉強中。

減点?解答です。点検用?になりますか。内積。

オリジナル

上と同じです。大学入試数学問題集成>

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

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?