cmath——複數域數學函數模塊html
轉自:https://blog.csdn.net/zhtysw/article/category/7511293函數
該模塊屬於內置模塊,隨時能夠調用。它提供了數學函數在複數域上擴展的運算函數,math模塊內的函數屬於其子集,該模塊是爲了某些須要在複數域上進行的操做站門設計的。該模塊的函數容許複數、整數、浮點數等數據類型的輸入。如無特殊說明,全部函數的返回值都應當爲實部、虛部皆爲浮點數的複數。spa
1 極座標與直角座標的相互轉換函數.net
在Python中,複數使用矩陣或笛卡爾座標結構來保存數據;其完整結構應當包含實部和虛部兩部分。用表達式表示以下:設計
Z== Z. real + Z. imag*jhtm
極座標的存在使得複數又得到了一種新的表示形式。在極座標中,複數Z由係數r和相位角phi二者合做定義。係數r指的是複數Z在座標系中離座標原點的距離,相位角phi是以弧度爲單位測量的從正x軸到將原點鏈接到z的線段的逆時針角度。blog
如下函數能夠提供直角座標與極座標的相互轉換:get
cmath.phase(x)數學
返回x的相位。若是x是浮點數,其等價於math. atan2(x.imag, x.real)。結果範圍在正負ℼ之間。it
cmath. polar(x)
返回x的極座標表達形式(r, phi)。(r, phi)等價於(abs(x), phase(x))。
cmath. rect(r,phi)
用(r,phi)構建一個複數,並將其返回。
2.指數函數和對數函數
cmath. exp(x)
返回e**x的結果值。
cmath. log(x, [base])
對x求base指定底的對數運算,並返回結果值。若是base沒有給出,其默認爲e。有一個分支從0開始沿負實軸旋轉到-∞,從上向下連續。
cmath. log10(x)
求x以10爲底的對數。分支與log()相同。
cmath. sqrt(x)
返回x的平方根。分支與log()相同。
3. 三角函數
cmath. acos(x)
返回x的反餘弦值。這裏有兩個分支切口:一個從實軸向右延伸到∞,從下面連續。 另外一個從實軸-1從左向上延伸到-∞,從上面連續。
cmath. asin(x)
返回x的反正弦值。分支切口與acos()相同。
cmath. atan(x)
返回x的反正切值。分支切口與acos()相同。
cmath. cos()
返回x的餘弦值。
cmath. sin(x)
返回x的正弦值。
cmath. tan()
返回x的正切值。
4. 雙曲函數
cmath. acosh(x)
返回x的反雙曲餘弦值。這裏有一個分支切口,從實軸的1向左延伸到-∞,從上面連續。
cmath. asinh(x)
返回x的反雙曲正弦值。這裏有兩個分支切口:一個是沿着虛軸從1j向右到∞j,另外一個是沿着虛軸從-1j向左到-∞j。
cmath. atanh(x)
返回x的反雙曲正切值。這裏有兩個分支切口:一個是沿着實軸下方從1到∞,另外一個是沿着實軸上方從-1到-∞。
cmath. cosh(x)
返回x的雙曲餘弦值。
cmath. sinh(x)
返回x的雙曲正弦值。
cmath. tanh(x)
返回x的雙曲正切值。
5.分類函數
cmath. isfinite(x)
若是x的實部和虛部都是有限數,返回True,不然返回False。
cmath. isinf(x)
若是x的實部或虛部爲無窮數,返回True,不然返回False。
cmath. isnan(x)
若是x的實部或虛部是NaN,返回True。
cmath. isclose(a, b, *, rel_tol=1e-09, abs_tol=0.0)
若是a與b的值之差在規定的範圍內,返回True,不然返回False。
rel_tol和abs_tol是偏差的相對允許範圍和絕對允許範圍,實際運算中,偏差符合二者中的任意一個即爲符合要求。
6.常量
cmath. pi
浮點數形式的圓周率常量。
cmath. e
浮點數形式的天然數e。
cmath. tau
浮點數形式的數學常量τ。
cmath. inf
浮點形式的正無窮。
cmath. infj
實部爲0,虛部爲正無窮的複數。
cmath. nan
浮點形式的非數字值。
cmath. nanj
實部爲0,虛部爲NaN的複數。