Derivación e integración · Tema 26

Integración numérica

Cómo aproximar acumulaciones y áreas con un número finito de muestras, organizar una partición y controlar el error al refinarla.

01 · Acumular sin antiderivada

De una cantidad continua a una suma finita

La integral definida representa una acumulación: distancia a partir de velocidad, masa a partir de densidad, probabilidad a partir de una densidad o área con signo bajo una curva.

I=∫ab f(x) dx

El teorema fundamental permite usar una antiderivada cuando la conocemos. Sin embargo, muchas funciones proceden de simulaciones, mediciones o expresiones cuya primitiva no es elemental.

La integración numérica, también llamada cuadratura, aproxima la integral mediante evaluaciones de f.

02 · Qué mide la integral

Área con signo, orientación y unidades

Si f(x)≥0, la integral coincide con el área geométrica entre la curva y el eje. Si la función es negativa, esa región contribuye negativamente:

∫ab f(x)dx = área sobre el eje − área bajo el eje

Invertir los límites cambia la orientación:

∫ba f(x)dx = −∫ab f(x)dx

Las unidades también se multiplican. Si x está en segundos y f en metros por segundo, la integral se expresa en metros.

03 · Forma general

Nodos y pesos

Una regla de cuadratura tiene la forma:

∫ab f(x)dx ≈ Σi=0m wᵢ f(xᵢ)

Los xᵢ son los nodos donde evaluamos la función y los wᵢ son los pesos. Cada método se caracteriza por cómo los elige.

  • Las sumas rectangulares toman un punto representativo en cada subintervalo.
  • El trapecio integra una aproximación lineal.
  • Simpson integra aproximaciones cuadráticas.
  • La cuadratura gaussiana elige nodos interiores especialmente eficientes.

En este tema construiremos la base con rectángulos y punto medio. Los temas siguientes desarrollarán trapecio y Simpson.

04 · Dividir el intervalo

Una malla uniforme

Dividimos [a,b] en n subintervalos iguales:

h=(b−a)/n,    xᵢ=a+ih,   i=0,…,n

En cada subintervalo [xᵢ,xᵢ₊₁] reemplazamos la curva por una altura representativa. El área aproximada de la pieza es h multiplicado por esa altura.

partir [a,b]→elegir nodos→evaluar f→sumar áreas

05 · Extremos de cada celda

Sumas izquierda y derecha

La suma izquierda usa xᵢ como altura:

Lₙ=h Σi=0n−1 f(xᵢ)

La suma derecha usa xᵢ₊₁:

Rₙ=h Σi=1n f(xᵢ)

Si la función es creciente y positiva, Lₙ subestima y Rₙ sobrestima. Si es decreciente, ocurre lo contrario. Para funciones que cambian de dirección no existe una regla global tan simple.

Ambos métodos tienen error global O(h) para funciones suaves.

06 · Una muestra simétrica

Regla compuesta del punto medio

Tomamos la altura en el centro de cada subintervalo:

Mₙ=h Σi=0n−1 f(a+(i+1/2)h)

La simetría cancela el término de error de primer orden. Para una función con segunda derivada continua:

I−Mₙ = (b−a)h² f″(ξ)/24

El signo depende de la convención y de la curvatura, pero la magnitud es O(h²). Al duplicar n, el paso se reduce a la mitad y el error suele dividirse aproximadamente por cuatro.

07 · Cálculo manual

Integrar x² entre 0 y 2

La integral exacta es 8/3≈2.666667. Usamos n=4, por lo que h=0.5.

L₄=0.5(0²+0.5²+1²+1.5²)=1.75
R₄=0.5(0.5²+1²+1.5²+2²)=3.75
M₄=0.5(0.25²+0.75²+1.25²+1.75²)=2.625

Como x² es creciente, la suma izquierda queda debajo y la derecha encima. El punto medio es mucho más cercano: su error absoluto es aproximadamente 0.041667.

08 · Algoritmos básicos

Integradores rectangulares en JavaScript

function integrarRectangulos(f, a, b, n, metodo = "medio") {
  if (!Number.isInteger(n) || n < 1) throw new Error("n debe ser positivo");
  if (!["izquierda", "derecha", "medio"].includes(metodo)) {
    throw new Error("Método desconocido");
  }

  const h = (b - a) / n;
  let suma = 0;
  for (let i = 0; i < n; i++) {
    let x;
    if (metodo === "izquierda") x = a + i * h;
    else if (metodo === "derecha") x = a + (i + 1) * h;
    else x = a + (i + 0.5) * h;
    suma += f(x);
  }
  return h * suma;
}

