Python Language
Сложная математика
Поиск…
Синтаксис
- cmath.rect (AbsoluteValue, Phase)
Усовершенствованная сложная арифметика
Модуль cmath
включает дополнительные функции для использования комплексных чисел.
import cmath
Этот модуль может рассчитать фазу комплексного числа в радианах:
z = 2+3j # A complex number
cmath.phase(z) # 0.982793723247329
Он позволяет преобразовать между декартовыми (прямоугольными) и полярными представлениями комплексных чисел:
cmath.polar(z) # (3.605551275463989, 0.982793723247329)
cmath.rect(2, cmath.pi/2) # (0+2j)
Модуль содержит сложную версию
Экспоненциальные и логарифмические функции (как обычно,
log
- натуральный логарифм,log10
- десятичный логарифм):cmath.exp(z) # (-7.315110094901103+1.0427436562359045j) cmath.log(z) # (1.2824746787307684+0.982793723247329j) cmath.log10(-100) # (2+1.3643763538418412j)
Квадратные корни:
cmath.sqrt(z) # (1.6741492280355401+0.8959774761298381j)
Тригонометрические функции и их обратные:
cmath.sin(z) # (9.15449914691143-4.168906959966565j) cmath.cos(z) # (-4.189625690968807-9.109227893755337j) cmath.tan(z) # (-0.003764025641504249+1.00323862735361j) cmath.asin(z) # (0.5706527843210994+1.9833870299165355j) cmath.acos(z) # (1.0001435424737972-1.9833870299165355j) cmath.atan(z) # (1.4099210495965755+0.22907268296853878j) cmath.sin(z)**2 + cmath.cos(z)**2 # (1+0j)
Гиперболические функции и их обратные:
cmath.sinh(z) # (-3.59056458998578+0.5309210862485197j) cmath.cosh(z) # (-3.7245455049153224+0.5118225699873846j) cmath.tanh(z) # (0.965385879022133-0.009884375038322495j) cmath.asinh(z) # (0.5706527843210994+1.9833870299165355j) cmath.acosh(z) # (1.9833870299165355+1.0001435424737972j) cmath.atanh(z) # (0.14694666622552977+1.3389725222944935j) cmath.cosh(z)**2 - cmath.sin(z)**2 # (1+0j) cmath.cosh((0+1j)*z) - cmath.cos(z) # 0j
Основная сложная арифметика
Python имеет встроенную поддержку комплексной арифметики. Мнимая единица обозначается через j
:
z = 2+3j # A complex number
w = 1-7j # Another complex number
Сложные числа могут быть суммированы, вычтены, умножены, делены и экспоненциальны:
z + w # (3-4j)
z - w # (1+10j)
z * w # (23-11j)
z / w # (-0.38+0.34j)
z**3 # (-46+9j)
Python также может извлекать действительную и мнимую части комплексных чисел и вычислять их абсолютное значение и сопрягать:
z.real # 2.0
z.imag # 3.0
abs(z) # 3.605551275463989
z.conjugate() # (2-3j)