01 · Mejorar la información del paso
De una pendiente inicial a una pendiente media
Euler explícito avanza con f(tₙ,yₙ), como si la pendiente no cambiara durante el intervalo. Cuando la trayectoria se curva, esa hipótesis genera un error visible.
La forma integral indica qué necesitamos realmente:
Heun y el punto medio obtienen una mejor aproximación de esa media mediante dos evaluaciones de f.
02 · Euler mejorado
Método de Heun
Heun calcula una pendiente al inicio y utiliza Euler como predictor para estimar el extremo. Luego evalúa allí una segunda pendiente:
ỹₙ₊₁=yₙ+h k₁
k₂=f(tₙ+h,ỹₙ₊₁)
yₙ₊₁=yₙ+h(k₁+k₂)/2
El predictor ỹₙ₊₁ no es el resultado final: solo sirve para conocer aproximadamente la pendiente del otro extremo. El avance aceptado usa el promedio de ambas pendientes.
03 · Interpretación integral
Un trapecio explícito
En la forma integral del PVI, la regla del trapecio aproximaría el área usando las pendientes de ambos extremos:
El valor exacto del extremo es desconocido. Heun lo sustituye por el predictor de Euler y conserva así una fórmula explícita.
04 · Mirar dentro del intervalo
Método del punto medio explícito
Otra estrategia consiste en aproximar el estado a mitad del paso y utilizar la pendiente calculada allí para recorrer el intervalo completo:
ymedio=yₙ+(h/2)k₁
k₂=f(tₙ+h/2,ymedio)
yₙ₊₁=yₙ+h k₂
El estado intermedio es auxiliar y no debe confundirse con una solución independiente. La evaluación k₂ representa mejor lo que sucede dentro del paso que la pendiente inicial sola.
En ecuaciones no autónomas es indispensable avanzar también el tiempo hasta tₙ+h/2.
05 · Una misma familia
Condiciones de segundo orden
Consideremos dos etapas con un parámetro a≠0:
k₂=f(tₙ+ah,yₙ+ahk₁)
yₙ₊₁=yₙ+h(b₁k₁+b₂k₂)
Al comparar su expansión con Taylor aparecen las condiciones:
| Método | a | b₁ | b₂ | Dónde evalúa k₂ |
|---|---|---|---|---|
| Heun | 1 | 1/2 | 1/2 | Extremo predicho |
| Punto medio | 1/2 | 0 | 1 | Mitad predicha |
Ambos satisfacen las condiciones de orden dos, aunque sus errores de términos superiores pueden ser diferentes.
06 · Cálculo de un paso
Comparación sobre y′=y
Desde t₀=0, y₀=1, con h=0.25:
| Método | Cálculo | y₁ |
|---|---|---|
| Euler | 1+0.25·1 | 1.25 |
| Heun | 1+0.25(1+1.25)/2 | 1.28125 |
| Punto medio | 1+0.25·1.125 | 1.28125 |
| Exacto | e0.25 | 1.284025 |
Para esta ecuación lineal autónoma, Heun y punto medio coinciden: ambos multiplican por 1+h+h²/2. Esa igualdad no se mantiene en general. Por ejemplo, si f depende de forma no lineal de y, las segundas evaluaciones ocurren en estados diferentes.
07 · Implementación
Heun en JavaScript
function pasoHeun(f, t, y, h) {
const k1 = f(t, y);
const predictor = y + h * k1;
const k2 = f(t + h, predictor);
return y + h * (k1 + k2) / 2;
}
function integrar(f, t0, y0, tFinal, hMaximo, paso) {
if (!(hMaximo > 0) || tFinal < t0) throw new Error("Intervalo inválido");
const trayectoria = [{ t: t0, y: y0 }];
let t = t0;
let y = y0;
while (t < tFinal) {
const h = Math.min(hMaximo, tFinal - t);
y = paso(f, t, y, h);
t += h;
if (!Number.isFinite(y)) throw new Error("Estado no finito");
trayectoria.push({ t, y });
}
return trayectoria;
}
const puntos = integrar((t, y) => y, 0, 1, 1, 0.25, pasoHeun);
console.log("Heun en t=1:", puntos.at(-1).y);
console.log("valor exacto:", Math.E);
Separar la estrategia de paso del bucle permite reutilizar validaciones, almacenamiento y control del último intervalo.
08 · Segunda estrategia
Punto medio en JavaScript
function pasoPuntoMedio(f, t, y, h) {
const k1 = f(t, y);
const yMedio = y + h * k1 / 2;
const k2 = f(t + h / 2, yMedio);
return y + h * k2;
}
const f = (t, y) => t - y * y;
const t = 0;
const y = 1;
const h = 0.2;
const k1 = f(t, y);
const yMedio = y + h * k1 / 2;
const k2 = f(t + h / 2, yMedio);
const siguiente = pasoPuntoMedio(f, t, y, h);
console.log("k1:", k1);
console.log("estado intermedio:", yMedio);
console.log("k2:", k2);
console.log("nuevo estado:", siguiente);
Calcular k₁ antes de modificar el estado y conservar variables auxiliares hace explícita la dependencia entre etapas.
09 · Precisión teórica
Error local cúbico y global cuadrático
Las condiciones de orden eliminan los términos de error hasta grado dos. Si la solución y la función son suficientemente suaves:
error global en un intervalo fijo = O(h²)
Como se necesitan aproximadamente 1/h pasos, los defectos cúbicos acumulados producen un error global cuadrático.
El orden no determina por sí solo el error: Heun y punto medio comparten orden, pero poseen constantes de error distintas.
10 · Verificación computacional
Medir el orden observado
function resolver(paso, pasos) {
const f = (t, y) => y;
const h = 1 / pasos;
let t = 0;
let y = 1;
for (let n = 0; n < pasos; n++) {
y = paso(f, t, y, h);
t += h;
}
return y;
}
const heun = (f, t, y, h) => {
const k1 = f(t, y);
const k2 = f(t + h, y + h * k1);
return y + h * (k1 + k2) / 2;
};
let errorAnterior;
for (const pasos of [4, 8, 16, 32, 64]) {
const error = Math.abs(Math.E - resolver(heun, pasos));
const cociente = errorAnterior === undefined ? "—" : errorAnterior / error;
console.log(pasos, error.toExponential(4), cociente);
errorAnterior = error;
}
Los cocientes se aproximan a 4. También puede calcularse el orden observado mediante:
Un estudio serio utiliza varios refinamientos: un único par de pasos puede estar fuera del régimen asintótico.
11 · Trabajo por precisión
Comparar el costo de manera justa
Euler usa una evaluación de f por paso; Heun y punto medio usan dos. Pero contar solamente pasos favorece artificialmente a Euler.
| Método | Evaluaciones por paso | Orden global | Error al usar h/2 |
|---|---|---|---|
| Euler | 1 | 1 | ≈ E/2 |
| Heun | 2 | 2 | ≈ E/4 |
| Punto medio | 2 | 2 | ≈ E/4 |
La comparación relevante fija una tolerancia y mide evaluaciones, tiempo y memoria necesarios para alcanzarla. Un método más costoso por paso puede resultar mucho más económico en total.
12 · La ecuación de prueba
Estabilidad de los métodos RK2
Al aplicar Heun o punto medio a y′=λy, ambos producen:
La región de estabilidad está formada por los valores complejos de z para los que |R(z)|<1. Sobre el eje real negativo:
El intervalo estable real es el mismo que para Euler explícito. La mejora de orden no implica automáticamente una región de estabilidad mayor.
- Para
λ=−10, se requiereh<0.2. - Con
h=0.1,R(−1)=0.5. - Con
h=0.3,R(−3)=2.5y la aproximación crece.
En problemas rígidos, el límite de estabilidad puede obligar a usar pasos diminutos aunque la precisión admita pasos mayores.
13 · Estados vectoriales
Las etapas en un sistema
Las fórmulas se mantienen, pero cada k es un vector. Las operaciones deben realizarse componente a componente sin modificar el estado original:
const sumarEscalado = (estado, escala, derivada) =>
estado.map((valor, i) => valor + escala * derivada[i]);
function pasoHeunVector(f, t, estado, h) {
const k1 = f(t, estado);
const predictor = sumarEscalado(estado, h, k1);
const k2 = f(t + h, predictor);
return estado.map((valor, i) => valor + h * (k1[i] + k2[i]) / 2);
}
const oscilador = (t, [x, v]) => [v, -x];
let estado = [1, 0];
let t = 0;
const h = 0.1;
for (let n = 0; n < 100; n++) {
estado = pasoHeunVector(oscilador, t, estado, h);
t += h;
}
const energia = 0.5 * (estado[0] ** 2 + estado[1] ** 2);
console.log("estado:", estado);
console.log("energía inicial:", 0.5, "energía final:", energia);
Heun reduce considerablemente la deriva energética respecto de Euler en este ejemplo, pero no conserva energía exactamente. Orden y preservación geométrica son propiedades diferentes.
14 · Exploración interactiva
Laboratorio: tres aproximaciones frente a la solución exacta
La gráfica superpone Euler, Heun y punto medio usando la misma malla. Cambiá el modelo y refiná los pasos para comparar precisión y costo.
Comparar pendientes por paso
y′=y, y(0)=1
Heun y punto medio usan dos evaluaciones de f por paso.
Preguntas para explorar
- Duplicá la cantidad de pasos. ¿El error de los métodos RK2 cae aproximadamente cuatro veces?
- En crecimiento lineal, comprobá que Heun y punto medio coinciden.
- En el modelo logístico, observá que las dos curvas de segundo orden ya no son idénticas.
- En el modelo forzado, explicá por qué el tiempo usado en la segunda evaluación es importante.
15 · Comprensión
Confusiones frecuentes
«Euler mejorado es Euler con un paso más pequeño»
No. Heun cambia la fórmula: evalúa dos pendientes y utiliza su promedio.
«El predictor de Heun es el nuevo estado definitivo»
Es solamente un valor auxiliar para calcular k₂. El estado aceptado usa el promedio de k₁ y k₂.
«Heun y punto medio siempre producen lo mismo»
Coinciden para algunas ecuaciones, como y′=λy, pero en general evalúan f en tiempos y estados distintos.
«Dos evaluaciones garantizan orden dos»
No. Los tiempos, estados y pesos deben satisfacer las condiciones de orden.
«Orden dos significa el doble de precisión»
El orden describe cómo decrece el error al refinar h. En régimen asintótico, usar h/2 reduce el error aproximadamente cuatro veces.
«Un método de mayor orden siempre es más estable»
No. En el eje real negativo, estos RK2 tienen el mismo intervalo estable que Euler explícito.
16 · Práctica guiada
Ejercicios
Ejercicio 1: un paso de Heun
Aplicá Heun con h=0.2 a y′=t+y desde (0,1).
Ver solución
k₁=1, predictor ỹ₁=1.2, k₂=f(0.2,1.2)=1.4. Entonces y₁=1+0.2(1+1.4)/2=1.24.
Ejercicio 2: un paso de punto medio
Resolvé el mismo paso con el método del punto medio.
Ver solución
k₁=1, ymedio=1.1, k₂=f(0.1,1.1)=1.2. Por tanto, y₁=1+0.2·1.2=1.24.
Ejercicio 3: comprobar condiciones
Para a=2/3, encontrá los pesos b₁ y b₂ que producen orden dos.
Ver solución razonada
De ab₂=1/2 resulta b₂=3/4. Como b₁+b₂=1, queda b₁=1/4.
Ejercicio 4: orden observado
Los errores para h y h/2 son 0.0032 y 0.00081. Estimá el orden.
Ver solución
p≈log₂(0.0032/0.00081)≈1.98, compatible con un método de segundo orden.
Ejercicio 5: estabilidad
Para y′=−20y, determiná el máximo paso estable de Heun sobre el eje real.
Ver solución
Debe cumplirse −2<−20h<0, por lo que 0<h<0.1. En el límite h=0.1, el factor vale uno y no hay decaimiento.
17 · Síntesis
Ideas para recordar
- Heun promedia las pendientes del inicio y de un extremo predicho.
- El punto medio avanza con una pendiente evaluada en un estado intermedio predicho.
- Ambos requieren dos evaluaciones de f por paso.
- Son miembros de una familia explícita de métodos RK2.
- Su defecto local es O(h³) y su error global es O(h²).
- Al dividir h por dos, el error global tiende a reducirse cuatro veces.
- Para y′=λy comparten R(z)=1+z+z²/2.
- Mayor orden no implica necesariamente una región estable mayor.
- La comparación justa considera evaluaciones de f y error alcanzado.
En el próximo tema ampliaremos esta construcción a los métodos de Runge-Kutta, incluyendo el conocido esquema clásico de cuarto orden.