const f = x => x * x;
for (const metodo of ["izquierda", "derecha", "medio"]) {
  console.log(metodo, integrarRectangulos(f, 0, 2, 4, metodo));
}
// izquierda 1.75, derecha 3.75, medio 2.625

La misma función admite límites invertidos: h se vuelve negativo y la orientación cambia automáticamente.

09 · Muestras disponibles

Integrar datos tabulados

Si solo conocemos valores en una tabla, los nodos disponibles condicionan la regla. Con datos uniformes yᵢ=f(xᵢ), las sumas de extremos son inmediatas:

function sumaIzquierdaTabla(valores, h) {
  if (valores.length < 2 || !(h > 0)) throw new Error("Datos inválidos");
  return h * valores.slice(0, -1).reduce((suma, y) => suma + y, 0);
}

function sumaDerechaTabla(valores, h) {
  if (valores.length < 2 || !(h > 0)) throw new Error("Datos inválidos");
  return h * valores.slice(1).reduce((suma, y) => suma + y, 0);
}

const valores = [0, 0.25, 1, 2.25, 4];
console.log(sumaIzquierdaTabla(valores, 0.5)); // 1.75
console.log(sumaDerechaTabla(valores, 0.5));   // 3.75

El punto medio necesita muestras en los centros. No debemos fingir que un dato de extremo está en el centro; sería una regla distinta. Para mallas no uniformes se usa el ancho particular de cada subintervalo.

10 · Convergencia

Refinar y observar el orden

Una cota para las reglas izquierda o derecha es:

|I−Lₙ|, |I−Rₙ| ≤ (b−a)Mh/2,   M=max|f′(x)|

Para el punto medio:

|I−Mₙ| ≤ (b−a)M₂h²/24,   M₂=max|f″(x)|

Si no conocemos esas derivadas, podemos comparar particiones. Para un método de orden p, en el régimen asintótico:

E(h)/E(h/2)≈2ᵖ

Las diferencias entre resultados sucesivos sirven como indicadores, aunque no reemplazan una cota rigurosa cuando se necesita garantía.

11 · Error sin valor exacto

Comparar n y 2n

Si Q(h)=I+Chᵖ+…, entonces una estimación del error de la aproximación fina es:

I−Q(h/2) ≈ [Q(h/2)−Q(h)]/(2ᵖ−1)

Para punto medio, p=2 y dividimos la diferencia por tres.

function puntoMedio(f, a, b, n) {
  const h = (b - a) / n;
  let suma = 0;
  for (let i = 0; i < n; i++) suma += f(a + (i + 0.5) * h);
  return h * suma;
}

function puntoMedioConError(f, a, b, n) {
  const gruesa = puntoMedio(f, a, b, n);
  const fina = puntoMedio(f, a, b, 2 * n);
  return {
    valor: fina,
    errorEstimado: Math.abs(fina - gruesa) / 3
  };
}

console.log(puntoMedioConError(x => Math.exp(x), 0, 1, 8));

La estimación supone suavidad y que el término principal domina. Conviene verificarla con otra refinación.

12 · Refinar donde hace falta

Particiones adaptativas

Una malla uniforme gasta la misma cantidad de evaluaciones en regiones planas y regiones con gran curvatura. Un algoritmo adaptativo compara una aproximación gruesa con otra más fina en cada intervalo y subdivide únicamente donde la diferencia es grande.

function puntoMedioAdaptativo(f, a, b, tolerancia = 1e-8, profundidad = 20) {
  function integrar(izquierda, derecha, tol, nivel) {
    const medio = (izquierda + derecha) / 2;
    const gruesa = (derecha - izquierda) * f(medio);
    const fina = (medio - izquierda) * f((izquierda + medio) / 2)
      + (derecha - medio) * f((medio + derecha) / 2);
    const correccion = (fina - gruesa) / 3;

    if (nivel === 0 || Math.abs(correccion) <= tol) {
      return fina + correccion;
    }
    return integrar(izquierda, medio, tol / 2, nivel - 1)
      + integrar(medio, derecha, tol / 2, nivel - 1);
  }
  if (!(tolerancia > 0)) throw new Error("Tolerancia inválida");
  return integrar(a, b, tolerancia, profundidad);
}

console.log(puntoMedioAdaptativo(x => 1 / (1 + 100 * x * x), -1, 1));

El límite de profundidad evita una recursión indefinida. Una implementación de producción también contaría evaluaciones, detectaría valores no finitos y comunicaría si no pudo cumplir la tolerancia.

13 · Antes de integrar

Discontinuidades, singularidades y oscilaciones

