Integrales en coordenadas poláres
✍️ ¿De dónde viene la fórmula del área en coordenadas polares?
Cuando trabajamos en coordenadas cartesianas, calculamos el área bajo una curva con:
Esto funciona porque estamos sumando tiras verticales de altura y base .
📐 ¿Cómo cambiamos esta idea en coordenadas polares?
En coordenadas polares, no sumamos rectángulos, sino sectores circulares muy delgados.
Imaginen que dividimos una región curva (como una flor o un círculo) en muchos “triangulitos redondeados”, como las rebanadas de una pizza 🍕.
Cada rebanada tiene:
- Un radio
- Un pequeño ángulo
El área de un sector circular es:
Entonces, si es muy pequeño (), podemos usar esta fórmula para aproximar el área de una rebanada infinitesimal:
🔄 Sumando infinitas rebanadas…
Para obtener el área total entre los ángulos y , simplemente integramos:
Esta es la fórmula del área en coordenadas polares
🎨 Visualización: sectores que construyen un área
El siguiente código muestra cómo una curva en polares puede ser aproximada por varios sectores, cada uno con su propio radio y ángulo.
import numpy as np
import matplotlib.pyplot as plt
# Parámetros para la curva
theta_full = np.linspace(0, np.pi, 1000)
r_full = 1 + 0.5 * np.sin(2 * theta_full)
# Convertimos a coordenadas cartesianas
x_full = r_full * np.cos(theta_full)
y_full = r_full * np.sin(theta_full)
# Sectores aproximados (pocos para visualización)
theta_sect = np.linspace(0, np.pi, 8)
r_sect = 1 + 0.5 * np.sin(2 * theta_sect)
fig, ax = plt.subplots(figsize=(6, 6))
ax.set_aspect('equal')
ax.set_xlim(-2, 2)
ax.set_ylim(-0.5, 2.5)
ax.set_title("Aproximación del área con sectores vs. curva real")
ax.grid(True)
# Área total encerrada por la curva (relleno suave)
ax.fill(x_full, y_full, alpha=0.2, color='pink', label='Área real')
# Curva real
ax.plot(x_full, y_full, color='crimson', label=r'$r = 1 + 0.5\sin(2\theta)$')
# Sectores circulares aproximados
for i in range(len(theta_sect)-1):
θ1 = theta_sect[i]
θ2 = theta_sect[i+1]
r = r_sect[i]
t = np.linspace(θ1, θ2, 30)
rt = np.full_like(t, r)
x = rt * np.cos(t)
y = rt * np.sin(t)
ax.fill(np.concatenate([[0], x, [0]]), np.concatenate([[0], y, [0]]), alpha=0.3, color='orange')
ax.plot(x, y, color='darkorange')
# Centro
ax.plot(0, 0, 'ko')
ax.legend()
plt.show()
🧮 Ejemplo: área encerrada por
Queremos calcular el área encerrada por la curva polar:
Esta curva es una cardioide más estilizada, con forma de gota o corazón. Es un ejemplo clásico y visualmente claro de curva que no puede expresarse fácilmente en coordenadas cartesianas.
📍 Paso 1: Visualizar la curva
import numpy as np
import matplotlib.pyplot as plt
theta = np.linspace(0, 2*np.pi, 1000)
r = 1 + np.cos(theta)
x = r * np.cos(theta)
y = r * np.sin(theta)
plt.figure(figsize=(6, 6))
plt.plot(x, y, color='darkred', label=r'$r = 1 + \cos(\theta)$')
plt.fill(x, y, alpha=0.2, color='darkred')
plt.gca().set_aspect('equal')
plt.title("Curva polar: $r = 1 + \cos(\\theta)$")
plt.grid(True)
plt.legend()
plt.show()
📍 Paso 2: Determinar los límites de integración
La curva se cierra completamente cuando recorre desde hasta , así que:
📍 Paso 3: Aplicar la fórmula del área
Expandimos el integrando:
Y usamos la identidad:
Entonces:
📐 Integramos término a término:
✅ Resultado final
El área encerrada por la curva es:
🧪 Verificación con SymPy
from sympy import symbols, integrate, cos, pi, simplify
θ = symbols('θ')
r = 1 + cos(θ)
area_expr = 0.5 * r**2
area = integrate(area_expr, (θ, 0, 2*pi))
simplify(area)
🧠 Conclusiones del ejemplo
- Esta curva tiene forma reconocible y no trivial, lo que la hace ideal para estudiar integrales en coordenadas polares.
- La integral es manejable usando identidades trigonométricas.
- El área se obtiene sin convertir a coordenadas cartesianas.