Variable Compleja: Curso Práctico con MATLAB
Variable Compleja: Curso Práctico con MATLAB
Primera Edición
© 2025 Dr. Octavio Meza
Todos los derechos reservados.
3
Prefacio
Este libro está diseñado para un curso semestral de variable compleja a nivel licen-
ciatura. Se ha puesto especial énfasis en la implementación computacional usando
MATLAB, lo que permite a los estudiantes visualizar y experimentar con los con-
ceptos presentados.
El texto asume conocimientos previos de cálculo diferencial e integral, así como
álgebra lineal básica. No se requiere experiencia previa con MATLAB, ya que se
proporcionan introducciones detalladas a los comandos y técnicas necesarios.
4
CONTENTS 5
Contents
Prefacio 3
1 Números Complejos 1
1.1 El sistema de los números complejos . . . . . . . . . . . . . . . . . . 1
1.1.1 Introducción histórica y motivación . . . . . . . . . . . . . . . 1
1.1.2 Construcción Formal del Campo Complejo . . . . . . . . . . . 1
1.1.3 Definición y representación . . . . . . . . . . . . . . . . . . . 1
1.1.4 El plano complejo . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1.5 Propiedades algebraicas fundamentales . . . . . . . . . . . . . 2
1.1.6 Implementación Computacional . . . . . . . . . . . . . . . . . 2
1.1.7 Ejemplos Resueltos . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1.8 Ejercicios Propuestos . . . . . . . . . . . . . . . . . . . . . . . 4
1.1.9 Soluciones Detalladas . . . . . . . . . . . . . . . . . . . . . . 5
1.1.10 Referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.2 Álgebra básica de los números complejos . . . . . . . . . . . . . . . . 10
1.2.1 Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.2.2 Operaciones fundamentales . . . . . . . . . . . . . . . . . . . 10
1.2.3 Propiedades algebraicas . . . . . . . . . . . . . . . . . . . . . 10
1.2.4 Implementación en MATLAB . . . . . . . . . . . . . . . . . . 10
1.2.5 Visualización y análisis . . . . . . . . . . . . . . . . . . . . . . 11
1.2.6 Ejemplos resueltos . . . . . . . . . . . . . . . . . . . . . . . . 11
1.2.7 Ejercicios propuestos . . . . . . . . . . . . . . . . . . . . . . . 13
1.2.8 Soluciones Detalladas . . . . . . . . . . . . . . . . . . . . . . 14
1.2.9 Referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
1.3 Plano complejo, módulo y forma polar . . . . . . . . . . . . . . . . . 20
1.3.1 Introducción al plano complejo . . . . . . . . . . . . . . . . . 20
1.3.2 Módulo y argumento . . . . . . . . . . . . . . . . . . . . . . . 21
1.3.3 Propiedades del módulo . . . . . . . . . . . . . . . . . . . . . 21
1.3.4 Forma polar . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
1.3.5 Implementación computacional . . . . . . . . . . . . . . . . . 21
1.3.6 Ejemplos resueltos . . . . . . . . . . . . . . . . . . . . . . . . 23
1.3.7 Ejercicios propuestos . . . . . . . . . . . . . . . . . . . . . . . 24
1.3.8 Soluciones Detalladas . . . . . . . . . . . . . . . . . . . . . . 25
1.3.9 Referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
1.4 Raíces de números complejos . . . . . . . . . . . . . . . . . . . . . . 31
1.4.1 Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
CONTENTS 6
List of Figures
LIST OF FIGURES 10
LIST OF TABLES 11
List of Tables
LIST OF TABLES 12
1
Chapter 1
Números Complejos
(a, b) + (c, d) = (a + c, b + d)
(a, b)(c, d) = (ac − bd, ad + bc)
z = a + bi,
• Conmutatividad: z1 + z2 = z2 + z1 y z1 z2 = z2 z1
• Distributividad: z1 (z2 + z3 ) = z1 z2 + z1 z3
7 % Visualización
8 figure;
9 plot(roots, 'ro', 'MarkerFaceColor', 'r');
10 hold on;
11 plot(exp(1i*linspace(0,2*pi,100)), 'b--');
12 grid on; axis equal;
13 title(['Raíces␣', num2str(n), '-ésimas␣de␣la␣unidad']);
14 xlabel('Re(z)'); ylabel('Im(z)');
15 end
1.1. EL SISTEMA DE LOS NÚMEROS COMPLEJOS 3
8 figure;
9 quiver(real(z), imag(z), real(w)-real(z), ...
10 imag(w)-imag(z), 0.5, 'b');
11 grid on; axis equal;
12 title('Transformación␣compleja');
13 xlabel('Re(z)'); ylabel('Im(z)');
14 end
15
16 % Ejemplo de uso
17 f = @(z) z.^2; % Transformación w = z^2
18 visualizeTransform(f, [-2 2], [-2 2]);
6 figure;
7 polarplot([0 theta], [0 r], 'r-', 'LineWidth', 2);
8 hold on;
9 polarplot(theta, r, 'bo', 'MarkerFaceColor', 'b');
10 title(['r␣=␣', num2str(r), ',␣\theta␣=␣', ...
11 num2str(theta*180/pi), '°']);
12 end
13
14 % Ejemplo de uso
15 z = 1 + 1i;
16 polarComplex(z);
a) z1 + z2
b) z1 z2
z1
c) z2
1.1. EL SISTEMA DE LOS NÚMEROS COMPLEJOS 4
d) |z1 |, |z2 |
Solución:
a) z1 + z2 = (3 + 2i) + (1 − 4i) = 4 − 2i
• θ = arg(z) = arctan(1/ − 1) + π = π − π
4
Por lo tanto:
√ π π
z= 2 cos π − + i sin π −
√ i(3π/4) 4 4
= 2e
a) (3 + 4i)(2 − 3i)
1+i
b) 2−i
c) |2 + 2i|
d) (1 + i)4
a) z = 1 + i
b) z = −2 + 2i
c) z = −3
d) z = 2i
1+i (1 + i)(2 + i)
=
2−i (2 − i)(2 + i)
2 + i + 2i + i2
=
4 + i2
1 + 3i
=
5
1 3
= + i
5 5
1.1. EL SISTEMA DE LOS NÚMEROS COMPLEJOS 6
c) |2 + 2i|
√
|2 + 2i| = 22 + 2 2
√
= 8
√
=2 2
d) (1 + i)4
(1 + i)2 = 1 + 2i + i2 = 2i
(1 + i)4 = (2i)2 = 4i2 = −4
b) z = −2 + 2i
p √
r = (−2)2 + 22 = 2 2
θ = arctan(−1) + π = 3π/4
√
z = 2 2(cos(3π/4) + i sin(3π/4))
c) z = −3
r=3
θ=π
z = 3(cos(π) + i sin(π))
d) z = 2i
r=2
θ = π/2
z = 2(cos(π/2) + i sin(π/2))
w0 = cos(π/8) + i sin(π/8)
w1 = cos(5π/8) + i sin(5π/8)
w2 = cos(9π/8) + i sin(9π/8)
w3 = cos(13π/8) + i sin(13π/8)
6 % Graficar la transformación
7 figure;
8 quiver(real(z), imag(z), real(w)-real(z), ...
9 imag(w)-imag(z), 0.5);
10 grid on; axis equal;
11 title('Transformación␣w␣=␣z^3');
12 xlabel('Re(z)'); ylabel('Im(z)');
• Por definición, esto describe una elipse con focos en (1, 0) y (−1, 0)
1.1. EL SISTEMA DE LOS NÚMEROS COMPLEJOS 8
b) Multiplicación y división:
z1 z2 = 2eiπ/3 · 3eiπ/6 = 6eiπ/2 = 6i
z1 2 2
= eiπ/6 = (cos(π/6) + i sin(π/6))
z2 3 3
c) Conjugados:
z1∗ = 2e−iπ/3
z2∗ = 3e−iπ/6
(z1 z2 )∗ = 6e−iπ/2 = −6i = z1∗ z2∗
4 % Encontrar raíces
5 roots = roots(p);
6
7 % Graficar raíces
8 figure;
9 plot(real(roots), imag(roots), 'ro', ...
10 'MarkerFaceColor', 'r');
11 grid on; axis equal;
12 title('Raíces␣del␣polinomio');
13 xlabel('Re(z)'); ylabel('Im(z)');
14
15 % Verificar producto
16 prod_roots = prod(roots);
17 fprintf('Producto␣de␣las␣raíces:␣%f\n', prod_roots);
b) Para transformar 1 + i en −1 + i:
−1 + i
θ = arg
1+i
= arctan(1/ − 1) − arctan(1/1)
3π
=−
4
11 % Graficar puntos
12 figure;
13 scatter(real(z), imag(z), 50, mods, 'filled');
14 colorbar;
15 axis equal;
16 title('Números␣Complejos␣Aleatorios');
17 xlabel('Re(z)'); ylabel('Im(z)');
18
1.1.10 Referencias
• Churchill, R. V., & Brown, J. W. (2009). Complex variables and applications
• Zill, D. G., & Shanahan, P. D. (2011). A first course in complex analysis with
applications
1.2. ÁLGEBRA BÁSICA DE LOS NÚMEROS COMPLEJOS 10
• Suma: z1 + z2 = (a + c) + (b + d)i
• Resta: z1 − z2 = (a − c) + (b − d)i
a) z1 + z2 = z¯1 + z¯2
b) z1 z2 = z¯1 z¯2
c) z z̄ = |z|2 = a2 + b2
d) z1 = z̄1
5 % Operaciones elementales
6 suma = z1 + z2
7 resta = z1 - z2
8 producto = z1 * z2
1.2. ÁLGEBRA BÁSICA DE LOS NÚMEROS COMPLEJOS 11
9 division = z1 / z2
10
11 % Funciones especiales
12 modulo = abs(z1) % Módulo
13 argumento = angle(z1) % Argumento en radianes
14 conjugado = conj(z1) % Conjugado complejo
15 parte_real = real(z1) % Parte real
16 parte_imag = imag(z1) % Parte imaginaria
a) z1 z2
z1
b) z2
d) z1 z2 y z¯1 z¯2
Solución:
a)
z1 z2 = (2 + 3i)(1 − 2i)
= 2 − 4i + 3i − 6i2
=2−i+6
=8−i
b)
z1 (2 + 3i)(1 + 2i)
=
z2 (1 − 2i)(1 + 2i)
2 + 4i + 3i + 6i2
=
1+4
−4 + 7i
=
5
4 7
=− + i
5 5
c)
√ √
|z1 | = 22 + 32 = 13
p √
|z2 | = 12 + (−2)2 = 5
p √
|z1 z2 | = 82 + (−1)2 = 65
√ √ √
|z1 ||z2 | = 13 5 = 65
d)
z1 z2 = 8 − i = 8 + i
z¯1 z¯2 = (2 − 3i)(1 + 2i) = 8 + i
6 % Visualización
7 figure;
8 subplot(1,2,1)
9 plot(real(z), imag(z), 'b-');
10 grid on; axis equal;
11 title('Círculo␣unitario␣original');
12
13 subplot(1,2,2)
14 plot(real(w), imag(w), 'r-');
15 grid on; axis equal;
16 title('Imagen␣bajo␣w␣=␣z^2');
a) (3 − 2i)(4 + 5i)
2+i
b) 3−4i
c) |3 + 4i|2 + |2 − i|2
d) (1 + i)6
a) w = z 3
1
b) w = z
z
c) w = e
d) w = sin(z)
z
5. Analice el comportamiento de la función f (z) = 1−z
:
1.2. ÁLGEBRA BÁSICA DE LOS NÚMEROS COMPLEJOS 14
a) Calcule A2
b) Encuentre sus valores propios
c) Determine si es unitaria
d) Calcule su determinante
2+i
b) 3−4i
d) (1 + i)6
(1 + i)2 = 1 + 2i + i2 = 2i
(1 + i)4 = (2i)2 = −4
(1 + i)6 = (1 + i)4 (1 + i)2 = (−4)(2i) = −8i
z1 |z1 |
b) Para z2
= |z2 |
:
z1 1
= |z1 |
z2 z2
1 |z1 |
= |z1 | =
|z2 | |z2 |
1 z̄
d) Para z
= |z|2
:
z̄ z̄
=
|z| 2 z z̄
1
= para z ̸= 0
z
Solución del Ejercicio 3
5 % Calcular determinante
6 det_A = det(A);
7
13 % Mostrar resultados
14 fprintf('Determinante:␣%f␣+␣%fi\n', real(det_A), imag(det_A));
15 fprintf('Propiedad␣1␣(conmutatividad):␣%e\n', prop1);
16 fprintf('Propiedad␣2␣(adjunta):␣%e\n', prop2);
6 figure;
7 subplot(1,2,1)
8 mesh(x, y, zeros(size(x)));
9 title('Dominio'); view(2);
10
11 subplot(1,2,2)
12 mesh(real(w), imag(w), zeros(size(w)));
13 title('Imagen'); view(2);
14 end
15
16 % Ejemplos de uso
17 range = linspace(-2,2,50);
18 visualizeComplexTransform(@(z) z.^3, range);
19 visualizeComplexTransform(@(z) 1./z, range);
20 visualizeComplexTransform(@(z) exp(z), range);
21 visualizeComplexTransform(@(z) sin(z), range);
1.2. ÁLGEBRA BÁSICA DE LOS NÚMEROS COMPLEJOS 17
• Un polo simple en z = 1
• Comportamiento regular en z = 0
b) Comportamiento en el infinito:
z 1
lim = lim
z→∞ 1 − z z→∞ 1/z − 1
= −1
6 figure;
7 plot(real(w), imag(w));
8 axis equal; grid on;
9 title('Transformación␣del␣círculo␣unitario');
10
a) A2 :
2 1+i 2−i 1+i 2−i
A =
−1 + 2i 3 + i −1 + 2i 3 + i
−2 + 5i 8 − i
=
−4 + 7i 10 + 3i
b) Valores propios:
1 A = [1+1i, 2-1i; -1+2i, 3+1i];
2 eigenvalues = eig(A)
3
AA∗ ̸= I
∴ A no es unitaria
1.2. ÁLGEBRA BÁSICA DE LOS NÚMEROS COMPLEJOS 18
d) Determinante:
a+d
α=
2
b+c
β=
2
i(b − c)
γ=
2
a−d
δ=
2
10 z_new = z - p(z)/dp(z);
11 if abs(z_new - z) < tol
12 break;
13 end
14 z = z_new;
15 end
16
17 roots = roots(1:iter);
18 end
19
20 % Ejemplo de uso
21 p = @(z) z.^3 - 1;
22 dp = @(z) 3*z.^2;
1.2. ÁLGEBRA BÁSICA DE LOS NÚMEROS COMPLEJOS 19
25 % Visualizar convergencia
26 plot(real(roots), imag(roots), 'o-');
27 grid on; axis equal;
28 title('Convergencia␣del␣método␣de␣Newton');
15 % Normalizar
16 P = P./vecnorm(P);
17 end
18
19 % Ejemplo de uso
20 A = [2 1 0; 0 2 1; 0 0 2];
21 [J,P] = jordanForm(A);
13 % Encontrar ciclos
14 [~,periods] = findcycles(z, 0.001);
1.3. PLANO COMPLEJO, MÓDULO Y FORMA POLAR 20
15
16 % Visualizar
17 figure;
18 plot(real(z), imag(z), '.-');
19 grid on; axis equal;
20 title(sprintf('Exponente␣de␣Lyapunov:␣%f', lyap));
21 end
22
36 % Ejemplo de uso
37 f = @(z) z^2 + 0.5;
38 analyzeComplexDynamics(f, 0.5+0.5i, 100);
1.2.9 Referencias
• Horn, R. A., & Johnson, C. R. (2012). Matrix analysis
b) |zw| = |z||w|
|z|
c) | wz | = |w|
para w ̸= 0
e) |z|2 = z z̄
5 % Dibujar ejes
6 xlim = max(abs(real(z_points))) * 1.2;
7 ylim = max(abs(imag(z_points))) * 1.2;
8 plot([-xlim xlim], [0 0], 'k-', 'LineWidth', 1);
9 plot([0 0], [-ylim ylim], 'k-', 'LineWidth', 1);
10
25 axis equal;
26 xlabel('Re(z)'); ylabel('Im(z)');
27 title('Plano␣Complejo');
28 end
6 % Visualización
7 figure;
8 subplot(1,2,1)
9 polarplot([0 theta], [0 r], 'b-', 'LineWidth', 2);
10 hold on;
11 polarplot(theta, r, 'ro');
12 title('Representación␣Polar');
13
14 subplot(1,2,2)
15 plot(real(z), imag(z), 'ro');
16 hold on; grid on;
17 plot([0 real(z)], [0 imag(z)], 'b-');
18 axis equal;
19 title('Plano␣Complejo');
20
21 % Mostrar valores
22 fprintf('Módulo:␣%f\n', r);
23 fprintf('Argumento:␣%f␣radianes␣(%f␣grados)\n', ...
1.3. PLANO COMPLEJO, MÓDULO Y FORMA POLAR 23
24 theta, theta*180/pi);
25 end
Por lo tanto:
z1 z2 = (2eiπ/4 )(3eiπ/3 )
= 6ei(7π/12)
= 6(cos(7π/12) + i sin(7π/12))
Para la división:
z1 2eiπ/4
= iπ/3
z2 3e
2
= ei(−π/12)
3
2
= (cos(−π/12) + i sin(−π/12))
3
Ejemplo 1.12 (Mapeo de regiones). Analizar la transformación w = z 2 sobre el
círculo unitario.
Solución:
1 % Generar puntos en el círculo unitario
2 theta = linspace(0, 2*pi, 100);
3 z = exp(1i*theta);
4 w = z.^2;
5
6 % Visualización
7 figure;
8 subplot(1,2,1)
1.3. PLANO COMPLEJO, MÓDULO Y FORMA POLAR 24
13 subplot(1,2,2)
14 plot(real(w), imag(w), 'r-');
15 title('Imagen␣bajo␣w␣=␣z^2');
16 axis equal; grid on;
a) z = 1 − i
b) z = −2 − 2i
√
c) z = − 3 + i
d) z = 2i
a) (1 + i)4
√
b) −8 + 6i
√ 6
c) 1+i2 3
1−i
d) 1+i
a) z1 z2
b) z1 /z2
c) (z1 z2 )3
√
d) z1 z2
a) |eiθ | = 1
b) arg(z1 z2 ) = arg(z1 ) + arg(z2 ) + 2πn
c) Si |z| = 1, entonces z n = ein arg(z)
d) |z1 ± z2 |2 = |z1 |2 + |z2 |2 ± 2|z1 ||z2 | cos(θ)
b) Para z = −2 − 2i:
p √
r = |z| = (−2)2 + (−2)2 = 2 2
θ = arctan(−2/ − 2) + π = π − π/4 = 3π/4
√ √
∴ z = 2 2(cos(3π/4) + i sin(3π/4)) = 2 2e3πi/4
1.3. PLANO COMPLEJO, MÓDULO Y FORMA POLAR 26
√
c) Para z = − 3 + i:
√
r = |z| = 3+1=2
√
θ = arctan(1/ − 3) + π = π − π/6 = 5π/6
∴ z = 2(cos(5π/6) + i sin(5π/6)) = 2e5πi/6
d) Para z = 2i:
r = |z| = 2
θ = π/2
∴ z = 2(cos(π/2) + i sin(π/2)) = 2eiπ/2
√
b) Para −8 + 6i:
p q √
√
r = | − 8 + 6i| = 64 + 36 = 10
1 1
θ = arg(−8 + 6i) = (arctan(−3/4) + π)
√ 2
√ 2
∴ −8 + 6i = 10(cos(θ) + i sin(θ))
√ 6
1+i 3
c) Para 2
:
√
1+i 3
= eiπ/3
2
√ !6
1+i 3
= (eiπ/3 )6 = e2πi = 1
2
1−i
d) Para 1+i
:
1−i (1 − i)(1 − i) 1 − 2i + i2
= =
1+i (1 + i)(1 − i) 1+1
−i
= = −i = e−iπ/2
1
1.3. PLANO COMPLEJO, MÓDULO Y FORMA POLAR 27
b) z1
z2
= 2eiπ/6 e−iπ/3 = 2e−iπ/6 = 2(cos(−π/6) + i sin(−π/6))
z1 = r1 eiθ1 , z2 = r2 eiθ2
z1 z2 = r1 r2 ei(θ1 +θ2 )
∴ arg(z1 z2 ) = θ1 + θ2 + 2πn
d) Para |z1 ± z2 |2 :
5 % Calcular producto
6 prod = z1 * z2;
7
14
15 % Graficar
16 plot([0 real(z1)], [0 imag(z1)], 'b-');
17 hold on;
18 plot([0 real(z2)], [0 imag(z2)], 'r-');
19 plot([0 real(z_current)], [0 imag(z_current)], 'g-');
20 axis equal; grid on;
21 title('Multiplicación␣Compleja');
22
23 drawnow;
24 hold off;
25 end
26 end
eiθ − 1
z = eiθ ⇒ w = = i tan(θ/2)
eiθ + 1
6 % Visualizar transformación
7 figure;
8 subplot(1,2,1)
9 contour(x,y,real(w)); title('Contornos␣Re(w)');
10 subplot(1,2,2)
11 contour(x,y,imag(w)); title('Contornos␣Im(w)');
zk = e2πik/n , k = 0, 1, . . . , n − 1
X
n−1
1 − e2πi
e2πik/n = =0
k=0
1 − e2πi/n
7 % Visualizar
8 figure;
9 subplot(1,2,1)
10 mesh(x,y,zeros(size(x))); view(2);
11 title('Dominio');
12
13 subplot(1,2,2)
14 mesh(real(w),imag(w),zeros(size(w))); view(2);
15 title(['z^' num2str(n)]);
16 end
1 function complexVisualizer
2 % Crear interfaz gráfica
3 fig = figure('Name', 'Visualizador␣Complejo');
4
5 % Controles de entrada
6 uicontrol('Style', 'edit', 'Position', [20 20 100 20]);
7
8 % Funciones de actualización
9 function updatePlot(~,~)
10 % Obtener entrada y actualizar gráfico
1.3. PLANO COMPLEJO, MÓDULO Y FORMA POLAR 30
11 z = str2num(get(src, 'String'));
12 plotComplex(z);
13 end
14
15 % Función de visualización
16 function plotComplex(z)
17 polar([0 angle(z)], [0 abs(z)]);
18 title(['r␣=␣' num2str(abs(z)) ...
19 ',␣�␣=␣' num2str(angle(z))]);
20 end
21 end
6 % Graficar
7 figure;
8 plot(real(z), imag(z), 'LineWidth', 2);
9 grid on; axis equal;
10 xlabel('Re(z)'); ylabel('Im(z)');
11 title('Curva␣Paramétrica');
12 end
13
14 % Ejemplos de uso
15 t = linspace(0, 2*pi, 1000);
16 plotParametricCurve(@(t) exp(1i*t), [0 2*pi]);
17 plotParametricCurve(@(t) t.*exp(1i*t), [0 2*pi]);
18 plotParametricCurve(@(t) cos(t) + 1i*sin(2*t), [0 2*pi]);
1.3.9 Referencias
• Needham, T. (1997). Visual complex analysis
• Ablowitz, M. J., & Fokas, A. S. (2003). Complex variables: introduction and
applications
• Krantz, S. G. (2007). Complex variables: a physical approach with applica-
tions
1.4. RAÍCES DE NÚMEROS COMPLEJOS 31
satisfacen la ecuación:
wn = z
Teorema 1.14 (Existencia de raíces n-ésimas). Todo número complejo no nulo z
tiene exactamente n raíces n-ésimas distintas.
wk = r1/n ei(θ+2πk)/n , k = 0, 1, . . . , n − 1
wn = z
(ρeiϕ )n = reiθ
ρn einϕ = reiθ
ρn = r ⇒ ρ = r1/n
θ + 2πk
nϕ = θ + 2πk ⇒ϕ=
n
donde k = 0, 1, . . . , n − 1.
12 % Visualización
13 figure;
14 plot(real(roots), imag(roots), 'bo', ...
15 'MarkerFaceColor', 'b', 'MarkerSize', 8);
16 hold on;
17
7 figure;
8 for t = linspace(0, 1, 50)
9 k = 0:n-1;
10 angles = t * (theta + 2*pi*k)/n;
11 roots = r_nth * exp(1i*angles);
12
20 drawnow;
21 end
22 end
a) z si n es impar
b) |z| si n es par
6. Para z = 4 + 4i:
wk = (32)1/5 ei(π/3+2πk)/5 , k = 0, 1, 2, 3, 4
(32)1/5 = 2
∴ wk = 2ei(π/3+2πk)/5
Verificación en MATLAB:
1 % Calcular raíces
2 r = 2; % (32)^(1/5)
3 k = 0:4;
4 theta = (pi/3 + 2*pi*k)/5;
5 w = r * exp(1i*theta);
6
7 % Visualización
8 figure;
9 plot(real(w), imag(w), 'bo', 'MarkerFaceColor', 'b');
10 hold on;
11 t = linspace(0, 2*pi, 100);
12 circle = r * exp(1i*t);
13 plot(real(circle), imag(circle), 'r--');
14 grid on; axis equal;
15 title('Raíces␣quintas␣de␣32e^{�i/3}');
1.4. RAÍCES DE NÚMEROS COMPLEJOS 36
wk = r1/n ei(θ+2πk)/n , k = 0, 1, . . . , n − 1
El producto es:
Y
n−1 Y
n−1
wk = r1/n ei(θ+2πk)/n
k=0 k=0
!
iX
n−1
= r exp (θ + 2πk)
n k=0
2πi n(n − 1)
= r exp iθ +
n 2
iθ
= re = z
wk = 2ei(π+2πk)/3 , k = 0, 1, 2
iπ/3
√
w0 = 2e =1+i 3
w1 = 2eiπ = −2
√
w2 = 2e5iπ/3 = 1 − i 3
b) Verificación:
w03 = 8eiπ = −8
w13 = −8
w23 = −8
c) Código de visualización:
1 w = 2 * exp(1i*(pi + 2*pi*(0:2))/3);
2 figure;
3 plot(real(w), imag(w), 'bo', 'MarkerFaceColor', 'b');
4 hold on;
5 plot(2*cos(linspace(0,2*pi,100)), ...
6 2*sin(linspace(0,2*pi,100)), 'r--');
7 grid on; axis equal;
8 title('Raíces␣cúbicas␣de␣-8');
1.4. RAÍCES DE NÚMEROS COMPLEJOS 37
donde k3 ≡ k1 + k2 (mod n)
2) Asociatividad: Heredada de la multiplicación compleja.
3) Elemento neutro: 1 = e2πi·0/n
4) Inverso: Para w = e2πik/n , su inverso es w−1 = e2πi(n−k)/n
1 function visualizeNthRoots(z, n)
2 % Calcular raíces
3 r = abs(z)^(1/n);
4 theta = angle(z);
5 k = 0:n-1;
6 w = r * exp(1i*(theta + 2*pi*k)/n);
7
8 % Visualización
9 figure;
10
11 % Raíces y círculo
12 plot(real(w), imag(w), 'bo', 'MarkerFaceColor', 'b');
13 hold on;
14 t = linspace(0, 2*pi, 100);
15 circle = r * exp(1i*t);
16 plot(real(circle), imag(circle), 'r--');
17
18 % Polígono
19 for k = 1:n
20 k2 = mod(k, n) + 1;
21 plot([real(w(k)) real(w(k2))], ...
22 [imag(w(k)) imag(w(k2))], 'g-');
23 end
24
w0 = 2(cos(π/8) + i sin(π/8))
w1 = 2(cos(9π/8) + i sin(9π/8))
b) Raíces cuartas:
wk = 23/4 ei(π/4+2πk)/4 , k = 0, 1, 2, 3
c) Visualización comparativa:
1 z = 4 + 4i;
2 subplot(1,2,1);
3 visualizeNthRoots(z, 2);
4 title('Raíces␣cuadradas');
5
6 subplot(1,2,2);
7 visualizeNthRoots(z, 4);
8 title('Raíces␣cuartas');
arg(z) + 2πk
arg(w) = , k = 0, 1, . . . , n − 1
n
Divide el argumento por n y genera n copias.
c) Código de visualización:
1.4. RAÍCES DE NÚMEROS COMPLEJOS 39
1 function visualizePowerTransform(n)
2 [x,y] = meshgrid(linspace(-2,2,20));
3 z = x + 1i*y;
4 w = z.^(1/n);
5
6 figure;
7 subplot(1,2,1);
8 mesh(x,y,zeros(size(x))); view(2);
9 title('Dominio');
10
11 subplot(1,2,2);
12 mesh(real(w),imag(w),zeros(size(w))); view(2);
13 title(['w␣=␣z^{1/' num2str(n) '}']);
14 end
1 function animateRootFormation(z, n)
2 % Animación de la formación de raíces
3 r = abs(z);
4 theta = angle(z);
5 r_nth = r^(1/n);
6
7 figure;
8 for t = linspace(0, 1, 50)
9 k = 0:n-1;
10 angles = t*(theta + 2*pi*k)/n;
11 roots = r_nth * exp(1i*angles);
12
30 drawnow;
31 end
1.5. LUGARES GEOMÉTRICOS Y REGIONES EN EL PLANO COMPLEJO40
32 end
b) Propiedades de simetría:
• Las raíces son simétricas respecto al origen
1.4.9 Referencias
• Conway, J. B. (1978). Functions of one complex variable
S = {z ∈ C : P (z) es verdadera}
Círculos y discos
Sea c ∈ C el centro y r > 0 el radio:
• Circunferencia: |z − c| = r
• Disco cerrado: |z − c| ≤ r
Curvas cónicas
Las cónicas en el plano complejo tienen representaciones elegantes:
• Elipse: |z − f1 | + |z − f2 | = 2a
• Hipérbola: |z − f1 | − |z − f2 | = 2a
• Parábola: |z − f | = |z − L|
7 figure;
1.5. LUGARES GEOMÉTRICOS Y REGIONES EN EL PLANO COMPLEJO42
7 figure;
8 subplot(1,2,1);
9 contourf(x, y, double(region(z)), 1);
10 title('Región␣original');
11 axis equal; grid on;
12
13 subplot(1,2,2);
14 contourf(real(w), imag(w), double(region(z)), 1);
15 title('Región␣transformada');
16 axis equal; grid on;
17 end
18
1 [x,y] = meshgrid(-3:0.1:3);
2 z = x + 1i*y;
3 region = (abs(z) <= 2) & (abs(z-1) >= 1);
4
5 figure;
6 contourf(x, y, double(region), 1);
7 colormap([1 1 1; 0.8 0.8 1]);
8 axis equal; grid on;
9 title('Intersección␣de␣regiones');
Ejemplo 1.20 (Lugar geométrico). Encontrar el lugar geométrico de los puntos que
satisfacen |z + 1| = |z − 1|.
Solución:
|z + 1| = |z − 1|
(z + 1)(z + 1) = (z − 1)(z − 1)
|z|2 + z + z + 1 = |z|2 − z − z + 1
2(z + z) = 0
Re(z) = 0
a) |z − i| = |z + i|
b) arg(z − 1) = π/4
c) |z − 2| = 2|z + 1|
d) Re(z 2 ) = 1
a) La recta Re(z) = 1
b) El círculo |z − 1| = 1
c) La región |z| > 1
a) La región |z 2 + z| < 1
b) Su transformación bajo w = z 2
c) El área aproximada de la región
d) Los puntos críticos donde |z 2 + z| = 1
a) Represéntela gráficamente
b) Encuentre su imagen bajo w = z 2
c) Calcule el área de la región original y de su imagen
d) Demuestre que la transformación preserva áreas en ciertos puntos
Sugerencias:
|(x + yi)2 + 1| ≤ 2
|(x2 − y 2 + 1) + (2xy)i| ≤ 2
(x2 − y 2 + 1)2 + 4x2 y 2 ≤ 4
|z − i|2 = |z + i|2
(x2 + (y − 1)2 ) = (x2 + (y + 1)2 )
y − 1 = −(y + 1)
y=0
b) arg(z − 1) = π/4:
c) |z − 2| = 2|z + 1|:
Re(z 2 ) = 1
x2 − y 2 = 1
• Sea z = 1 + yi
1 1−yi
• w= 1+yi
= 1+y 2
• Esto describe una circunferencia que pasa por el origen
b) El círculo |z − 1| = 1 bajo w = z1 :
1
• La transformación w = z
es una inversión
• La imagen es una recta vertical
• Esto se puede demostrar usando que la inversión transforma círculos que
pasan por el origen en rectas
1.5. LUGARES GEOMÉTRICOS Y REGIONES EN EL PLANO COMPLEJO47
1
|z| > 1 =⇒ | | < 1
z
|w| < 1
6 figure;
7 contourf(x,y,double(region),1,'LineColor','none');
8 colormap([1 1 1; 0.8 0.8 1]);
9 axis equal; grid on;
10 title('Región␣|z^2␣+␣z|␣<␣1');
11
16 figure;
17 subplot(1,2,1);
18 contourf(x,y,double(region),1);
19 title('Región␣original');
20 axis equal; grid on;
21
22 subplot(1,2,2);
23 contourf(real(w),imag(w),double(transformed),1);
24 title('Región␣transformada');
25 axis equal; grid on;
26
27 % Área aproximada
28 dx = x(1,2) - x(1,1);
29 dy = y(2,1) - y(1,1);
30 area = sum(sum(region))*dx*dy;
31 fprintf('Área␣aproximada:␣%f\n', area);
1.5. LUGARES GEOMÉTRICOS Y REGIONES EN EL PLANO COMPLEJO48
5 figure;
6 contourf(x,y,double(region),1);
7 axis equal; grid on;
8 title('Semidisco␣unitario␣derecho');
9
b) La imagen bajo w = z 2 :
• Es el disco unitario completo
• Cada punto del disco unitario tiene exactamente una preimagen en el
semidisco derecho
c) El área:
π
Área original =
2
Área imagen = π
Solución del Ejercicio 7
a) Demostración:
|z 2 − 1| = |z 2 + 1|
(x2 − y 2 − 1)2 + 4x2 y 2 = (x2 − y 2 + 1)2 + 4x2 y 2
x2 − y 2 = 0
y = ±x
Son las rectas y = x y y = −x.
b) Ángulo con los ejes: θ = ± π4 con el eje x.
c) Intersección con |z| = 1: Los puntos (± √12 , ± √12 ).
1.5. LUGARES GEOMÉTRICOS Y REGIONES EN EL PLANO COMPLEJO49
5 figure;
6 contourf(x,y,double(region),1);
7 axis equal; grid on;
8 title('Región␣|z^3␣+␣z|␣\leq␣1');
9
1.5. LUGARES GEOMÉTRICOS Y REGIONES EN EL PLANO COMPLEJO50
1.5.8 Referencias
• Churchill, R. V., & Brown, J. W. (2009). Complex variables and applications
Chapter 2
Importancia: El uso del plano complejo permite extender propiedades del análi-
sis real, proporcionando una estructura algebraica y geométrica que facilita el estudio
de funciones analíticas.
2.1.3 Transformaciones
Definición 2.3. Una transformación compleja es una función w = f (z) que mapea
puntos del plano complejo C en otros puntos del mismo plano. Estas transforma-
ciones pueden clasificarse según su forma y propiedades geométricas.
Tipos principales de transformaciones:
• Transformaciones lineales: Son de la forma:
w = az + b, a, b ∈ C, a ̸= 0.
Estas combinan rotaciones, traslaciones y escalas, preservando ángulos y rela-
ciones geométricas locales.
• Transformaciones racionales: También conocidas como transformaciones
de Möbius, tienen la forma:
az + b
w= , ad − bc ̸= 0.
cz + d
Estas transformaciones mapean líneas y círculos en líneas o círculos y tienen
propiedades conformes en su dominio de definición.
Relación con la geometría: Las transformaciones complejas permiten analizar
y manipular figuras en el plano complejo mediante mapeos conformes, útiles en
aplicaciones geométricas y físicas.
Nota: La extensión y el estudio de estas transformaciones son esenciales para
comprender propiedades avanzadas de funciones analíticas.
Ejercicios Resueltos
Ejercicio 1
Problema: Representar el número complejo z = 3 − 4i en forma polar y calcular
su módulo y argumento.
Concepto: La forma polar de un número complejo permite expresar z en térmi-
nos de su módulo r y su argumento θ. Esto facilita operaciones como multiplicaciones
y potencias en el plano complejo. Se utiliza la relación:
z = reiθ , donde r = |z| es el módulo y θ = arg(z) es el argumento.
Solución Analítica: Dado z = 3 − 4i, identificamos:
x = 3, y = −4.
2.1. CONCEPTOS BÁSICOS, EXTENSIÓN AL DOMINIO COMPLEJO, Y
TRANSFORMACIONES 53
1. Calculamos el módulo r:
p p √
r = x2 + y 2 = 32 + (−4)2 = 9 + 16 = 5.
2. Calculamos el argumento θ:
y
−4
θ = arctan = arctan .
x 3
Dado que z se encuentra en el cuarto cuadrante (x > 0, y < 0), el valor de θ es:
θ ≈ −0.93 rad.
3. Representamos el número en forma polar:
z = 5e−0.93i .
Nota: El argumento puede expresarse en grados si es necesario. En este caso:
180
θ = −0.93 rad × ≈ −53.13◦ .
π
Código MATLAB:
1 % Número complejo
2 z = 3 - 4i;
3
Ejercicio 2
Problema: Evaluar f (z) = z 2 + 2z + 1 para z = 1 + i.
Solución Analítica: Sustituimos z = 1 + i en la función:
f (z) = z 2 + 2z + 1.
Resolviendo paso a paso:
2.1. CONCEPTOS BÁSICOS, EXTENSIÓN AL DOMINIO COMPLEJO, Y
TRANSFORMACIONES 54
1. Calculamos z 2 :
2. Calculamos 2z:
2(1 + i) = 2 + 2i.
Ejercicio 3
Problema: Determinar la transformación de Möbius:
z−1
w=
z+1
para z = 2 + 3i.
Concepto: Una transformación de Möbius es una función racional de la forma:
az + b
w= , ad − bc ̸= 0,
cz + d
que mapea el plano complejo C en sí mismo, preservando líneas y círculos. Estas
transformaciones son fundamentales en geometría compleja y física.
Solución Analítica: Sustituimos z = 2 + 3i en la transformación dada:
(2 + 3i) − 1
w= .
(2 + 3i) + 1
2.1. CONCEPTOS BÁSICOS, EXTENSIÓN AL DOMINIO COMPLEJO, Y
TRANSFORMACIONES 55
Simplificamos el numerador y denominador:
1 + 3i
w= .
3 + 3i
Para eliminar el número complejo del denominador, multiplicamos numerador y
denominador por el conjugado del denominador 3 − 3i:
(1 + 3i)(3 − 3i)
w= .
(3 + 3i)(3 − 3i)
Desarrollamos:
4 % Calcular módulo
5 r = abs(w); % Módulo del número complejo
6
7 % Calcular argumento
8 theta = angle(w); % Argumento en radianes
9
10 % Mostrar resultados
11 fprintf('w␣=␣%.2f␣e^{%.2fi}\n', r, theta); % Forma polar
12 fprintf('Argumento␣en␣grados:␣%.2f°\n', rad2deg(theta)); % Convertir a
grados
2.1. CONCEPTOS BÁSICOS, EXTENSIÓN AL DOMINIO COMPLEJO, Y
TRANSFORMACIONES 57
Explicación del código:
Ejercicio 5
Problema: Aplicar la transformación lineal:
w = 2z + 3
para z = −1 + i.
Concepto: Una transformación lineal de la forma w = az + b, donde a, b ∈ C,
realiza las siguientes operaciones en el plano complejo: - **Rotación y escala**: El
coeficiente a rota y escala el número complejo z. - **Traslación**: El término b
desplaza el resultado por suma.
En este caso, a = 2 y b = 3, por lo que la transformación escala z por un factor
de 2 y lo desplaza 3 unidades en el eje real.
Solución Analítica: Sustituimos z = −1 + i en la transformación:
w = 2(−1 + i) + 3.
2(−1 + i) = −2 + 2i.
2. Sumamos 3:
w = −2 + 2i + 3 = 1 + 2i.
Resultado: El valor de w es:
w = 1 + 2i.
Ejercicios Propuestos
1. Cálculo de funciones:
Evaluar la función f (z) = z 3 − 2z + 5 para z = −1 + i.
2. Módulo y argumento:
3+4i
Hallar el módulo y el argumento de w = 1−i
.
3. Transformaciones lineales:
Aplicar la transformación w = 2z + i para z = −2 + 3i. Representar el
resultado gráficamente en el plano complejo.
6. Forma polar:
Expresar el número complejo z = −3 − 3i en forma polar. Identificar su
módulo y argumento.
7. Ecuaciones complejas:
Resolver la ecuación z 2 + 4z + 13 = 0 en el campo de los números complejos.
8. Mapeo conforme:
Determinar la imagen del círculo |z| = 2 bajo la transformación w = z1 .
2.1. CONCEPTOS BÁSICOS, EXTENSIÓN AL DOMINIO COMPLEJO, Y
TRANSFORMACIONES 59
9. Exponencial compleja:
Simplificar ez para z = iπ. Expresar el resultado en forma rectangular.
10. Serie de potencias: P
Determinar el radio de convergencia de la serie ∞n=1
zn
n2
.
−2(−1 + i) = 2 − 2i.
f (z) = 2 + 2i + 2 − 2i + 5 = 9.
f (z) = 9.
Código MATLAB:
1 % Definir el número complejo z
2 z = -1 + 1i;
3
3 + 4i 1 + i (3 + 4i)(1 + i)
w= · = .
1−i 1+i (1 − i)(1 + i)
1. Expandimos el numerador:
2. Expandimos el denominador:
(1 − i)(1 + i) = 1 − i2 = 1 + 1 = 2.
Por lo tanto:
−1 + 7i 1 7
w= = − + i.
2 2 2
Cálculo del módulo: El módulo de w es:
s 2 r r r √
2
1 7 1 49 50 25 5 2
|w| = − + = + = = = .
2 2 4 4 4 2 2
θ = π − tan−1 (7).
Resultado final:
√
5 2
|w| = , θ = π − tan−1 (7).
2
Resolución en MATLAB: El cálculo del módulo y argumento puede realizarse
en MATLAB con el siguiente código:
2.1. CONCEPTOS BÁSICOS, EXTENSIÓN AL DOMINIO COMPLEJO, Y
TRANSFORMACIONES 61
1 % Definir w
2 w = (3 + 4i) / (1 - 1i);
3
4 % Calcular el módulo
5 modulo = abs(w);
6
7 % Calcular el argumento
8 argumento = angle(w);
9
10 % Mostrar resultados
11 fprintf('El␣módulo␣de␣w␣es:␣%.4f\n', modulo);
12 fprintf('El␣argumento␣de␣w␣es:␣%.4f␣rad\n', argumento);
Resultados MATLAB:
• Módulo: 3.5355.
w = 2(−2 + 3i) + i.
w = −4 + 6i + i = −4 + 7i.
w = −4 + 7i.
1 % Definir z
2 z = -2 + 3i;
3
4 % Aplicar la transformación
5 w = 2*z + 1i;
6
• plot: Dibuja z como un círculo y w como una cruz, representando los puntos
en el plano complejo.
• legend show: Muestra una leyenda para identificar los puntos y la transfor-
mación.
• xlabel, ylabel: Etiquetan los ejes como la parte real (ℜ) y la parte imaginaria
(ℑ).
Resultados:
z · z = (a + bi)(a − bi) = a2 + b2 ,
z = 1 − i.
Calculamos el producto z · z:
z · z = (1 + i)(1 − i).
z · z = 12 − (i2 ) = 1 − (−1) = 1 + 1 = 2.
4 % Calcular el conjugado de z
5 z_conjugado = conj(z);
6
10 % Mostrar resultados
11 disp(['z␣=␣', num2str(z)]);
12 disp(['Conjugado␣de␣z␣=␣', num2str(z_conjugado)]);
13 disp(['Producto␣z␣*␣conjugado(z)␣=␣', num2str(producto)]);
Por lo tanto, f (z) es una función puramente real y se puede expresar como:
Resultados:
• Derivadas parciales:
∂u ∂u ∂v ∂v
= 2x, = 2y, = 0, = 0.
∂x ∂y ∂x ∂y
2. Determinamos el argumento:
−1 −3
θ = tan = tan−1 (1).
−3
4 % Calcular el módulo
5 modulo = abs(z);
6
10 % Mostrar resultados
2.1. CONCEPTOS BÁSICOS, EXTENSIÓN AL DOMINIO COMPLEJO, Y
TRANSFORMACIONES 67
11 disp(['Módulo:␣', num2str(modulo)]);
12 disp(['Argumento␣(radianes):␣', num2str(argumento)]);
13 disp(['Forma␣polar:␣', num2str(modulo), '␣*␣exp(i*', num2str(argumento),
')']);
• roots([a, b, c]): Calcula las raíces del polinomio definido por los coefi-
cientes a, b, c.
Resultados en MATLAB:
• Solución 1: z1 = −2 + 3i.
• Solución 2: z2 = −2 − 3i.
7 % Mostrar el resultado
8 disp(['e^(i*pi)␣=␣', num2str(result)]);
eiπ + 1 = 0,
que es conocida como la identidad de Euler, una de las relaciones más elegantes en
matemáticas.
R = 1.
Código MATLAB:
1 % Número de términos de la serie
2 N = 1000;
3
9 % Mostrar el resultado
10 disp(['El␣radio␣de␣convergencia␣es:␣', num2str(radius)]);
2.2 Límites
2.2.1 Definición y Teoremas Fundamentales
El concepto de límite en el análisis complejo generaliza la noción de límite en los
números reales al plano complejo. Para una función f (z), decimos que:
lim f (z) = L
z→z0
si, para cualquier ϵ > 0, existe un δ > 0 tal que |f (z) − L| < ϵ siempre que
0 < |z − z0 | < δ.
En otras palabras, el valor de f (z) puede aproximarse arbitrariamente a L cuando
z se aproxima a z0 , sin importar la dirección desde la que z se acerque. Este concepto
es crucial en el estudio de funciones complejas debido a la naturaleza bidimensional
del plano complejo.
3. Producto:
lim [f (z) · g(z)] = lim f (z) · lim g(z) .
z→z0 z→z0 z→z0
4. Cociente:
f (z) limz→z0 f (z)
lim = ,
z→z0 g(z) limz→z0 g(z)
siempre que limz→z0 g(z) ̸= 0.
Estas propiedades permiten realizar operaciones algebraicas en límites de fun-
ciones complejas de manera análoga a las operaciones en límites reales.
Continuidad
Una función f (z) es continua en un punto z0 si:
1. f (z0 ) está definida.
2. El límite limz→z0 f (z) existe.
3. limz→z0 f (z) = f (z0 ).
La continuidad es esencial en el análisis complejo, ya que muchas propiedades
fundamentales, como la diferenciabilidad, dependen de que las funciones sean con-
tinuas.
2.2. LÍMITES 73
Límites en el Infinito
El concepto de límite también se extiende para describir el comportamiento de f (z)
cuando z → ∞. Decimos que:
lim f (z) = L
z→∞
si, para cualquier ϵ > 0, existe un R > 0 tal que |f (z) − L| < ϵ siempre que |z| > R.
De manera similar, si f (z) crece sin acotarse cuando z → ∞, escribimos:
lim f (z) = ∞.
z→∞
2. Producto:
lim [f (z) · g(z)] = lim f (z) · lim g(z) .
z→∞ z→∞ z→∞
3. Cociente:
f (z) limz→∞ f (z)
lim = ,
z→∞ g(z) limz→∞ g(z)
siempre que limz→∞ g(z) ̸= 0.
Ejemplos Resueltos
1. Cálculo de un límite básico:
Calcular:
lim (z 2 + 1).
z→2+3i
f (z) = z 2 + 1.
Calculamos (2 + 3i)2 :
Por lo tanto:
f (z) = (−5 + 12i) + 1 = −4 + 12i.
Entonces:
lim (z 2 + 1) = −4 + 12i.
z→2+3i
Solución en MATLAB:
Utilizando el paquete simbólico de MATLAB para verificar el cálculo alge-
braico:
1 % Definir la variable simbólica
2 syms z
3
4 % Definir la función
5 f = z^2 + 1;
6
7 % Sustituir z por 2 + 3i
8 z_val = 2 + 3i;
9 resultado = subs(f, z, z_val);
10
11 % Mostrar el resultado
12 disp(['El␣resultado␣es:␣', char(resultado)]);
lim (z 2 + 1) = −4 + 12i.
z→2+3i
2. Límite en el infinito:
Calcular:
z+2
lim .
z→∞ z2 + 1
Solución analítica:
Dividimos el numerador y el denominador por z 2 , el término de mayor grado
en el denominador:
z
z+2 z2
+ z22 1
z
+ z22
= z2
= 1 .
z2 + 1 z 2 + z
1
2 1 + z2
2.2. LÍMITES 75
z+2 0+0
lim = = 0.
z→∞ z 2 + 1 1+0
Solución en MATLAB:
Podemos utilizar MATLAB para verificar este cálculo simbólicamente:
1 % Declarar la variable simbólica
2 syms z
3
4 % Definir la función
5 f = (z + 2) / (z^2 + 1);
6
10 % Mostrar el resultado
11 disp(['El␣límite␣es:␣', char(limite)]);
Solución analítica:
En el plano complejo ampliado, al calcular el límite de z1 cuando z → ∞,
podemos observar que para |z| > R (donde R es arbitrariamente grande), el
término z1 se hace arbitrariamente pequeño, ya que su módulo cumple:
1 1
= .
z |z|
Solución en MATLAB:
Usamos MATLAB para verificar este resultado simbólicamente:
1 % Declarar la variable simbólica
2 syms z
3
4 % Definir la función
5 f = 1 / z;
6
10 % Mostrar el resultado
11 disp(['El␣límite␣es:␣', char(limite)]);
Solución analítica:
Sustituimos directamente z = i en la función:
z−i i−i
2
= 2 .
z +1 i +1
El numerador es:
i − i = 0.
El denominador es:
i2 + 1 = −1 + 1 = 0.
Esto da lugar a una indeterminación 00 , por lo que debemos analizar el límite
utilizando el enfoque de factorización o derivación.
2.2. LÍMITES 77
Resolviendo el límite:
La función es:
z−i
f (z) = .
z2 + 1
Factorizamos el denominador z 2 + 1 = (z − i)(z + i), lo que permite cancelar
z − i en el numerador y denominador, siempre que z ̸= i:
z−i 1
f (z) = = , z ̸= i.
(z − i)(z + i) z+i
Por lo tanto:
z−i 1
lim 2
= .
z→i z +1 2i
Verificación en MATLAB:
El cálculo puede verificarse usando MATLAB:
1 % Declarar la variable simbólica
2 syms z
3
4 % Definir la función
5 f = (z - 1i) / (z^2 + 1);
6
10 % Mostrar el resultado
11 disp(['El␣límite␣es:␣', char(limite)]);
—
2.2. LÍMITES 78
5. Transformación en el infinito:
Determinar la imagen de z → ∞ bajo la transformación:
1
w= .
z
Solución analítica:
Consideremos la transformación w = z1 .
Cuando z → ∞, el módulo de z, denotado por |z|, crece indefinidamente
(|z| → ∞). Ahora analizamos el comportamiento del módulo de w:
1 1
|w| = = .
z |z|
Si |z| → ∞, entonces 1
|z|
→ 0, lo que implica que w → 0 en el plano complejo
ampliado.
Además, notemos que:
1
Arg(w) = Arg = −Arg(z),
z
1
La transformación w = mapea z = ∞ al punto w = 0.
z
4 % Definir la transformación
5 w = 1/z;
6
10 % Mostrar el resultado
11 disp(['La␣imagen␣de␣z␣->␣infinito␣bajo␣la␣transformación␣es:␣',
char(limite)]);
2.2. LÍMITES 79
Ejercicios Propuestos
1. Límite básico:
Calcular:
z 2 − 2z + 1
lim .
z→1+i z − (1 + i)
3. Límite en el infinito:
Evaluar:
2z + 3
lim .
z→∞ z 2 + 1
6. Transformación en el infinito:
Encontrar la imagen de z → ∞ bajo la transformación:
z
w= .
z+1
Solución Analítica:
2
La función ez es continua y analítica en el dominio de los números complejos.
Una herramienta poderosa para estudiar su comportamiento alrededor de z =
2
0 es la expansión en serie de Taylor. La serie de Taylor para ez en z = 0 es:
2 (z 2 )2 (z 2 )3
ez = 1 + z 2 + + + ··· .
2! 3!
z2 (z 2 )2 (z 2 )3
e −1= 1+z + 2
+ + · · · − 1.
2! 3!
Al simplificar, resulta:
2 z4 z6
ez − 1 = z 2 + + + ··· .
2! 3!
Evaluamos el límite:
z2 z4 z6
lim e − 1 = lim z + + + ··· 2
.
z→0 z→0 2! 3!
El límite es:
0
cuando z tiende a 0.
• Límite en el infinito:
Evaluar:
2z + 3
lim .
z→∞ z 2 + 1
Solución Analítica:
Dada la función f (z) = 2z+3
z 2 +1
, analizamos el comportamiento de f (z) cuando
z → ∞. Dividimos el numerador y el denominador entre la mayor potencia
de z, es decir, z 2 :
2z
2z + 3 z2
+ z32
= z2
.
z2 + 1 z2
+ z12
El límite es:
0
Este código genera una gráfica que muestra cómo la función se aproxima a 0
cuando z crece indefinidamente.
Solución Analítica:
Dada la función:
z2 + 1
f (z) = ,
z2 − 1
evaluamos el límite cuando z → i. Al sustituir directamente z = i, obtenemos:
i2 + 1
f (i) = 2 .
i −1
2.2. LÍMITES 84
Por lo tanto:
0.
Interpretación de la Singularidad:
En z = i, la función presenta un punto donde tanto el numerador como el
denominador se anulan (0/0), lo que indica una singularidad que podría ser
removible. Para confirmar esto, reescribimos la función y evaluamos el límite.
**Reescritura de la función:** Factorizamos el numerador y el denominador:
**Salida esperada:**
El límite es:
0
Solución Analítica:
Dada la función:
f (z) = |z + 2 + 2i| ,
evaluamos el límite cuando z → −2 − 2i.
La expresión dentro del valor absoluto es:
z + 2 + 2i.
Si z → −2 − 2i, entonces:
z + 2 + 2i = (−2 − 2i) + 2 + 2i = 0.
Sustituimos en f (z):
Por lo tanto:
0.
Interpretación:
El valor absoluto mide la distancia de z + 2 + 2i al origen en el plano complejo.
Cuando z → −2 − 2i, la distancia tiende a cero, ya que el argumento dentro
del módulo se anula en ese punto.
Verificación con MATLAB:
Utilizamos MATLAB para calcular el límite simbólicamente. El código es:
Listing 2.8: Código para calcular el límite en MATLAB
1 syms z
2 limite = limit(abs(z + 2 + 2i), z, -2 - 2i);
3 disp('El␣límite␣es:');
4 disp(limite);
5
2.2. LÍMITES 86
**Salida esperada:**
El límite es:
0
• Transformación en el infinito:
Encontrar la imagen de z → ∞ bajo la transformación:
z
w= .
z+1
Solución Analítica:
La transformación dada es:
z
w= .
z+1
Consideremos el comportamiento de w cuando z → ∞:
z
lim w = lim .
z→∞ z→∞ z + 1
Como z → ∞, el término 1
z
→ 0. Por lo tanto:
1
lim w = = 1.
z→∞ 1+0
**Resultado final:**
w=1.
2.2. LÍMITES 87
Interpretación Geométrica:
Esta transformación puede interpretarse como un mapeo del plano complejo
extendido mediante una función racional. En este caso, cuando z se aproxima
a infinito, la transformación compacta el valor de z a w = 1.
Verificación con MATLAB:
Utilizamos MATLAB para calcular el límite simbólicamente. El código es:
Listing 2.10: Cálculo del límite en MATLAB
1 syms z
2 w = z / (z + 1);
3 limite = limit(w, z, inf);
4 disp('El␣límite␣es:');
5 disp(limite);
6
**Salida esperada:**
El límite es:
1
Solución Analítica:
La función dada es:
f (z) = log(z 2 − 1).
z 2 − 1 = (z − 1)(z + 1).
2.2. LÍMITES 88
Sustituyendo, obtenemos:
log(z 2 − 1) = log (z − 1)(z + 1) .
**Salida esperada:**
El límite es:
-Inf
Solución Analítica:
La función dada es:
z2 − 4
f (z) = .
z−2
Observamos que el numerador z 2 − 4 puede factorizarse como:
z 2 − 4 = (z − 2)(z + 2).
(z − 2)(z + 2)
f (z) = .
z−2
f (z) = z + 2.
**Salida esperada:**
El límite es:
4
2.2. LÍMITES 90
Solución Analítica:
La función seno en el dominio complejo está definida como:
eiz − e−iz
sin(z) = .
2i
ei(πi) − e−i(πi)
sin(πi) = .
2i
Entonces:
e−π − eπ
sin(πi) = .
2i
Factorizando eπ :
1 − e2π
sin(πi) = .
2ieπ
Conclusión: El límite es:
e−π − eπ
.
2i
**Salida esperada:**
El límite es:
(exp(-pi) - exp(pi)) / (2i)
Solución Analítica:
Representamos z en coordenadas polares como:
z = reiθ ,
z = re−iθ .
z re−iθ
= .
z reiθ
2.2. LÍMITES 92
Simplificamos:
z
= e−iθ · e−iθ = e−2iθ .
z
z
lim no existe.
z→0 z
**Salida esperada:**
2.3.1 Continuidad
Sea f : C → C una función compleja. Decimos que f (z) es continua en un punto
z0 ∈ C si para toda ε > 0, existe un δ > 0 tal que:
Importancia de la Continuidad
La continuidad garantiza un comportamiento suave de las funciones y permite definir
límites y derivadas, que son esenciales para construir teorías más avanzadas. En el
contexto del análisis complejo, las funciones continuas son el punto de partida para
estudiar propiedades más específicas como la analiticidad, que es clave en problemas
como la solución de ecuaciones diferenciales y la modelización en ingeniería.
f (z) − f (z0 )
f ′ (z0 ) = lim ,
z→z0 z − z0
si el límite existe. Este límite, a diferencia del análisis real, debe ser independiente de
la dirección en la que z tiende a z0 . Esta independencia es una característica única
de las funciones complejas diferenciables y conduce a propiedades extraordinarias
como la analiticidad.
Una función f (z) es diferenciable en un conjunto abierto U ⊆ C si es diferen-
ciable en cada punto de U .
Importancia de la Diferenciación
En el análisis complejo, las funciones diferenciables son automáticamente analíti-
cas, lo que significa que pueden representarse mediante series de potencias. Esta
propiedad tiene aplicaciones profundas en física, como la teoría de campos, donde
se modelan potenciales eléctricos y gravitacionales, y en ingeniería, en el análisis de
circuitos y sistemas de control.
• Linealidad:
d
(af (z) + bg(z)) = af ′ (z) + bg ′ (z), ∀a, b ∈ C.
dz
• Producto:
d
(f (z)g(z)) = f ′ (z)g(z) + f (z)g ′ (z).
dz
• Cociente: Si g(z) ̸= 0,
d f (z) f ′ (z)g(z) − f (z)g ′ (z)
= .
dz g(z) g(z)2
d
f (g(z)) = f ′ (g(z))g ′ (z).
dz
Conclusión
La continuidad y la diferenciación en variable compleja no solo generalizan concep-
tos del análisis real, sino que también constituyen la base para teorías avanzadas
como la analiticidad y la teoría de funciones holomorfas. Estas propiedades encuen-
tran aplicaciones en una amplia variedad de campos, desde la física teórica hasta
la ingeniería, donde modelan y analizan fenómenos complejos con una precisión y
elegancia únicas.
Ejemplos Resueltos
1. Verificar la continuidad de una función compleja:
Sea la función f (z) = z 2 + z. Verificar si f (z) es continua en z0 = 1 + i.
Solución: Para que f (z) sea continua en z0 , debe cumplirse la condición de
continuidad:
lim f (z) = f (z0 ).
z→z0
4 % Definir el punto z0
5 z0 = 1 + 1i;
6
7 % Evaluar la función en z0
8 f_z0 = f(z0);
9
f ′ (z) = 3z 2 − 4.
f ′ (z) = 3z 2 − 4.
Implementación en MATLAB:
Utilizamos MATLAB para calcular f ′ (z) de forma simbólica y verificar el
resultado.
Listing 2.21: Cálculo de la derivada en MATLAB
1 % Declarar la variable simbólica
2 syms z;
3
4 % Definir la función
5 f = z^3 - 4*z + 2;
6
7 % Calcular la derivada
8 f_derivative = diff(f, z);
9
10 % Mostrar el resultado
11 disp('La␣derivada␣de␣f(z)␣es:');
12 disp(f_derivative);
13
Solución:
La función f (z) involucra una composición de funciones, por lo que aplicamos
la regla de la cadena.
2.3. CONTINUIDAD Y DIFERENCIACIÓN EN VARIABLE COMPLEJA 98
f ′ (z) = ez · 2z = 2z · ez .
2 2
f ′ (z) = 2z · ez .
2
Implementación en MATLAB:
A continuación, calculamos f ′ (z) simbólicamente y evaluamos la derivada en
un punto específico utilizando MATLAB:
Listing 2.22: Cálculo de la derivada de una composición en MATLAB
1 % Declarar la variable simbólica
2 syms z;
3
4 % Definir la función
5 f = exp(z^2);
6
7 % Calcular la derivada
8 f_derivative = diff(f, z);
9
automáticamente.
—
Implementación en MATLAB:
A continuación, calculamos h′ (z) simbólicamente y evaluamos la derivada en
un punto específico utilizando MATLAB:
Listing 2.23: Cálculo de la derivada con la regla del producto en MATLAB
1 % Declarar la variable simbólica
2 syms z;
3
19 z_value = pi/4;
20 h_prime_at_z = subs(h_derivative, z, z_value);
21
Solución:
Para calcular la derivada, utilizamos la regla del cociente:
(z 2 + 1) · d
(z + 1) − (z + 1) · d
(z 2 + 1)
f ′ (z) = dz dz
.
(z 2 + 1)2
Implementación en MATLAB:
A continuación, calculamos f ′ (z) y evaluamos su valor en un punto específico
utilizando MATLAB:
2.3. CONTINUIDAD Y DIFERENCIACIÓN EN VARIABLE COMPLEJA 101
7 % Calcular la derivada
8 f_derivative = diff(f, z);
9
Ejercicios Propuestos
z 2 +1
1. Verifica si la función f (z) = z+2
es continua en z = −2.
Solución
Para verificar la continuidad en z = −2, aplicamos las siguientes condiciones:
Paso 1: Definición en z = −2
Al evaluar f (z) directamente en z = −2, observamos:
z2 + 1
f (z) = .
z+2
El denominador se anula cuando z = −2, por lo que f (z) no está definida en ese
punto.
Paso 2: Límite en z = −2
Calculamos el límite de f (z) cuando z → −2. Primero factorizamos el numerador:
z 2 + 1 = (z + 2)(z − 2).
Reescribimos la función:
(z + 2)(z − 2)
f (z) = .
z+2
Para z ̸= −2, podemos simplificar:
f (z) = z − 2.
Entonces:
lim f (z) = −2 − 2 = −4.
z→−2
2.3. CONTINUIDAD Y DIFERENCIACIÓN EN VARIABLE COMPLEJA 103
Paso 3: Continuidad
Conclusión
z 2 +1
La función f (z) = z+2
no es continua en z = −2 porque no está definida en dicho
punto.
Cálculo en MATLAB
Para verificar los pasos anteriores en MATLAB:
Visualización gráfica
Para observar la discontinuidad cerca de z = −2, graficamos la función (evitando
z = −2):
Solución
Analizamos este problema en dos partes: primero calculamos si el límite existe y
luego evaluamos la continuidad de la función.
2.3. CONTINUIDAD Y DIFERENCIACIÓN EN VARIABLE COMPLEJA 104
z+1
Paso 1: Análisis del límite limz→0 |z|
Consideremos la función:
z+1
f (z) = .
|z|
Para determinar si el límite existe, es necesario verificar si f (z) se aproxima al
mismo valor independientemente de la dirección en la que z → 0. Aquí descom-
ponemos z en su forma polar:
z 1 1
f (z) = + = eiθ + .
|z| |z| r
• 1
|z|
= 1
r
→ +∞.
Paso 2: Continuidad en z = 0
Para que la función f (z) sea continua en z = 0, deben cumplirse las siguientes
condiciones:
Conclusión
z+1
El límite limz→0 |z|
no existe, y, por lo tanto, la función no es continua en z = 0.
2.3. CONTINUIDAD Y DIFERENCIACIÓN EN VARIABLE COMPLEJA 105
Cálculo en MATLAB
Para explorar la dependencia direccional de f (z) y visualizar su comportamiento
cerca de z = 0, podemos utilizar el siguiente código en MATLAB:
Gráfica adicional
z
Para observar cómo |z|
varía con θ, podemos graficar la parte direccional eiθ sobre
el círculo unitario:
4 figure;
5 plot(real(z_directional), imag(z_directional), 'LineWidth', 2);
6 xlabel('Re(z)');
7 ylabel('Im(z)');
8 title('Comportamiento␣de␣e^{i\\theta}');
9 axis equal;
h(z) = (z 3 + 2z)(ez + z 2 ),
Solución
Paso 1: Regla del producto
La regla del producto establece que si h(z) = u(z)v(z), entonces:
donde:
u(z) = z 3 + 2z, v(z) = ez + z 2 .
d 3
u′ (z) = (z + 2z) = 3z 2 + 2,
dz
d z
v ′ (z) = (e + z 2 ) = ez + 2z.
dz
Simplificando:
h′ (z) = (z 3 + 3z 2 + 2z + 2)ez + 2z 4 + 3z 4 + 4z 2 .
h′ (z) = (z 3 + 3z 2 + 2z + 2)ez + 5z 4 + 4z 2 .
2.3. CONTINUIDAD Y DIFERENCIACIÓN EN VARIABLE COMPLEJA 107
5 % Derivadas individuales
6 u_prime = diff(u, z);
7 v_prime = diff(v, z);
8
Conclusión
La derivada de la función h(z) = (z 3 + 2z)(ez + z 2 ) es:
h′ (z) = (z 3 + 3z 2 + 2z + 2)ez + 5z 4 + 4z 2 .
h(z) = f (g(z)).
Solución
Paso 1: Regla de la cadena
La derivada de una composición h(z) = f (g(z)) se encuentra utilizando la regla de
la cadena:
h′ (z) = f ′ (g(z)) · g ′ (z).
2.3. CONTINUIDAD Y DIFERENCIACIÓN EN VARIABLE COMPLEJA 108
f ′ (z) = cos(z),
d 3
g ′ (z) = (z − 2z + 4) = 3z 2 − 2.
dz
Conclusión
La derivada de h(z) = sin(g(z)) es:
Cálculo en MATLAB
Para verificar el resultado simbólicamente en MATLAB, podemos usar el siguiente
código:
8 % Calculamos la derivada
9 h_prime = diff(h, z);
10 disp(h_prime);
2.3. CONTINUIDAD Y DIFERENCIACIÓN EN VARIABLE COMPLEJA 109
h(z) = f (g(z)).
Solución
Paso 1: Regla de la cadena
g(z) = z 3 − 2z + 4 ⇒ g ′ (z) = 3z 2 − 2.
Sustituyendo g(z):
h′ (z) = cos(g(z)) · (3z 2 − 2).
Resultado final
La derivada de h(z) = sin(g(z)) es:
Conclusión
El cálculo confirma que la derivada de h(z) es:
Solución
Paso 1: Expresión de f (z) en términos de z
|z|2 = z · z,
f (z) = x2 + y 2 .
Cuando z → z0 , x → x0 y y → y0 . Entonces:
Paso 4: Conclusión
El límite de f (z) = |z|2 coincide con f (z0 ) para cualquier z0 en el plano complejo.
Por lo tanto, la función f (z) = |z|2 es continua en todo el plano complejo.
Cálculo en MATLAB
Podemos verificar esta continuidad en MATLAB utilizando la definición del límite.
A continuación, mostramos cómo evaluar limz→z0 f (z) simbólicamente:
Listing 2.32: Verificación de continuidad en MATLAB
1 syms x y x0 y0 real
2 z = x + 1i*y;
3 z0 = x0 + 1i*y0;
4
16 disp(f_z0);
17
Solución
2
Paso 1: Derivada del primer término z 2 ez
2
Para derivar z 2 ez , utilizamos la regla del producto:
d 2 z2 d 2 d 2
(z e ) = (z 2 ) · ez + z 2 · (ez ).
dz dz dz
Calculamos cada derivada individual:
d 2 d z2 2 d 2
(z ) = 2z, (e ) = ez · (z 2 ) = 2zez .
dz dz dz
Sustituyendo:
d 2 z2 2 2 2 2
(z e ) = (2z)ez + z 2 (2zez ) = 2zez + 2z 3 ez .
dz
Resultado final
2
La derivada de f (z) = z 2 ez + 3ez es:
7 % Simplificamos el resultado
8 f_prime = simplify(f_prime);
9 disp('La␣derivada␣de␣f(z)␣es:');
10 disp(f_prime);
f (z) = z 4 − 2z 3 + z + 1,
Solución
Paso 1: Cálculo de la derivada
Derivamos cada término de f (z) individualmente:
f (z) = z 4 − 2z 3 + z + 1,
d 4 d d d
f ′ (z) = (z ) − (2z 3 ) + (z) + (1).
dz dz dz dz
Las derivadas de los términos son:
d 4 d d d
(z ) = 4z 3 , (2z 3 ) = 6z 2 , (z) = 1, (1) = 0.
dz dz dz dz
Sumando:
f ′ (z) = 4z 3 − 6z 2 + 1.
2.3. CONTINUIDAD Y DIFERENCIACIÓN EN VARIABLE COMPLEJA 114
Los puntos críticos de f (z) son los valores de z donde f ′ (z) = 0. Resolviendo:
4z 3 − 6z 2 + 1 = 0.
Cálculo en MATLAB
A continuación, usamos MATLAB para calcular la derivada simbólicamente, resolver
la ecuación y verificar las raíces:
10 % Mostramos la derivada
11 disp('La␣derivada␣de␣f(z)␣es:');
12 disp(f_prime);
13
Interpretación
El código anterior calcula: 1. La derivada f ′ (z) = 4z 3 − 6z 2 + 1. 2. Los puntos
críticos resolviendo 4z 3 − 6z 2 + 1 = 0. 3. La gráfica de f ′ (z) para visualizar los
valores donde se cruza el eje y = 0.
2.3. CONTINUIDAD Y DIFERENCIACIÓN EN VARIABLE COMPLEJA 115
Conclusión
La derivada de f (z) es:
f ′ (z) = 4z 3 − 6z 2 + 1.
Los puntos críticos se obtienen resolviendo f ′ (z) = 0, y son las raíces de la ecuación
cúbica 4z 3 −6z 2 +1 = 0. Estos puntos representan los valores de z donde la pendiente
de f (z) se anula.
z
Problema 8: Continuidad de f (z) = z
Enunciado
Comprueba si la función:
z
f (z) =
z
es continua en el conjunto C \ {0}.
Solución
Paso 1: Expresión de la función
La función f (z) está definida como:
z
f (z) = ,
z
donde z es el conjugado complejo de z, y z ̸= 0 para evitar la división por cero. Si
z = x + iy (con x, y ∈ R), entonces:
z = x − iy, z = x + iy.
Sustituyendo, tenemos:
z x − iy
f (z) = = .
z x + iy
Multiplicando el numerador y denominador por el conjugado del denominador:
x2 + y 2 2xy 2xy
f (z) = 2 2
−i 2 2
=1−i 2 .
x +y x +y x + y2
Paso 4: Conclusión
El límite de f (z) al aproximarse a cualquier z0 ∈ C \ {0} existe y es igual a f (z0 ).
Por lo tanto, la función:
z
f (z) =
z
es continua en C \ {0}.
Cálculo en MATLAB
Podemos verificar esta continuidad utilizando MATLAB con el siguiente código:
Listing 2.35: Verificación de continuidad en MATLAB
1 syms x y x0 y0 real
2 z = x + 1i*y;
3 z0 = x0 + 1i*y0;
4
13 % Evaluamos f(z0)
14 f_z0 = conj(z0) / z0;
15 disp('Valor␣de␣f(z0):');
16 disp(f_z0);
17
Solución
Paso 1: Derivada utilizando la regla del cociente
La regla del cociente establece que si:
u(z)
f (z) = ,
v(z)
entonces:
u′ (z)v(z) − u(z)v ′ (z)
f ′ (z) = ,
v(z)2
donde u(z) = z 2 + 3 y v(z) = z 2 − 1.
Calculamos las derivadas individuales:
(2z)(z 2 − 1) − (z 2 + 3)(2z)
f ′ (z) = .
(z 2 − 1)2
Conclusión
z 2 +3
La derivada de f (z) = z 2 −1
es:
−8z
f ′ (z) = .
(z 2− 1)2
Cálculo en MATLAB
Usamos MATLAB para calcular la derivada y verificar los puntos de inexistencia:
10 % Mostramos la derivada
11 disp('La␣derivada␣de␣f(z)␣es:');
12 disp(f_prime);
13
18 disp('Los␣puntos␣donde␣f''(z)␣no␣existe␣son:');
19 disp(critical_points);
Solución
Paso 1: Regla del cociente
u(z)
La regla del cociente establece que si f (z) = v(z)
, entonces:
En este caso:
u(z) = z 2 + 3, v(z) = z 2 − 1.
Calculamos las derivadas individuales:
Sustituimos en la fórmula:
′ (2z)(z 2 − 1) − (z 2 + 3)(2z)
f (z) = .
(z 2 − 1)2
Por lo tanto:
−8z
f ′ (z) = .
(z 2 − 1)2
(z 2 − 1)2 = 0.
Resolviendo:
z2 − 1 = 0 ⇒ z = ±1.
Por lo tanto, f ′ (z) no existe en z = 1 y z = −1.
Conclusión
z 2 +3
La derivada de f (z) = z 2 −1
es:
−8z
f ′ (z) = .
(z 2− 1)2
Cálculo en MATLAB
El siguiente código MATLAB verifica los resultados:
Listing 2.37: Cálculo de la derivada y puntos de inexistencia en MATLAB
1 % Definir la variable simbólica
2 syms z
3
7 % Calcular la derivada
8 f_prime = diff(f, z);
9
10 % Mostrar la derivada
11 disp('La␣derivada␣de␣f(z)␣es:');
12 disp(f_prime);
13
18 disp('Los␣puntos␣donde␣f''(z)␣no␣existe␣son:');
19 disp(critical_points);
20
Solución
Paso 1: Regla de la cadena
Para una composición de funciones h(z) = g(f (z)), la regla de la cadena establece
que:
h′ (z) = g ′ (f (z)) · f ′ (z).
2.3. CONTINUIDAD Y DIFERENCIACIÓN EN VARIABLE COMPLEJA 121
Aquí:
g(z) = ez , f (z) = z 2 + z.
Verificación en MATLAB
El siguiente código calcula simbólicamente h′ (z) en MATLAB:
Listing 2.38: Cálculo de h′ (z) en MATLAB
1 % Definir z como variable simbólica
2 syms z
3
14 % Simplificar el resultado
15 h_prime = simplify(h_prime);
16
17 % Mostrar el resultado
18 disp('La␣derivada␣de␣h(z)␣es:');
19 disp(h_prime);
2.4. ECUACIONES DE CAUCHY-RIEMANN Y FUNCIONES ANALÍTICAS122
∂u ∂v ∂u ∂v
= , =− . (2.1)
∂x ∂y ∂y ∂x
Estas ecuaciones llevan el nombre de Augustin-Louis Cauchy (1789-1857) y
Bernhard Riemann (1826-1866), quienes jugaron un papel crucial en el desarrollo
de la teoría de funciones analíticas.
Teorema 2.4. Sea f (z) = u(x, y) + iv(x, y) una función compleja en una vecindad
de z0 . Si:
∂u ∂u ∂v ∂v
• Las derivadas parciales , , ,
∂x ∂y ∂x ∂y
existen y son continuas en (x0 , y0 ).
∂u ∂v
f ′ (z0 ) = +i . (2.2)
∂x ∂x
Definición 2.5. Una función analítica en todo el plano complejo se llama función
entera.
2.5. EJEMPLOS RESUELTOS DE LAS ECUACIONES DE
CAUCHY-RIEMANN 123
2.4.5 Conclusión
Las ecuaciones de Cauchy-Riemann constituyen la base para la diferenciabilidad y
analiticidad de funciones complejas. Además, garantizan que las funciones analíticas
tienen propiedades más fuertes que las funciones diferenciables en el cálculo real,
permitiendo su representación en series de potencias y asegurando que cumplen
propiedades de máximo y unicidad en regiones conexas.
f (z) = x2 − y 2 + i(2xy)
∂u ∂ 2 ∂u ∂ 2
= (x − y 2 ) = 2x, = (x − y 2 ) = −2y.
∂x ∂x ∂y ∂y
∂v ∂ ∂v ∂
= (2xy) = 2y, = (2xy) = 2x.
∂x ∂x ∂y ∂y
∂u ∂v ∂u ∂v
= , =− .
∂x ∂y ∂y ∂x
Sustituyendo los valores obtenidos:
2x = 2x (se cumple),
∂u ∂v
f ′ (z) = +i .
∂x ∂x
Sustituyendo los valores calculados:
f ′ (z) = 2z.
2.5. EJEMPLOS RESUELTOS DE LAS ECUACIONES DE
CAUCHY-RIEMANN 125
19 % Mostrar resultados
20 fprintf('Verificación␣de␣las␣ecuaciones␣de␣Cauchy-Riemann:\n');
21 fprintf('du/dx␣-␣dv/dy␣=␣%s\n', char(CR1)); % Debe ser 0
22 fprintf('du/dy␣+␣dv/dx␣=␣%s\n', char(CR2)); % Debe ser 0
23
24 fprintf('Derivada␣compleja␣f''(z):\n');
25 fprintf('%s\n', char(f_derivative)); % Debe ser 2z
Conclusión
Dado que las ecuaciones de Cauchy-Riemann se satisfacen en todo C, concluimos
que f (z) es una función analítica en el plano complejo y su derivada es:
f ′ (z) = 2z.
2.5. EJEMPLOS RESUELTOS DE LAS ECUACIONES DE
CAUCHY-RIEMANN 126
f (z) = x + iy 2
Dada la función:
f (z) = u(x, y) + iv(x, y),
u(x, y) = x, v(x, y) = y 2 .
∂u ∂ ∂u ∂
= (x) = 1, = (x) = 0.
∂x ∂x ∂y ∂y
∂v ∂ 2 ∂v ∂ 2
= (y ) = 0, = (y ) = 2y.
∂x ∂x ∂y ∂y
Las ecuaciones de Cauchy-Riemann establecen que para que una función sea analítica,
debe cumplirse:
∂u ∂v ∂u ∂v
= , =− .
∂x ∂y ∂y ∂x
Dado que esta ecuación no se satisface para todo y, concluimos que la función
f (z) no es analítica en C.
2.5. EJEMPLOS RESUELTOS DE LAS ECUACIONES DE
CAUCHY-RIEMANN 127
Paso 4: Interpretación
La no satisfacción de las ecuaciones de Cauchy-Riemann implica que f (z) no es
holomorfa en ningún punto del plano complejo. Sin embargo, la función sí es difer-
enciable en un sentido real, ya que sus derivadas parciales existen y son continuas.
No obstante, esto no es suficiente para la diferenciabilidad compleja, que requiere la
existencia de la misma derivada en todas las direcciones complejas.
Un punto interesante es que si y = 12 , la ecuación ∂u
∂x
∂v
= ∂y se satisface, pero esto
ocurre solo en un conjunto de puntos discretos y no en una vecindad abierta, por lo
que la función sigue sin ser analítica.
16 % Mostrar resultados
17 fprintf('Verificación␣de␣las␣ecuaciones␣de␣Cauchy-Riemann:\n');
18 fprintf('du/dx␣-␣dv/dy␣=␣%s\n', char(CR1)); % No será 0 en general
19 fprintf('du/dy␣+␣dv/dx␣=␣%s\n', char(CR2)); % Será 0
20
Conclusión
Dado que las ecuaciones de Cauchy-Riemann no se satisfacen para todo y, con-
cluimos que f (z) no es una función analítica en C.
Aunque hay puntos donde ∂u ∂x
∂v
= ∂y , como en y = 21 , esto solo ocurre en puntos
aislados y no en una vecindad, por lo que la función sigue sin ser holomorfa.
Por lo tanto, f (z) no es una función analítica en ninguna región del plano com-
plejo.
∂u ∂v
f ′ (z) = +i .
∂x ∂x
Sustituyendo los valores calculados:
f ′ (z) = ez .
19 % Mostrar resultados
20 fprintf('Verificación␣de␣las␣ecuaciones␣de␣Cauchy-Riemann:\n');
21 fprintf('du/dx␣-␣dv/dy␣=␣%s\n', char(CR1)); % Debe ser 0
2.5. EJEMPLOS RESUELTOS DE LAS ECUACIONES DE
CAUCHY-RIEMANN 130
24 fprintf('Derivada␣compleja␣f''(z):\n');
25 fprintf('%s\n', char(f_derivative)); % Debe ser e^z
Conclusión
Dado que las ecuaciones de Cauchy-Riemann se cumplen en todo C y las derivadas
son continuas, concluimos que f (z) es una función analítica en el plano complejo.
Además, se encontró que su derivada compleja es:
f ′ (z) = ez .
Esto coincide con la derivada de la función exponencial compleja ez , lo que
confirma que la función original puede expresarse como:
f (z) = ez .
Por lo tanto, f (z) es simplemente la forma cartesiana de la función exponencial
compleja, reafirmando su analiticidad.
∂u ∂u
= 2r cos θ, = −r2 sin θ.
∂r ∂θ
∂v ∂v
= 2r sin θ, = r2 cos θ.
∂r ∂θ
∂u ∂v ∂u ∂v
r = , = −r .
∂r ∂θ ∂θ ∂r
Sustituyendo los valores obtenidos:
∂v
r(2r cos θ) = 2r2 cos θ, = r2 cos θ.
∂θ
Claramente,
16 % Mostrar resultados
17 fprintf('Verificación␣de␣las␣ecuaciones␣de␣Cauchy-Riemann␣en␣coordenadas␣
polares:\n');
18 fprintf('r␣*␣du/dr␣-␣dv/dtheta␣=␣%s\n', char(CR1)); % No será 0 en general
19 fprintf('du/dtheta␣+␣r␣*␣dv/dr␣=␣%s\n', char(CR2)); % No será 0 en general
Conclusión
Dado que las ecuaciones de Cauchy-Riemann en coordenadas polares no se cumplen,
concluimos que f (z) **no es una función analítica en el plano complejo**.
Este resultado indica que la función no es holomorfa y no tiene derivada compleja
en ningún punto del plano complejo.
f (z) = z 3
f (z) = (x + iy)3 .
Usando la expansión binomial:
2.5. EJEMPLOS RESUELTOS DE LAS ECUACIONES DE
CAUCHY-RIEMANN 133
f ′ (z) = 3z 2 .
19 % Mostrar resultados
20 fprintf('Verificación␣de␣las␣ecuaciones␣de␣Cauchy-Riemann:\n');
21 fprintf('du/dx␣-␣dv/dy␣=␣%s\n', char(CR1)); % Debe ser 0
22 fprintf('du/dy␣+␣dv/dx␣=␣%s\n', char(CR2)); % Debe ser 0
23
24 fprintf('Derivada␣compleja␣f''(z):\n');
25 fprintf('%s\n', char(f_derivative)); % Debe ser 3z^2
Conclusión
Dado que las ecuaciones de Cauchy-Riemann se cumplen en todo C y las derivadas
son continuas, concluimos que f (z) es una función analítica en el plano complejo.
2.5. EJEMPLOS RESUELTOS DE LAS ECUACIONES DE
CAUCHY-RIEMANN 135
f ′ (z) = 3z 2 .
Esto concuerda con la derivada usual de f (z) = z 3 , lo que reafirma su analiticidad
y confirma que los polinomios son funciones analíticas en todo C.
Ejercicios Propuestos
1. Demuestra que si una función f (z) es analítica y su parte imaginaria es con-
stante, entonces f (z) debe ser una función constante.
3. Encuentra la forma general de una función analítica f (z) cuya parte real sea
u(x, y) = ex cos y.
(a) f (z) = z 5 .
(b) f (z) = ez .
(c) f (z) = sin z.
(d) f (z) = z1 .
(e) f (z) = ln z.
Solución
Dada una función analítica f (z), podemos expresarla en términos de su parte real e
imaginaria:
Puesto que f (z) es analítica, sus componentes u(x, y) y v(x, y) deben satisfacer
las ecuaciones de Cauchy-Riemann:
∂u ∂v ∂u ∂v
= , =− .
∂x ∂y ∂y ∂x
Paso 3: Conclusión
Las ecuaciones anteriores nos dicen que u(x, y) no cambia con respecto a x ni y, lo
que significa que u(x, y) es una constante:
f (z) = C1 + iC.
Conclusión
Hemos demostrado que si una función f (z) es analítica y su parte imaginaria es con-
stante, entonces la función debe ser constante en todo el dominio donde es analítica.
Verificación en MATLAB
Podemos verificar el resultado numéricamente en MATLAB al derivar la función
f (z) = u(x, y) + iC y confirmar que su derivada es cero:
Listing 2.44: Cálculo de derivadas en MATLAB
1 % Definir variables simbólicas
2 syms x y real
3 u = sym('C1'); % Definir la parte real como una constante
4 v = sym('C'); % Parte imaginaria constante
5
17 fprintf('Verificación␣de␣ecuaciones␣de␣Cauchy-Riemann:\n');
18 fprintf('du/dx␣-␣dv/dy␣=␣%s\n', char(CR1)); % Debe ser 0
19 fprintf('du/dy␣+␣dv/dx␣=␣%s\n', char(CR2)); % Debe ser 0
u(x, y) = x2 − y 2 + c.
Solución
Dado que f (z) es analítica, sus partes real e imaginaria deben satisfacer las ecua-
ciones de Cauchy-Riemann:
∂u ∂v ∂u ∂v
= , =− .
∂x ∂y ∂y ∂x
u(x, y) = x2 − y 2 + c.
Calculamos sus derivadas parciales:
∂u ∂u
= 2x, = −2y.
∂x ∂y
Denotemos la parte imaginaria como v(x, y), la cual desconocemos. Para que
f (z) sea analítica, debe existir una función v(x, y) que satisfaga las ecuaciones de
Cauchy-Riemann.
∂u ∂v
= .
∂x ∂y
Sustituyendo los valores:
∂v
2x = .
∂y
Integrando con respecto a y:
2.5. EJEMPLOS RESUELTOS DE LAS ECUACIONES DE
CAUCHY-RIEMANN 139
g ′ (x) = 0 ⇒ g(x) = c1 ,
donde c1 es una constante.
Paso 3: Determinación de c
Para que f (z) sea analítica, v(x, y) debe cumplir que sus derivadas sean continuas
en todo C. La función obtenida:
v(x, y) = 2xy + c1
es válida para cualquier c1 . Dado que la ecuación de u(x, y) contenía un término
constante c, este valor **no afecta la analiticidad de la función**. Es decir, **el
valor de c puede ser cualquier número real y f (z) seguirá siendo analítica**.
Conclusión
El valor de c no afecta la analiticidad de la función f (z). Por lo tanto, f (z) es
analítica para cualquier valor de c.
Verificación en MATLAB
Podemos verificar este resultado computacionalmente con MATLAB:
Listing 2.45: Verificación de las ecuaciones de Cauchy-Riemann
1 % Definir variables simbólicas
2 syms x y c real
3 u = x^2 - y^2 + c; % Parte real de f(z)
4 v = 2*x*y + sym('c1'); % Parte imaginaria
5
16 % Mostrar resultados
17 fprintf('Verificación␣de␣las␣ecuaciones␣de␣Cauchy-Riemann:\n');
18 fprintf('du/dx␣-␣dv/dy␣=␣%s\n', char(CR1)); % Debe ser 0
19 fprintf('du/dy␣+␣dv/dx␣=␣%s\n', char(CR2)); % Debe ser 0
u(x, y) = ex cos y.
Solución
Dado que f (z) es analítica, podemos expresarla en términos de su parte real e
imaginaria:
u(x, y) = ex cos y.
Calculamos sus derivadas parciales:
∂u ∂u
= ex cos y, = −ex sin y.
∂x ∂y
2.5. EJEMPLOS RESUELTOS DE LAS ECUACIONES DE
CAUCHY-RIEMANN 141
∂u ∂v
= .
∂x ∂y
Sustituyendo los valores:
∂v
ex cos y = .
∂y
Integrando con respecto a y:
∂u ∂v
=− .
∂y ∂x
Sustituyendo:
∂ x
−ex sin y = − (e sin y + g(x)).
∂x
Calculando la derivada:
g ′ (x) = 0 ⇒ g(x) = c,
donde c es una constante arbitraria.
obtenemos:
f (z) = ez + ic.
Conclusión
La función analítica cuya parte real es u(x, y) = ex cos y está dada por:
f (z) = ez + ic,
donde c es una constante arbitraria.
Verificación en MATLAB
Podemos verificar este resultado computacionalmente con MATLAB:
Listing 2.46: Verificación de las ecuaciones de Cauchy-Riemann
1 % Definir variables simbólicas
2 syms x y c real
3 u = exp(x) * cos(y); % Parte real de f(z)
4 v = exp(x) * sin(y) + c; % Parte imaginaria
5
16 % Mostrar resultados
17 fprintf('Verificación␣de␣las␣ecuaciones␣de␣Cauchy-Riemann:\n');
18 fprintf('du/dx␣-␣dv/dy␣=␣%s\n', char(CR1)); % Debe ser 0
19 fprintf('du/dy␣+␣dv/dx␣=␣%s\n', char(CR2)); % Debe ser 0
∂ 2u ∂ 2u
+ = 0.
∂x2 ∂y 2
Solución
Dado que f (z) es analítica, podemos escribirla en términos de su parte real e imag-
inaria:
∂u ∂v ∂u ∂v
= , =− .
∂x ∂y ∂y ∂x
∂v ∂u
=− .
∂x ∂y
Sustituyendo en la ecuación anterior:
∂ 2u ∂ ∂u
2
= − .
∂x ∂y ∂y
Esto nos da:
∂ 2u ∂ 2u
= − .
∂x2 ∂y 2
∂ 2u ∂ 2u
+ = 0.
∂x2 ∂y 2
Esta es precisamente la ecuación de Laplace para la función u(x, y).
2.5. EJEMPLOS RESUELTOS DE LAS ECUACIONES DE
CAUCHY-RIEMANN 144
∂u ∂v
=− .
∂y ∂x
Sustituyendo:
∂ 2v ∂ ∂v
2
= − .
∂y ∂x ∂x
Esto nos da:
∂ 2v ∂ 2v
= − .
∂y 2 ∂x2
Reordenando:
∂ 2v ∂ 2v
+ = 0.
∂x2 ∂y 2
Conclusión
Hemos demostrado que si f (z) es analítica, entonces tanto u(x, y) como v(x, y)
satisfacen la ecuación de Laplace:
∂ 2u ∂ 2u ∂ 2v ∂ 2v
+ = 0, + = 0.
∂x2 ∂y 2 ∂x2 ∂y 2
Esto implica que las funciones componentes de una función analítica son fun-
ciones armónicas.
Verificación en MATLAB
Podemos verificar este resultado computacionalmente con MATLAB:
Listing 2.47: Verificación de la ecuación de Laplace
1 % Definir variables simbólicas
2 syms x y real
3 u = sym('u(x,y)'); % Función genérica u(x,y)
4 v = sym('v(x,y)'); % Función genérica v(x,y)
2.5. EJEMPLOS RESUELTOS DE LAS ECUACIONES DE
CAUCHY-RIEMANN 145
15 % Derivadas segundas de u
16 d2u_dx2 = diff(du_dx, x);
17 d2u_dy2 = diff(du_dy, y);
18
22 % Derivadas segundas de v
23 d2v_dx2 = diff(dv_dx, x);
24 d2v_dy2 = diff(dv_dy, y);
25
29 % Mostrar resultados
30 fprintf('Ecuación␣de␣Laplace␣para␣u(x,y):␣%s\n', char(laplace_u)); % Debe
ser 0
31 fprintf('Ecuación␣de␣Laplace␣para␣v(x,y):␣%s\n', char(laplace_v)); % Debe
ser 0
Solución
Dado que f (z) es una función de variable compleja, podemos escribirla en términos
de su parte real e imaginaria:
Para que f (z) sea analítica en C, sus componentes deben satisfacer las ecuaciones
de Cauchy-Riemann:
∂u ∂v ∂u ∂v
= , =− .
∂x ∂y ∂y ∂x
∂u ∂ 3
= (x − 3xy 2 ) = 3x2 − 3y 2 ,
∂x ∂x
∂u ∂ 3
= (x − 3xy 2 ) = −6xy.
∂y ∂y
Ahora, calculamos las derivadas parciales de v(x, y):
∂v ∂
= (3x2 y − y 3 ) = 6xy,
∂x ∂x
∂v ∂
= (3x2 y − y 3 ) = 3x2 − 3y 2 .
∂y ∂y
∂u ∂v
= ⇒ (3x2 − 3y 2 ) = (3x2 − 3y 2 ).
∂x ∂y
Esta ecuación **se cumple** en todo C.
Verificamos la segunda ecuación:
∂u ∂v
=− ⇒ (−6xy) = −(6xy).
∂y ∂x
Esta ecuación **también se cumple** en todo C.
Conclusión
Verificación en MATLAB
Podemos verificar este resultado computacionalmente con MATLAB:
Listing 2.48: Verificación de las ecuaciones de Cauchy-Riemann
1 % Definir variables simbólicas
2 syms x y real
3 u = x^3 - 3*x*y^2; % Parte real de f(z)
4 v = 3*x^2*y - y^3; % Parte imaginaria de f(z)
5
16 % Mostrar resultados
17 fprintf('Verificación␣de␣las␣ecuaciones␣de␣Cauchy-Riemann:\n');
18 fprintf('du/dx␣-␣dv/dy␣=␣%s\n', char(CR1)); % Debe ser 0
19 fprintf('du/dy␣+␣dv/dx␣=␣%s\n', char(CR2)); % Debe ser 0
1. f (z) = x2 − y 2 + i(2xy).
3. f (z) = x − iy.
Solución
Para determinar si cada función f (z) = u(x, y) + iv(x, y) es analítica, verificamos
si sus partes real u(x, y) e imaginaria v(x, y) satisfacen las ecuaciones de Cauchy-
Riemann:
2.5. EJEMPLOS RESUELTOS DE LAS ECUACIONES DE
CAUCHY-RIEMANN 148
∂u ∂v ∂u ∂v
= , =− .
∂x ∂y ∂y ∂x
Si estas ecuaciones se cumplen y las derivadas parciales son continuas en una
región, entonces f (z) es analítica en esa región.
—
Caso 3: f (z) = x − iy
Definimos:
∂u ∂u
= 1, = 0.
∂x ∂y
∂v ∂v
= 0, = −1.
∂x ∂y
Verificamos Cauchy-Riemann:
∂u ∂v
= ⇒ 1 ̸= −1.
∂x ∂y
Las ecuaciones no se cumplen, por lo que f (z) **no es analítica** en C.
—
u(r, θ) = ln r, v(r, θ) = θ.
Las ecuaciones de Cauchy-Riemann en coordenadas polares son:
∂u 1 ∂u
= , = 0.
∂r r ∂θ
∂v ∂v
= 0, = 1.
∂r ∂θ
Verificamos:
∂u ∂v
r = ⇒ 1=1 (se cumple).
∂r ∂θ
∂u ∂v
= −r ⇒ 0 ̸= 0.
∂θ ∂r
La segunda ecuación no se cumple en r = 0, por lo que f (z) **no es analítica en
C** pero sí en C \ {0}.
—
2.5. EJEMPLOS RESUELTOS DE LAS ECUACIONES DE
CAUCHY-RIEMANN 150
Conclusión
• f (z) = x2 − y 2 + i(2xy) es analítica.
• f (z) = x − iy no es analítica.
1. f (z) = z 5 .
2. f (z) = ez .
3. f (z) = sin z.
4. f (z) = z1 .
5. f (z) = ln z.
Solución
Para determinar la derivada compleja de una función f (z), utilizamos la definición
de la derivada compleja:
f (z + ∆z) − f (z)
f ′ (z) = lim .
∆z→0 ∆z
Cuando f (z) es analítica, su derivada se obtiene de la misma forma que en cálculo
diferencial.
—
2.5. EJEMPLOS RESUELTOS DE LAS ECUACIONES DE
CAUCHY-RIEMANN 151
Caso 1: f (z) = z 5
Usamos la regla de derivación de potencias:
d 5
f ′ (z) = z = 5z 4 .
dz
Por lo tanto, la derivada de f (z) es:
f ′ (z) = 5z 4 .
—
Caso 2: f (z) = ez
Usamos la propiedad de la función exponencial:
d z
f ′ (z) = e = ez .
dz
Por lo tanto:
f ′ (z) = ez .
—
f ′ (z) = cos z.
—
1
Caso 4: f (z) = z
f (z) = z −1 .
Aplicamos la regla de la potencia:
1
f ′ (z) = −z −2 = − .
z2
Por lo tanto:
1
f ′ (z) = − .
z2
—
2.5. EJEMPLOS RESUELTOS DE LAS ECUACIONES DE
CAUCHY-RIEMANN 152
Caso 5: f (z) = ln z
La derivada del logaritmo complejo es:
d 1
f ′ (z) = ln z = .
dz z
Por lo tanto:
1
f ′ (z) = .
z
—
Conclusión
Las derivadas complejas de las funciones dadas son:
1. f (z) = z 5 ⇒ f ′ (z) = 5z 4 .
2. f (z) = ez ⇒ f ′ (z) = ez .
4. f (z) = 1
z
⇒ f ′ (z) = − z12 .
5. f (z) = ln z ⇒ f ′ (z) = z1 .
Verificación en MATLAB
Podemos verificar este resultado computacionalmente con MATLAB:
Listing 2.49: Cálculo de derivadas en MATLAB
1 % Definir variable simbólica
2 syms z
3
18 % Mostrar resultados
19 fprintf('Derivadas␣calculadas␣en␣MATLAB:\n');
2.5. EJEMPLOS RESUELTOS DE LAS ECUACIONES DE
CAUCHY-RIEMANN 153
20 fprintf('d/dz␣(z^5)␣=␣%s\n', char(df1));
21 fprintf('d/dz␣(e^z)␣=␣%s\n', char(df2));
22 fprintf('d/dz␣(sin␣z)␣=␣%s\n', char(df3));
23 fprintf('d/dz␣(1/z)␣=␣%s\n', char(df4));
24 fprintf('d/dz␣(ln␣z)␣=␣%s\n', char(df5));
Solución
Dado que z en coordenadas cartesianas se expresa como z = x+iy, podemos escribir
la función f (z) como:
f (z) = (x + iy)n .
Para verificar si f (z) es analítica, podemos seguir dos enfoques:
Dado que la función f (z) = z n está definida en todo C y sus derivadas parciales
son continuas, procederemos a calcular su derivada utilizando la regla de la potencia.
—
d n
f ′ (z) = z .
dz
Dado que la función es diferenciable en todo C, aplicamos la regla de la potencia:
f ′ (z) = nz n−1 .
Esto nos indica que la derivada existe en todo C, por lo que f (z) es una función
analítica en C.
—
2.5. EJEMPLOS RESUELTOS DE LAS ECUACIONES DE
CAUCHY-RIEMANN 154
Conclusión
La función f (z) = z n es analítica en todo C y su derivada está dada por:
f ′ (z) = nz n−1 .
—
Verificación en MATLAB
Podemos verificar este resultado computacionalmente con MATLAB:
Listing 2.50: Cálculo de la derivada de z n
1 % Definir variables simbólicas
2 syms z n
3
4 % Definir la función
5 f = z^n;
6
7 % Calcular la derivada
8 df = diff(f, z);
9
10 % Mostrar el resultado
11 fprintf('Derivada␣de␣z^n:␣%s\n', char(df));
Solución
La función hiperbólica cosh z se define en términos de exponenciales como:
ez + e−z
cosh z = .
2
Para calcular su derivada compleja, diferenciamos ambos términos:
d 1 d z d −z
cosh z = e + e .
dz 2 dz dz
Usamos la propiedad de derivación de la exponencial:
d z d −z
e = ez , e = −e−z .
dz dz
Sustituyendo estos resultados:
2.5. EJEMPLOS RESUELTOS DE LAS ECUACIONES DE
CAUCHY-RIEMANN 155
d 1 z
cosh z = e − e−z .
dz 2
Reconocemos que esta es la definición de la función seno hiperbólico:
ez − e−z
sinh z = .
2
Por lo tanto, obtenemos la derivada de f (z) = cosh z:
f ′ (z) = sinh z.
—
Conclusión
La derivada de la función f (z) = cosh z está dada por:
ez − e−z
f ′ (z) = sinh z = .
2
—
Verificación en MATLAB
Podemos verificar este resultado computacionalmente con MATLAB:
Listing 2.51: Cálculo de la derivada de cosh z
1 % Definir variable simbólica
2 syms z
3
4 % Definir la función
5 f = cosh(z);
6
7 % Calcular la derivada
8 df = diff(f, z);
9
10 % Mostrar el resultado
11 fprintf('Derivada␣de␣cosh(z):␣%s\n', char(df));
Solución
Para determinar si f (z) es analítica en C, verificamos si satisface las ecuaciones de
Cauchy-Riemann en cada punto donde está definida y si es diferenciable en z = 0.
—
∂u ∂u
= 2x, = −2y.
∂x ∂y
∂v ∂v
= 2y, = 2x.
∂x ∂y
Verificamos las ecuaciones de Cauchy-Riemann:
∂u ∂v
= ⇒ 2x = 2x (se cumple),
∂x ∂y
∂u ∂v
=− ⇒ −2y = −2y (se cumple).
∂y ∂x
Dado que las ecuaciones de Cauchy-Riemann se cumplen y las derivadas parciales
son continuas en C \ {0}, concluimos que f (z) es **analítica en C \ {0}**.
—
f (z) − f (0)
f ′ (0) = lim .
z→0 z
Puesto que f (0) = 0, tenemos:
x2 − y 2 + i(2xy)
lim .
z→0 x + iy
Evaluemos el límite en diferentes direcciones:
- Si nos acercamos a z = 0 a lo largo del eje x (es decir, y = 0), tenemos:
x2
= x → 0 cuando x → 0.
x
- Si nos acercamos a z = 0 a lo largo del eje y (es decir, x = 0), tenemos:
2.5. EJEMPLOS RESUELTOS DE LAS ECUACIONES DE
CAUCHY-RIEMANN 157
−y 2 + i(2(0)y)
= −y.
iy
Como el resultado depende de la dirección desde la cual nos acercamos a z = 0,
el límite **no existe de manera única**, lo que implica que f (z) no es diferenciable
en z = 0.
—
Conclusión
La función f (z) es analítica en C\{0}, pero no en z = 0, ya que la derivada compleja
no existe en ese punto.
—
Verificación en MATLAB
Podemos verificar este resultado computacionalmente con MATLAB:
Listing 2.52: Verificación de las ecuaciones de Cauchy-Riemann
1 % Definir variables simbólicas
2 syms x y real
3 u = x^2 - y^2;
4 v = 2*x*y;
5
16 % Evaluación en z = 0
17 du_dx_at_0 = subs(du_dx, [x, y], [0, 0]);
18 du_dy_at_0 = subs(du_dy, [x, y], [0, 0]);
19 dv_dx_at_0 = subs(dv_dx, [x, y], [0, 0]);
20 dv_dy_at_0 = subs(dv_dy, [x, y], [0, 0]);
21
22 % Mostrar resultados
23 fprintf('Verificación␣de␣las␣ecuaciones␣de␣Cauchy-Riemann:\n');
24 fprintf('du/dx␣-␣dv/dy␣=␣%s\n', char(CR1)); % Debe ser 0
25 fprintf('du/dy␣+␣dv/dx␣=␣%s\n', char(CR2)); % Debe ser 0
26
27 fprintf('Evaluación␣en␣(0,0):\n');
28 fprintf('du/dx␣=␣%s,␣du/dy␣=␣%s\n', char(du_dx_at_0), char(du_dy_at_0));
29 fprintf('dv/dx␣=␣%s,␣dv/dy␣=␣%s\n', char(dv_dx_at_0), char(dv_dy_at_0));
2.6. GRADIENTE, DIVERGENCIA, ROTACIONAL Y LAPLACIANO:
FUNCIONES ARMÓNICAS Y APLICACIONES 158
2.6.1 Gradiente
El gradiente de una función escalar u(x, y) en dos dimensiones se define como el
vector de sus derivadas parciales:
∂u ∂u
∇u = , . (2.5)
∂x ∂y
Este vector apunta en la dirección de mayor crecimiento de la función u(x, y),
con una magnitud igual a la tasa de cambio más rápida.
En el caso de funciones analíticas f (z) = u(x, y) + iv(x, y), las ecuaciones de
Cauchy-Riemann garantizan que el gradiente de u(x, y) está relacionado con el de
v(x, y) mediante una rotación de 90◦ .
2.6.2 Divergencia
La divergencia de un campo vectorial F = (F1 , F2 ) mide la cantidad de flujo que
entra o sale de un punto y se define como:
∂F1 ∂F2
∇·F= + . (2.6)
∂x ∂y
Si f (z) = u(x, y) + iv(x, y) es una función analítica, entonces sus componentes
u(x, y) y v(x, y) cumplen las ecuaciones de Cauchy-Riemann:
∂u ∂v ∂u ∂v
= , =− . (2.7)
∂x ∂y ∂y ∂x
A partir de estas ecuaciones, se obtiene que la divergencia de F = (u, v) es cero:
∂u ∂v
∇ · (u, v) = + = 0. (2.8)
∂x ∂y
Esto implica que las funciones analíticas generan campos vectoriales incomprensi-
bles (solenoidales), lo cual tiene aplicaciones en hidrodinámica y electromagnetismo.
2.6.3 Rotacional
El rotacional de un campo vectorial F = (F1 , F2 ) en dos dimensiones mide su
tendencia a girar alrededor de un punto y se define como:
∂F2 ∂F1
∇×F= − . (2.9)
∂x ∂y
2.6. GRADIENTE, DIVERGENCIA, ROTACIONAL Y LAPLACIANO:
FUNCIONES ARMÓNICAS Y APLICACIONES 159
∂v ∂u
∇ × (u, v) = − = 0. (2.10)
∂x ∂y
Esto significa que el campo vectorial asociado a f (z) es irrotacional, lo que
implica que es conservativo y puede derivarse de un potencial escalar.
∂ 2u ∂ 2u
∇2 u = + . (2.11)
∂x2 ∂y 2
Si una función u(x, y) satisface la ecuación de Laplace,
∇2 u = 0, (2.12)
∂ 2u ∂ 2u ∂ 2v ∂ 2v
+ = 0, + = 0, (2.13)
∂x2 ∂y 2 ∂x2 ∂y 2
se deduce que las partes real e imaginaria de cualquier función analítica son
funciones armónicas. Esto establece una conexión entre la analiticidad y la teoría
del potencial.
2.6.5 Aplicaciones
Las funciones armónicas y los operadores diferenciales analizados tienen numerosas
aplicaciones en física, ingeniería y matemáticas aplicadas:
2.6.6 Conclusión
Los operadores diferenciales en análisis complejo permiten una interpretación ge-
ométrica y física de las funciones analíticas. En particular, el hecho de que las
partes real e imaginaria de funciones analíticas sean funciones armónicas establece
una conexión fundamental con problemas de difusión, propagación de ondas y po-
tenciales en física matemática.
El gradiente, la divergencia, el rotacional y el Laplaciano proporcionan her-
ramientas esenciales para caracterizar y manipular funciones complejas en diversos
contextos científicos y de ingeniería.
Ejercicios Resueltos
Ejercicio 1: Cálculo del Gradiente
Problema: Dada la función escalar
u(x, y) = x2 y + ey ,
∂u ∂u
= 2xy, = x2 + e y .
∂x ∂y
Por lo tanto, el gradiente es:
∇u = (2xy, x2 + ey ).
—
Verificación en MATLAB
Podemos verificar este resultado simbólicamente en MATLAB con el siguiente código:
Listing 2.53: Cálculo del gradiente en MATLAB
1 % Definir variables simbólicas
2 syms x y
3
7 % Calcular el gradiente de u
8 grad_u = gradient(u, [x, y]);
2.6. GRADIENTE, DIVERGENCIA, ROTACIONAL Y LAPLACIANO:
FUNCIONES ARMÓNICAS Y APLICACIONES 161
Este código:
F = (F1 , F2 ) = (x3 − y, xy 2 ).
Calcular su divergencia ∇ · F.
—
Solución:
La divergencia de un campo vectorial en dos dimensiones se define como:
∂F1 ∂F2
∇·F= + .
∂x ∂y
Este operador mide la cantidad de flujo que entra o sale de un punto en un
campo vectorial.
F = (F1 , F2 ) = (x3 − y, xy 2 ).
Aquí, identificamos las componentes:
- F1 (x, y) = x3 −y (componente en la dirección x). - F2 (x, y) = xy 2 (componente
en la dirección y).
∂F1 ∂F2
∇·F= + .
∂x ∂y
Calculamos la derivada parcial de F1 con respecto a x:
2.6. GRADIENTE, DIVERGENCIA, ROTACIONAL Y LAPLACIANO:
FUNCIONES ARMÓNICAS Y APLICACIONES 162
∂F1 ∂ 3
= (x − y) = 3x2 .
∂x ∂x
Ahora, calculamos la derivada parcial de F2 con respecto a y:
∂F2 ∂
= (xy 2 ) = 2xy.
∂y ∂y
∇ · F = 3x2 + 2xy.
Por lo tanto, la divergencia del campo vectorial es:
∇ · F = 3x2 + 2xy.
—
Verificación en MATLAB
Podemos verificar este resultado simbólicamente en MATLAB con el siguiente código:
7 % Calcular la divergencia de F
8 div_F = divergence(F, [x, y]);
9
10 % Mostrar el resultado
11 fprintf('La␣divergencia␣de␣F(x,y)␣es:\n');
12 disp(div_F);
Este código:
—
2.6. GRADIENTE, DIVERGENCIA, ROTACIONAL Y LAPLACIANO:
FUNCIONES ARMÓNICAS Y APLICACIONES 163
∂F2 ∂F1
∇×F= − .
∂x ∂y
Este operador mide la tendencia del campo a rotar alrededor de un punto.
∂F2 ∂F1
− .
∂x ∂y
Calculamos la derivada parcial de F2 con respecto a x:
∂F2 ∂ x
= (e sin y) = ex sin y.
∂x ∂x
Ahora, calculamos la derivada parcial de F1 con respecto a y:
∂F1 ∂ x
= (e cos y) = −ex sin y.
∂y ∂y
∇ × F = 2ex sin y.
—
Verificación en MATLAB
Podemos verificar este resultado simbólicamente en MATLAB con el siguiente código:
7 % Calcular el rotacional de F en 2D
8 rot_F = curl([F 0], [x, y, 0]);
9
10 % Mostrar el resultado
11 fprintf('El␣rotacional␣de␣F(x,y)␣es:\n');
12 disp(rot_F(3)); % Extraer la componente en la dirección z
Este código:
u(x, y) = x3 − 3xy 2
es armónica, es decir, si satisface la ecuación de Laplace ∇2 u = 0.
—
Solución:
Una función u(x, y) es armónica si satisface la ecuación de Laplace:
∂ 2u ∂ 2u
∇2 u = + = 0.
∂x2 ∂y 2
2.6. GRADIENTE, DIVERGENCIA, ROTACIONAL Y LAPLACIANO:
FUNCIONES ARMÓNICAS Y APLICACIONES 165
∂ 2u ∂
2
= (3x2 − 3y 2 ) = 6x.
∂x ∂x
∂ 2u ∂
= (−6xy) = −6x.
∂y 2 ∂y
∂ 2u ∂ 2u
∇2 u = + = 6x + (−6x) = 0.
∂x2 ∂y 2
Dado que el Laplaciano es cero en todo R2 , concluimos que u(x, y) es una **fun-
ción armónica**.
—
Verificación en MATLAB
Podemos verificar este resultado simbólicamente en MATLAB con el siguiente código:
Listing 2.56: Verificación de la ecuación de Laplace en MATLAB
1 % Definir variables simbólicas
2 syms x y
3
11 % Calcular el Laplaciano
12 laplaciano_u = d2u_dx2 + d2u_dy2;
13
14 % Mostrar el resultado
15 fprintf('El␣Laplaciano␣de␣u(x,y)␣es:\n');
2.6. GRADIENTE, DIVERGENCIA, ROTACIONAL Y LAPLACIANO:
FUNCIONES ARMÓNICAS Y APLICACIONES 166
16 disp(laplaciano_u);
Este código:
• Define x y y como variables simbólicas.
∂ 2u ∂ 2u ∂ 2v ∂ 2v
∇2 u = + = 0, ∇2 v = + = 0.
∂x2 ∂y 2 ∂x2 ∂y 2
—
Solución:
∂ 2u ∂ x
2
= (e cos y) = ex cos y.
∂x ∂x
∂ 2u ∂
2
= (−ex sin y) = −ex cos y.
∂y ∂y
Sumamos ambas derivadas segundas:
∇2 u = ex cos y − ex cos y = 0.
Por lo tanto, u(x, y) es una función armónica.
2.6. GRADIENTE, DIVERGENCIA, ROTACIONAL Y LAPLACIANO:
FUNCIONES ARMÓNICAS Y APLICACIONES 167
∂ 2v ∂ x
2
= (e sin y) = ex sin y.
∂x ∂x
∂ 2v ∂
2
= (−ex cos y) = −ex sin y.
∂y ∂y
Sumamos ambas derivadas segundas:
∇2 v = ex sin y − ex sin y = 0.
Por lo tanto, v(x, y) también es una función armónica.
Paso 4: Conclusión
Dado que ∇2 u = 0 y ∇2 v = 0, concluimos que ambas funciones son armónicas.
Esto confirma que las partes real e imaginaria de una función analítica satisfacen la
ecuación de Laplace.
—
Verificación en MATLAB
Podemos verificar este resultado simbólicamente en MATLAB con el siguiente código:
Listing 2.57: Verificación de la ecuación de Laplace en MATLAB
1 % Definir variables simbólicas
2 syms x y
3
14 % Calcular el Laplaciano
15 laplaciano_u = d2u_dx2 + d2u_dy2;
16 laplaciano_v = d2v_dx2 + d2v_dy2;
17
22 fprintf('El␣Laplaciano␣de␣v(x,y)␣es:\n');
23 disp(laplaciano_v);
2.6. GRADIENTE, DIVERGENCIA, ROTACIONAL Y LAPLACIANO:
FUNCIONES ARMÓNICAS Y APLICACIONES 168
Este código:
6. Campo conservativo:
Sea el campo vectorial F = (2xy, x2 − y 2 ). Verificar si es conservativo deter-
minando si ∇ × F = 0.
9. Campo solenoidal:
Sea el campo F = (x2 − y, x + y 2 ). Verificar si es solenoidal calculando ∇ · F.
u(x, y) = x2 y + ey .
Solución
El gradiente de una función escalar u(x, y) se define como:
∂u ∂u
∇u = , .
∂x ∂y
∂u ∂ 2
= (x y + ey ) = 2xy.
∂x ∂x
Ahora, calculamos la derivada parcial con respecto a y:
∂u ∂ 2
= (x y + ey ) = x2 + ey .
∂y ∂y
∇u = (2xy, x2 + ey ).
Conclusión
El gradiente de la función dada es:
∇u = (2xy, x2 + ey ).
Este vector describe la dirección y magnitud del cambio más rápido de u(x, y)
en el plano.
—
Verificación en MATLAB
Podemos verificar este resultado computacionalmente con MATLAB:
7 % Calcular el gradiente de u
8 grad_u = gradient(u, [x, y]);
9
F = (F1 , F2 ) = (x3 − y, xy 2 ).
Determinar su divergencia ∇ · F.
—
2.6. GRADIENTE, DIVERGENCIA, ROTACIONAL Y LAPLACIANO:
FUNCIONES ARMÓNICAS Y APLICACIONES 171
Solución
La divergencia de un campo vectorial F = (F1 , F2 ) en dos dimensiones se define
como:
∂F1 ∂F2
∇·F= + .
∂x ∂y
Este operador mide la tasa neta de salida de flujo en un punto dado, lo que per-
mite analizar si un campo es fuente (∇·F > 0), sumidero (∇·F < 0) o incompresible
(∇ · F = 0).
—
F = (F1 , F2 ) = (x3 − y, xy 2 ),
identificamos sus componentes:
- F1 (x, y) = x3 −y (componente en la dirección x). - F2 (x, y) = xy 2 (componente
en la dirección y).
—
∂F1 ∂F2
∇·F= + .
∂x ∂y
Calculamos la derivada parcial de F1 con respecto a x:
∂F1 ∂ 3
= (x − y) = 3x2 .
∂x ∂x
Ahora, calculamos la derivada parcial de F2 con respecto a y:
∂F2 ∂
= (xy 2 ) = 2xy.
∂y ∂y
—
∇ · F = 3x2 + 2xy.
Esto significa que la tasa neta de expansión o compresión del campo en un punto
(x, y) está dada por 3x2 + 2xy.
—
2.6. GRADIENTE, DIVERGENCIA, ROTACIONAL Y LAPLACIANO:
FUNCIONES ARMÓNICAS Y APLICACIONES 172
Conclusión
La divergencia del campo vectorial F es:
∇ · F = 3x2 + 2xy.
Este resultado indica que la cantidad de flujo generado por el campo F depende
del punto (x, y), lo que sugiere que en regiones donde 3x2 + 2xy = 0, el campo se
comporta como un fluido incompresible.
—
Verificación en MATLAB
Podemos verificar este resultado simbólicamente en MATLAB con el siguiente código:
Listing 2.59: Cálculo de la divergencia de F en MATLAB
1 % Definir variables simbólicas
2 syms x y
3
7 % Calcular la divergencia de F
8 div_F = divergence(F, [x, y]);
9
10 % Mostrar el resultado
11 fprintf('La␣divergencia␣de␣F(x,y)␣es:\n');
12 disp(div_F);
Solución
El rotacional de un campo vectorial F = (F1 , F2 ) en dos dimensiones se define
como:
∂F2 ∂F1
∇×F= − .
∂x ∂y
Este operador mide la tendencia del campo a girar alrededor de un punto. Si
∇ × F = 0, el campo es irrotacional.
—
Conclusión
El rotacional del campo vectorial F es:
∇ × F = 2ex sin y.
Este resultado indica que el campo F no es irrotacional en general, salvo en los
puntos donde y = kπ, con k ∈ Z, donde sin y = 0.
—
Verificación en MATLAB
Podemos verificar este resultado simbólicamente en MATLAB con el siguiente código:
7 % Calcular el rotacional de F en 2D
8 rot_F = curl([F 0], [x, y, 0]);
9
10 % Mostrar el resultado
11 fprintf('El␣rotacional␣de␣F(x,y)␣es:\n');
12 disp(rot_F(3)); % Extraer la componente en la dirección z
u(x, y) = x3 − 3xy 2
es armónica, es decir, si satisface la ecuación de Laplace:
2.6. GRADIENTE, DIVERGENCIA, ROTACIONAL Y LAPLACIANO:
FUNCIONES ARMÓNICAS Y APLICACIONES 175
∂ 2u ∂ 2u
∇2 u = + = 0.
∂x2 ∂y 2
—
Solución
Una función u(x, y) se dice armónica si satisface la ecuación de Laplace:
∂ 2u ∂ 2u
∇2 u = + = 0.
∂x2 ∂y 2
∂ 2u ∂
= (3x2 − 3y 2 ) = 6x.
∂x2 ∂x
∂ 2u ∂
2
= (−6xy) = −6x.
∂y ∂y
∂ 2u ∂ 2u
∇ u=
2
+ = 6x + (−6x) = 0.
∂x2 ∂y 2
Dado que el Laplaciano es cero en todo R2 , concluimos que u(x, y) es una **fun-
ción armónica**.
—
Conclusión
La función u(x, y) = x3 − 3xy 2 es armónica, ya que satisface la ecuación de Laplace:
∇2 u = 0.
Esto significa que u(x, y) describe un campo sin fuentes ni sumideros y es útil
en aplicaciones como la electrostática y la mecánica de fluidos.
—
2.6. GRADIENTE, DIVERGENCIA, ROTACIONAL Y LAPLACIANO:
FUNCIONES ARMÓNICAS Y APLICACIONES 176
Verificación en MATLAB
Podemos verificar este resultado simbólicamente en MATLAB con el siguiente código:
11 % Calcular el Laplaciano
12 laplaciano_u = d2u_dx2 + d2u_dy2;
13
14 % Mostrar el resultado
15 fprintf('El␣Laplaciano␣de␣u(x,y)␣es:\n');
16 disp(laplaciano_u);
∂ 2u ∂ 2u ∂ 2v ∂ 2v
∇2 u = + = 0, ∇2 v = + = 0.
∂x2 ∂y 2 ∂x2 ∂y 2
—
2.6. GRADIENTE, DIVERGENCIA, ROTACIONAL Y LAPLACIANO:
FUNCIONES ARMÓNICAS Y APLICACIONES 177
Solución
Dado que f (z) es una función compleja, podemos descomponerla en sus partes real
e imaginaria:
donde:
∂ 2u ∂ x
2
= (e cos y) = ex cos y.
∂x ∂x
∂ 2u ∂
2
= (−ex sin y) = −ex cos y.
∂y ∂y
Sumamos ambas derivadas segundas:
∇2 u = ex cos y − ex cos y = 0.
∂ 2v ∂ x
2
= (e sin y) = ex sin y.
∂x ∂x
∂ 2v ∂
2
= (−ex cos y) = −ex sin y.
∂y ∂y
Sumamos ambas derivadas segundas:
∇2 v = ex sin y − ex sin y = 0.
Conclusión
Dado que ∇2 u = 0 y ∇2 v = 0, concluimos que ambas funciones son armónicas.
Esto confirma que las partes real e imaginaria de una función analítica satisfacen la
ecuación de Laplace.
—
Verificación en MATLAB
Podemos verificar este resultado simbólicamente en MATLAB con el siguiente código:
22 fprintf('El␣Laplaciano␣de␣v(x,y)␣es:\n');
23 disp(laplaciano_v);
Demostrar que sus partes real e imaginaria son funciones armónicas, es decir,
que satisfacen la ecuación de Laplace:
∂ 2u ∂ 2u ∂ 2v ∂ 2v
∇2 u = + = 0, ∇2 v = + = 0.
∂x2 ∂y 2 ∂x2 ∂y 2
—
Solución
Dado que f (z) es una función compleja, podemos descomponerla en sus partes real
e imaginaria:
donde:
∂ 2u ∂ x
2
= (e cos y) = ex cos y.
∂x ∂x
∂ 2u ∂
2
= (−ex sin y) = −ex cos y.
∂y ∂y
Sumamos ambas derivadas segundas:
∇2 u = ex cos y − ex cos y = 0.
∂ 2v ∂ x
= (e sin y) = ex sin y.
∂x2 ∂x
∂ 2v ∂
2
= (−ex cos y) = −ex sin y.
∂y ∂y
Sumamos ambas derivadas segundas:
∇2 v = ex sin y − ex sin y = 0.
Por lo tanto, v(x, y) también es una función armónica.
—
Conclusión
Dado que ∇2 u = 0 y ∇2 v = 0, concluimos que ambas funciones son armónicas.
Esto confirma que las partes real e imaginaria de una función analítica satisfacen la
ecuación de Laplace.
—
Verificación en MATLAB
Podemos verificar este resultado simbólicamente en MATLAB con el siguiente código:
Listing 2.63: Verificación de la ecuación de Laplace en MATLAB
1 % Definir variables simbólicas
2 syms x y
3
22 fprintf('El␣Laplaciano␣de␣v(x,y)␣es:\n');
23 disp(laplaciano_v);
F = (F1 , F2 ) = (2xy, x2 − y 2 ).
∇ × F = 0.
Solución
Un campo vectorial en dos dimensiones es **conservativo** si y solo si su rotacional
es nulo:
∂F2 ∂F1
∇×F= − = 0.
∂x ∂y
Esto significa que el campo se puede escribir como el gradiente de una función
escalar φ(x, y), es decir:
∂φ ∂φ
F = ∇φ = , .
∂x ∂y
Si el rotacional es distinto de cero, entonces el campo no es conservativo.
—
2.6. GRADIENTE, DIVERGENCIA, ROTACIONAL Y LAPLACIANO:
FUNCIONES ARMÓNICAS Y APLICACIONES 182
F = (F1 , F2 ) = (2xy, x2 − y 2 ),
∂F2 ∂F1
∇×F= − .
∂x ∂y
Calculamos la derivada parcial de F2 con respecto a x:
∂F2 ∂ 2
= (x − y 2 ) = 2x.
∂x ∂x
Ahora, calculamos la derivada parcial de F1 con respecto a y:
∂F1 ∂
= (2xy) = 2x.
∂y ∂y
Sustituyendo estos valores:
∇ × F = 2x − 2x = 0.
Conclusión
Dado que el rotacional del campo es cero:
∇ × F = 0,
F = ∇φ.
Verificación en MATLAB
Podemos verificar este resultado simbólicamente en MATLAB con el siguiente código:
7 % Calcular el rotacional de F en 2D
8 rot_F = curl([F 0], [x, y, 0]);
9
10 % Mostrar el resultado
11 fprintf('El␣rotacional␣de␣F(x,y)␣es:\n');
12 disp(rot_F(3)); % Extraer la componente en la dirección z
Solución
El flujo de un campo vectorial F a través de una curva cerrada C se calcula mediante
el **Teorema de Gauss (o Teorema de la Divergencia)** en dos dimensiones:
ZZ I
∇ · F dA = F · n ds.
D C
2.6. GRADIENTE, DIVERGENCIA, ROTACIONAL Y LAPLACIANO:
FUNCIONES ARMÓNICAS Y APLICACIONES 184
∇ · F = 2x + 2x = 4x.
—
∇ · F = 4x = 4r cos θ.
La integral en coordenadas polares queda:
ZZ
4r cos θ r dr dθ.
D
Los límites de integración son: - r varía de 0 a 1 (dentro del círculo). - θ varía
de 0 a 2π (ángulo completo del círculo).
Evaluamos la integral:
Z 2π Z 1
cos θ dθ 4r2 dr.
0 0
2.6. GRADIENTE, DIVERGENCIA, ROTACIONAL Y LAPLACIANO:
FUNCIONES ARMÓNICAS Y APLICACIONES 185
Calculamos la integral en r:
Z 1
4 1 4
4r2 dr = r3 = .
0 3 0 3
Ahora, la integral en θ:
Z 2π 2π
cos θ dθ = sin θ = 0.
0 0
—
Conclusión
Dado que la integral sobre θ es cero, concluimos que el flujo del campo a través del
círculo es:
ZZ
Φ= ∇ · F dA = 0.
D
Esto significa que el campo F no genera flujo neto a través del círculo de radio
1.
—
Verificación en MATLAB
Podemos verificar este resultado simbólicamente en MATLAB con el siguiente código:
Listing 2.65: Verificación del flujo en MATLAB
1 % Definir variables simbólicas
2 syms x y r theta
3
8 % Calcular la divergencia
9 div_F = divergence([F1, F2], [x, y]);
10
20 % Mostrar el resultado
21 fprintf('El␣flujo␣del␣campo␣F␣a␣través␣del␣círculo␣es:\n');
22 disp(flux);
2.6. GRADIENTE, DIVERGENCIA, ROTACIONAL Y LAPLACIANO:
FUNCIONES ARMÓNICAS Y APLICACIONES 186
• Calcula la divergencia de F.
f (z) = x2 − y 2 + i(2xy)
es analítica verificando las ecuaciones de Cauchy-Riemann.
—
Solución
Para que f (z) sea analítica en una región, debe ser diferenciable en esa región. Una
condición necesaria para la diferenciabilidad compleja es que sus componentes real
e imaginaria satisfagan las ecuaciones de Cauchy-Riemann:
∂u ∂v ∂u ∂v
= , =− .
∂x ∂y ∂y ∂x
donde: - u(x, y) es la parte real de f (z), - v(x, y) es la parte imaginaria de f (z).
Si estas ecuaciones se cumplen y las derivadas parciales son continuas, entonces
f (z) es analítica en la región considerada.
—
f (z) = x2 − y 2 + i(2xy).
De aquí identificamos:
∂u ∂ 2 ∂u ∂ 2
= (x − y 2 ) = 2x, = (x − y 2 ) = −2y.
∂x ∂x ∂y ∂y
Calculamos las derivadas parciales de v(x, y):
∂v ∂ ∂v ∂
= (2xy) = 2y, = (2xy) = 2x.
∂x ∂x ∂y ∂y
—
∂u ∂v ∂u ∂v
= , =− .
∂x ∂y ∂y ∂x
Verificamos la primera ecuación:
∂u ∂v
= 2x, = 2x.
∂x ∂y
Dado que ambos lados son iguales, **esta ecuación se cumple**.
Verificamos la segunda ecuación:
∂u ∂v
= −2y, − = −2y.
∂y ∂x
Dado que ambos lados son iguales, **esta ecuación también se cumple**.
—
Conclusión
Dado que las ecuaciones de Cauchy-Riemann se cumplen en todo C y las derivadas
parciales de u y v son continuas, concluimos que f (z) es **analítica en todo C**.
—
Verificación en MATLAB
Podemos verificar este resultado simbólicamente en MATLAB con el siguiente código:
Listing 2.66: Verificación de ecuaciones de Cauchy-Riemann en MATLAB
1 % Definir variables simbólicas
2 syms x y real
3
18 % Mostrar resultados
19 fprintf('Verificación␣de␣ecuaciones␣de␣Cauchy-Riemann:\n');
20 fprintf('du/dx␣-␣dv/dy␣=␣%s\n', char(CR1)); % Debe ser 0
21 fprintf('du/dy␣+␣dv/dx␣=␣%s\n', char(CR2)); % Debe ser 0
F = (F1 , F2 ) = (x2 − y, x + y 2 ).
Verificar si es **solenoidal** calculando su divergencia ∇ · F.
—
Solución
Un campo vectorial en dos dimensiones es **solenoidal** si su divergencia es cero,
es decir:
∂F1 ∂F2
∇·F= + = 0.
∂x ∂y
Este criterio se usa para determinar si el campo representa un flujo incompresible
en física y mecánica de fluidos.
—
2.6. GRADIENTE, DIVERGENCIA, ROTACIONAL Y LAPLACIANO:
FUNCIONES ARMÓNICAS Y APLICACIONES 189
F = (F1 , F2 ) = (x2 − y, x + y 2 ),
identificamos sus componentes:
- F1 (x, y) = x2 − y (componente en la dirección x). - F2 (x, y) = x + y 2 (compo-
nente en la dirección y).
—
∂F1 ∂F2
∇·F= + .
∂x ∂y
Calculamos la derivada parcial de F1 con respecto a x:
∂F1 ∂ 2
= (x − y) = 2x.
∂x ∂x
Ahora, calculamos la derivada parcial de F2 con respecto a y:
∂F2 ∂
= (x + y 2 ) = 2y.
∂y ∂y
Sumamos ambas derivadas:
∇ · F = 2x + 2y.
—
Conclusión
Dado que la divergencia del campo no es cero en general:
∇ · F = 2x + 2y ̸= 0,
concluimos que el campo vectorial F **no es solenoidal**. Esto significa que el
campo representa un flujo compresible en el plano.
—
Verificación en MATLAB
Podemos verificar este resultado simbólicamente en MATLAB con el siguiente código:
Listing 2.67: Verificación de campo solenoidal en MATLAB
1 % Definir variables simbólicas
2 syms x y
3
2.6. GRADIENTE, DIVERGENCIA, ROTACIONAL Y LAPLACIANO:
FUNCIONES ARMÓNICAS Y APLICACIONES 190
7 % Calcular la divergencia de F
8 div_F = divergence(F, [x, y]);
9
10 % Mostrar el resultado
11 fprintf('La␣divergencia␣de␣F(x,y)␣es:\n');
12 disp(div_F);
u(r, θ) = r2 cos 2θ
∂ 2 u 1 ∂u 1 ∂ 2u
∇2 u = + + = 0.
∂r2 r ∂r r2 ∂θ2
—
Solución
Paso 1: Planteamiento de la ecuación de Laplace
∂ 2 u 1 ∂u 1 ∂ 2u
∇2 u = + + .
∂r2 r ∂r r2 ∂θ2
Para verificar si u(r, θ) es armónica, calculamos las derivadas parciales necesarias.
—
2.6. GRADIENTE, DIVERGENCIA, ROTACIONAL Y LAPLACIANO:
FUNCIONES ARMÓNICAS Y APLICACIONES 191
∂ 2 u 1 ∂u 1 ∂ 2u
∇ u= 2 +
2
+ .
∂r r ∂r r2 ∂θ2
Sustituyendo los valores:
1 1
∇2 u = 2 cos 2θ + (2r cos 2θ) + 2 (−4r2 cos 2θ).
r r
Simplificamos:
∇2 u = 0.
—
Conclusión
Como ∇2 u = 0, concluimos que la función:
u(r, θ) = r2 cos 2θ
es **armónica**, es decir, satisface la ecuación de Laplace en coordenadas po-
lares.
—
2.6. GRADIENTE, DIVERGENCIA, ROTACIONAL Y LAPLACIANO:
FUNCIONES ARMÓNICAS Y APLICACIONES 192
Verificación en MATLAB
Podemos verificar este resultado computacionalmente con MATLAB usando derivadas
simbólicas:
Listing 2.68: Verificación de la ecuación de Laplace en coordenadas polares
1
16 % Simplificar la expresión
17 laplaciano_u = simplify(laplaciano_u);
18
19 % Mostrar el resultado
20 fprintf('El␣Laplaciano␣de␣u(r,␣theta)␣es:\n');
21 disp(laplaciano_u);