La suavidad determina la eficacia de las fórmulas. Antes de aplicar una regla:

  • dividí el intervalo en discontinuidades conocidas;
  • tratá singularidades de extremo mediante cambios de variable o métodos específicos;
  • evitá evaluar puntos donde la función no está definida;
  • asegurá suficientes muestras para resolver oscilaciones rápidas;
  • truncá integrales infinitas solo después de estimar la cola omitida.

Refinar ciegamente una malla puede ser costoso y aun así perder un pico angosto ubicado entre nodos. El conocimiento de la función forma parte del método numérico.

14 · Exploración interactiva

Laboratorio: cubrir la curva con rectángulos

Elegí una función, el punto de muestreo y la cantidad de subintervalos. Los rectángulos turquesa representan contribuciones positivas y los corales, negativas.

EXPERIMENTO 26

De rectángulos gruesos a una acumulación

∫₀² x² dx

Los resultados numéricos aparecen debajo.
Aproximación—
Valor exacto—
Error absoluto—
Ancho h—

Aumentá la partición para observar la convergencia.

Preguntas para explorar

  1. En x², compará las sumas izquierda y derecha con pocos subintervalos.
  2. Duplicá n con punto medio y observá cuánto disminuye el error.
  3. En x³−x, distinguí área geométrica de integral con signo.
  4. En la función de Runge, observá dónde una malla uniforme necesitaría más detalle.

15 · Comprensión

Confusiones frecuentes

«Integrar numéricamente siempre calcula un área positiva»

La integral es orientada y las regiones bajo el eje contribuyen con signo negativo.

«n puntos producen n subintervalos»

Una partición con n subintervalos tiene n+1 extremos. El punto medio usa además un nodo interior por subintervalo.

«Izquierda siempre subestima y derecha siempre sobrestima»

Eso ocurre para funciones crecientes. Si la función decrece se invierte, y si cambia de dirección debe analizarse por regiones.

«Duplicar n duplica la precisión»

La mejora depende del orden, la suavidad y del régimen de error. En punto medio, el error de truncamiento suele reducirse unas cuatro veces.

«Una tolerancia pedida garantiza una respuesta correcta»

El estimador puede fallar ante singularidades, picos no muestreados o redondeo. La implementación debe diagnosticar sus supuestos.

16 · Práctica guiada

Ejercicios

Ejercicio 1: partición

Dividí [1,3] en cuatro subintervalos uniformes. Indicá h y los extremos.

Ver solución

h=(3−1)/4=0.5. Los extremos son 1, 1.5, 2, 2.5, 3.

Ejercicio 2: suma izquierda

Usá dos rectángulos izquierdos para aproximar ∫₀² x dx.

Ver solución

h=1 y las alturas son f(0)=0 y f(1)=1. La aproximación es 1(0+1)=1; el valor exacto es 2.

Ejercicio 3: punto medio

Aplicá dos rectángulos de punto medio a la misma integral.

Ver solución razonada

Los centros son 0.5 y 1.5. La suma es 1(0.5+1.5)=2, exacta porque el punto medio integra funciones lineales.

Ejercicio 4: orientación

Si una regla aproxima ∫₁⁴ f(x)dx por 7.2, ¿qué valor corresponde a ∫₄¹ f(x)dx?

Ver solución

−7.2, porque invertir los límites cambia el signo.

Ejercicio 5: estudio de convergencia

Calculá el punto medio para eˣ en [0,1] con n=2,4,8,16.

Ver una posible solución
function puntoMedio(f, a, b, n) {
  const h = (b - a) / n;
  let suma = 0;
  for (let i = 0; i < n; i++) suma += f(a + (i + 0.5) * h);
  return h * suma;
}

const exacta = Math.E - 1;
for (const n of [2, 4, 8, 16]) {
  const valor = puntoMedio(Math.exp, 0, 1, n);
  console.log(n, valor, Math.abs(valor - exacta));
}

17 · Síntesis

Ideas para recordar

  • La cuadratura reemplaza una integral por una suma ponderada de muestras.
  • La integral mide acumulación con signo y conserva la orientación.
  • Una partición uniforme tiene paso h=(b−a)/n.
  • Las sumas izquierda y derecha son métodos de primer orden.
  • El punto medio aprovecha simetría y alcanza segundo orden.
  • Comparar n y 2n permite observar convergencia y estimar error.
  • La adaptación concentra evaluaciones donde la función es más difícil.
  • Discontinuidades, singularidades y oscilaciones requieren tratamiento explícito.
  • Una tolerancia numérica solo es significativa junto con diagnósticos.

En el próximo tema reemplazaremos cada tramo de la curva por una recta y desarrollaremos en detalle la regla del trapecio.