Números complejos en Python.

En este tutorial se explica cómo usar los números complejos en Python. Además te explicamos algunas operaciones básicas con números complejos y como obtener el módulo del número complejo.

Números complejos python

 

Resumen Número complejo en Python.

Aquí te resumimos el código, si quieres una explicación más amplia más adelante detallamos todo.

Para crear un número complejo tenemos 2 opciones:

a = 3 + 4j

b = complex(4, -3)

Podemos sumar, restar, multiplicar y dividir directamente los números.

Podemos obtener el módulo o valor absoluto, y el ángulo o fase.

import cmath
a = 3 + 4j
b = complex(4,-3)

modulo = abs(a)                     ## Modulo
angulo = cmath.phase(a)             ## Angulo

print(str(modulo) + "  "+ str(angulo) +"º")

Y podemos convertir de polar a rectangular y viceversa así:

import cmath

a = 3 + 4j
b = complex(4,-3)

pol = cmath.polar(a)                   ## Rectangular a polar
print( pol)

rec = cmath.rect(3, 45)                ## Polar a Rectangular
print( rec)

rec1 = cmath.rect( pol[0], pol[1])     ## Polar a Rectangular
print( rec1)

 

¿Cómo trabajar con números complejos en Python?

Podemos crear un número complejo de dos maneras distintas. Una es usando la letra “j” como el numero imaginario. Python por default usa esta letra como referencia a números imaginarios.

a = 3 + 4j      ## 3 + 4i

La otra es con el comando “complex()”. Donde el primer parámetro es el número real y el segundo el imaginario.

b = complex(4, -3)    ## 4 – 3i

 

¿Cómo sumar y restar números complejos en Python?

Una vez que tengamos los números podemos sumar y restar directamente en Python. Como se muestra a continuación.

a = 3 + 4j
b = complex(4,-3)
c = a + b
print(c)                ## Resultado: 7 + 1j
d = a - b
print(d)                ## Resultado: -1 + 7j

 

¿Cómo convertir número rectangular a número polar en python?

Para hacer la conversión de polar a rectangular y viceversa, podemos usar comandos de Python o realizar los cálculos manualmente, cualquier opción no presenta muchas dificultades.

Convertir de rectangular a polar.

Para hacer la conversión podemos usar la “librería cmath”, con la que tenemos un comando para realizar la conversión. Nos regresará el resultado en una variable tipo “tuple”. Tiene dos posiciones, una es el modulo y la segunda es el ángulo.

Además podemos primero obtener el modulo con el comando “abs()” y después obtener el ángulo o la fase con el comando de la librería cmath “cmath.phase()”. Así el número polar será la combinación del módulo y el ángulo.

import cmath

pol=cmath.polar(a)                     ## Conversión directa
print(pol)

modulo = abs(a)                        ## Modulo
angulo = cmath.phase(a)                ## Ángulo

print(str( modulo) + "  "+ str( angulo) +"º")

 

Convertir de polar a rectangular.

Es simular al comando anterior, solo que ahora usamos el comando “math.rect” el cual tiene dos parámetros de entrada. Uno es el módulo y el otro es el ángulo.

import cmath

rec = cmath.rect(3, 45)
print( rec)

Si queremos convertir un numero rectangular a polar, y el resultado volverlo a convertir a rectangular, podemos hacer lo siguiente.

import cmath

a = 3 + 4j
b = complex(4,-3)
pol=cmath.polar(a)                                        ## Conversión a polar
rec = cmath.rect( pol[0], pol[1])                ## Conversión a rectangular

Aunque notamos que el resultado tiene varios puntos decimales, es debido a la forma en que Python realiza las operaciones. Para corregir esto te dejamos el siguiente tutorial.

Python error al restar (ajustar la precisión).

 

Multiplicación y división de números complejos en Python.

Una vez que estamos trabajando con números complejos en Python, podemos hacer divisiones y multiplicaciones directamente.

a = 3+4j
b= complex(4,-3)

d=a*b
print(d)

e = a/b
print(e)

Para más tutoriales de Python, ve a la sección de Python.

Algunos temas que pueden interesarte:

Valor absoluto en python (Absolute value Python).

Imprimir una lista en Python.

Matplotlib errorbar, Python.