rect, polar, degrees, radians...まとめて覚えよ!!!
Pythonモジュールの話です。
cmath.rect
公式ドキュメントの記載
cmath.rect(r, phi)¶ 極座標 r, phi を持つ複素数 x を返します。値は r * (math.cos(phi) + math.sin(phi)*1j) に等しいです。
(例)
>>> cmath.rect(2**.5, math.pi/4) # phiを孤度法で指定 (1.0000000000000002+1j) >>> cmath.rect(2**.5, math.radians(45)) #phiを度数法の45°から孤度法のラジアンに変換して指定 (1.0000000000000002+1j)
[注意] phiは、ラジアンで指定する必要があるので注意。 つまり、60°みたいな度数法じゃくて、π/4みたいな孤度法や。 後述のmath.radiansとの合わせ技で使うシーンがあるかも。
cmath.polar
[公式ドキュメント]https://docs.python.org/ja/3/library/cmath.html?highlight=polar#cmath.polar)の記載
cmath.polar(x)¶
x の極座標表現を返します。x の半径 r と x の位相 phi の組 (r, phi) を返します。polar(x) は (abs(x), phase(x)) に等しいです。
(例)
>>> cmath.polar(1+1j) (1.4142135623730951, 0.7853981633974483)
直交座標から、距離と角度をパッと出すのに便利かも。
math.degrees
公式ドキュメントの記載
math.degrees(x)¶ 角 x をラジアンから度に変換します。
(例)
>>> math.degrees(math.pi) 180.0
ま、これはそのままだよね。
ラジアン-->度? 度-->ラジアン?どっちだっけ、あ〜〜〜〜!となりそうなので
モジュール名のdegreesは、変換後単位と覚えるとよろし。
Google先生に聞いたり、簡単に試すとすぐわかるけどね。
math.redians
公式ドキュメントの記載
math.radians(x)¶ ラジアンから度に変換します。
(例)
>>> math.radians(180) 3.141592653589793 # 180°はπなので、3.14XXXとなる。
問題
これらモジュールをマスターすると下記問題が簡単に解けるようになるのである。
Input: func(OA, AB, BC, alpha, beta, gamma) Output: OCの長さ、OCの角度(OC辺<-->X軸マイナス方向)