Representar números complejos
Este ejemplo muestra cómo representar números complejos en MATLAB®. Un número complejo es un número que se puede escribir con la forma
,
donde y son números reales y es la unidad imaginaria, que se define como . El número es la parte real del número complejo, que se indica mediante y el número es la parte imaginaria del número complejo, que se indica mediante . Puede representar un número complejo como un par de coordenadas en el plano complejo, también denominado diagrama de Argand. Este diagrama utiliza las coordenadas cartesianas para representar la parte real en el eje y la parte imaginaria en el eje .
También puede representar un número complejo usando una gráfica polar. El número complejo se escribe con la forma
,
donde es el valor o magnitud absolutos del número complejo y es el ángulo de fase del número complejo. En esta representación, puede representar un número complejo como un punto en las coordenadas polares con radio (la distancia desde el origen) y ángulo polar (el ángulo en sentido contrario a las agujas del reloj entre el eje real positivo y la línea que conecta el punto con el origen).
Representar un arreglo de números complejos
Cree un vector que contenga los números complejos 3 + 4i, -4 - 3i, 1 - 2i y -1 - 1i.
z = [3 + 4i; -4 - 3i; 1 - 2i; -1 - 1i]
z = 4×1 complex
3.0000 + 4.0000i
-4.0000 - 3.0000i
1.0000 - 2.0000i
-1.0000 - 1.0000i
Represente la parte imaginaria frente a la parte real del vector complejo z usando plot. Utilice la función real y la función imag para devolver las partes real e imaginaria del vector complejo, respectivamente.
plot(real(z),imag(z),"o") axis equal grid on xlabel("Re(z)") ylabel("Im(z)")

También puede utilizar plot(z,LineSpec) en lugar de plot(real(z),imag(z),LineSpec) para representar un arreglo de números complejos. Esta función representa automáticamente la parte real en el eje y la parte imaginaria en el eje .
Representar raíces complejas de unidad en coordenadas cartesianas
Las raíces -ésimas son números complejos que satisfacen la ecuación polinómica
,
donde es un entero positivo.
Las raíces -ésimas de unidad son
para .
Para encontrar las raíces complejas de unidad, puede resolver la ecuación polinómica usando roots. La función roots resuelve las ecuaciones polinómicas con el formato . Por ejemplo, encuentre la quinta raíz de unidad de o .
p = [1 0 0 0 0 -1]; z = roots(p)
z = 5×1 complex
-0.8090 + 0.5878i
-0.8090 - 0.5878i
0.3090 + 0.9511i
0.3090 - 0.9511i
1.0000 + 0.0000i
Represente las raíces complejas de unidad en las coordenadas cartesianas.
plot(z,"o") axis equal grid on xlabel("Re(z)") ylabel("Im(z)")

Representar números complejos en coordenadas polares
Represente la quinta raíz de unidad de las coordenadas polares usando polarplot. Utilice la función angle para devolver los ángulos de fase de las raíces complejas y utilice la función abs para devolver los valores o radios absolutos de las raíces complejas.
polarplot(angle(z),abs(z),"o")
También puede utilizar polarplot(z,LineSpec) en lugar de polarplot(angle(z),abs(z),LineSpec) para representar un arreglo de números complejos en las coordenadas polares. Esta función representa automáticamente los radios y los ángulos de fase de los números complejos.
Representar una curva paramétrica en un plano complejo
Defina una curva paramétrica que tenga la forma
con el parámetro en el intervalo .
Cree un vector t de 200 puntos equidistantes dentro de este intervalo para parametrizar . Defina los puntos incluidos en la curva compleja como un vector complejo z.
t = linspace(0,4*pi,200); z = t.*exp(1i*t);
Represente la curva compleja en las coordenadas cartesianas.
plot(z,"-") axis equal grid on xlabel("Re(z)") ylabel("Im(z)")

Represente la curva compleja en las coordenadas polares.
polarplot(z,"-")
Representar valores propios de un matriz cuadrada
Una matriz cuadrada real de por tiene valores propios (contando multiplicidades algebraicas) que o bien son reales o bien se dan en pares de conjugados complejos.
Por ejemplo, piense en una matriz real de 20 por 20 con elementos aleatorios que se muestrean a partir de una distribución normal estándar. Calcule los valores propios usando eig.
rng("default")
z = eig(randn(20));Represente la parte imaginaria frente a la parte real de los 20 valores propios. Tenga en cuenta que por cada valor propio que no esté en el eje real, hay otro par de conjugados complejos del valor propio .
plot(z,"o") axis equal grid on xlabel("Re(z)") ylabel("Im(z)")

Representar varios conjuntos de datos complejos
Represente la parte imaginaria frente a la parte real de dos conjuntos de datos complejos. Si pasa varios argumentos de entradas complejas a plot, como plot(z1,z2), la función plot ignora la parte imaginaria y representa únicamente la parte real de las entradas. Para representar la parte real frente a la parte imaginaria de varias entradas complejas, debe pasar explícitamente la parte real y la parte imaginaria a plot.
Por ejemplo, cree dos vectores complejos z1 y z2.
x = -2:0.25:2; z1 = x.^exp(-x.^2); z2 = 2*x.^exp(-x.^2);
Identifique la parte real y la parte imaginaria de cada vector con las funciones real e imag.
re_z1 = real(z1); im_z1 = imag(z1); re_z2 = real(z2); im_z2 = imag(z2);
Represente los datos complejos.
plot(re_z1,im_z1,"*",re_z2,im_z2,"o") axis equal grid on legend("z1","z2") xlabel("Re(z)") ylabel("Im(z)")
