01 · Dos representaciones del tiempo
La ecuación habla de todos los instantes; la computadora usa una lista
Un problema de valor inicial
define una función continua, al menos idealmente, para todos los tiempos de un intervalo. Una simulación no puede almacenar infinitos valores. Elige instantes concretos
y calcula aproximaciones y₀,y₁,…,yN al estado verdadero en esos puntos.
Modelo continuo
y(t)
Una función definida sobre un intervalo y gobernada por una derivada.
Representación discreta
{(tn,yn)}
Una secuencia finita de muestras calculadas y almacenadas.
02 · La malla temporal
Un paso h separa instantes consecutivos
En una malla uniforme:
El número h>0 es el tamaño de paso. Cada intervalo cumple tn+1−tn=h. Si se integra hacia atrás, puede usarse un paso con signo negativo o una convención explícita para la dirección.
| Símbolo | Significado | Ejemplo |
|---|---|---|
t₀ | Instante inicial. | 0 s |
tf | Instante final solicitado. | 5 s |
h | Separación regular. | 0,5 s |
N | Cantidad de pasos. | 10 |
N+1 | Cantidad de muestras incluyendo ambos extremos. | 11 |
Un error común es confundir pasos con puntos: diez intervalos contienen once nodos.
03 · Cuando el intervalo no es múltiplo de h
El último paso puede necesitar una longitud menor
Si (tf−t₀)/h no es entero, repetir ciegamente el paso puede terminar antes o después del instante solicitado. Por ejemplo, desde 0 hasta 5 con h=0,6:
El valor 5 no pertenece a esa malla regular. Una estrategia común es acortar solamente el último paso:
Así se avanza de 4,8 a 5 con un paso de 0,2. Otra posibilidad es ajustar N y usar h=(tf−t₀)/N para obtener una malla exactamente uniforme.
04 · Qué significa yn
Una muestra exacta y una aproximación no son lo mismo
La notación yn suele representar una aproximación numérica:
Si conocemos la solución exacta y solo la evaluamos en la malla, obtenemos muestras exactas en puntos discretos. Todavía no hay error de integración. En cambio, un método numérico construye yn+1 a partir de información disponible en pasos anteriores y acumula error.
Muestreo
yn=y(tn)
La fórmula exacta existe y se evalúa solo en ciertos instantes.
Integración numérica
yn+1=Φ(…)
Los valores se construyen mediante una regla aproximada.
Distinguir ambos procesos es esencial al validar: una curva exacta muestreada puede servir como referencia para medir el error del integrador.
05 · Información para avanzar
La derivada describe el cambio local, no el paso completo
En el nodo (tn,yn), la ecuación proporciona
que tiene unidades de estado dividido por tiempo. Multiplicar por un paso produce una estimación de cambio con las unidades correctas:
Sin embargo, la pendiente puede variar dentro del intervalo. Los métodos numéricos se diferencian por cómo representan esa variación: una pendiente al inicio, una pendiente corregida, varias evaluaciones ponderadas o aproximaciones implícitas.
El próximo tema derivará el método de Euler, la regla más directa basada en la pendiente inicial.
06 · Resolución temporal
Elegir h es una decisión de precisión, costo y estabilidad
Reducir h aumenta la cantidad de pasos y suele disminuir el error de truncamiento, pero exige más evaluaciones y más almacenamiento si se guardan todos los nodos.
| Paso | Ventaja | Riesgo o costo |
|---|---|---|
| Grande | Pocas evaluaciones y ejecución rápida. | Puede perder escalas rápidas, eventos o incluso volverse inestable. |
| Pequeño | Mejor resolución y, normalmente, menor error de truncamiento. | Mayor costo y acumulación de redondeo. |
| Adaptativo | Concentra trabajo donde la solución cambia más. | Requiere estimación de error y lógica adicional. |
La escala visible del gráfico no basta para elegir h. Un estado puede parecer suave mientras contiene componentes rápidas o restricciones de estabilidad.
07 · Una interfaz general
Separar modelo, método y recorrido temporal
Una simulación de un paso puede representarse abstractamente como
La función f describe el modelo. La regla Φ describe el método numérico. El bucle decide los tiempos, llama al método y almacena resultados.
Esta separación permite cambiar Euler por Runge–Kutta sin reescribir el modelo, o reutilizar el mismo integrador con crecimiento, osciladores y sistemas epidemiológicos.
08 · El ciclo de simulación
Inicializar, registrar, avanzar y detener
- Validar la entrada.
Comprobar tiempos, paso, estado, parámetros y dimensión.
- Inicializar.
Asignar
t=t₀, copiary=y₀y registrar la primera muestra. - Elegir hn.
Usar el paso nominal o acortarlo para no superar el final o un evento.
- Calcular el nuevo estado.
Llamar a la regla de un paso sin modificar prematuramente el estado viejo.
- Actualizar y registrar.
Avanzar el tiempo, guardar una copia del estado y calcular diagnósticos.
- Comprobar parada.
Finalizar por tiempo, evento, error, límite de pasos o estado inválido.
Siempre debe existir un límite máximo de iteraciones. Protege contra pasos inválidos, condiciones de parada imposibles y errores de redondeo que impidan alcanzar exactamente tf.
09 · Saber qué se está midiendo
Modelo, discretización y redondeo son fuentes distintas
| Fuente | Descripción | Diagnóstico |
|---|---|---|
| Modelado | La ecuación simplifica o representa mal el fenómeno. | Comparar con datos y revisar supuestos. |
| Datos y parámetros | Valores iniciales o parámetros inciertos. | Análisis de sensibilidad e incertidumbre. |
| Discretización | La regla por pasos aproxima la evolución continua. | Refinar h y comparar con referencias. |
| Redondeo | Los números se representan con precisión finita. | Escalas, condicionamiento y precisión numérica. |
| Implementación | Índices, signos, mutabilidad o parada incorrectos. | Pruebas unitarias e invariantes. |
Una simulación con paso muy pequeño puede ser precisa respecto de una ecuación equivocada. La validación numérica y la validación del modelo responden preguntas diferentes.
10 · Exploración interactiva
Laboratorio: muestrear una solución continua
La curva exacta es y(t)=e−λt. Modificá λ, el paso nominal y el final. Los puntos no son todavía una aproximación: son evaluaciones exactas sobre la malla construida.
De la curva a la malla
y′=−0,70y · y(0)=1 · h=0,50 · tf=5,00
El intervalo es divisible por h: todos los pasos tienen la misma longitud.
El panel superior compara la curva continua con sus muestras. El inferior representa los intervalos temporales y resalta el último paso.
Preguntas para explorar
- Reducí
h. ¿Qué cambia en la curva exacta y qué cambia en la representación discreta? - Elegí
h=0,6ytf=5. ¿Cuánto mide el último paso? - Aumentá
λconservandoh. ¿La malla resuelve igual de bien la zona de cambio rápido? - Comprobá la relación entre cantidad de pasos y cantidad de muestras.
11 · Representación en código
Construir una base segura para los integradores
Generar una malla con extremo exacto
function crearMalla(t0, tf, h) {
if (![t0, tf, h].every(Number.isFinite) || !(tf >= t0) || !(h > 0)) {
throw new RangeError("Intervalo o paso inválido");
}
const tiempos = [t0];
const maxPasos = Math.ceil((tf - t0) / h) + 1;
for (let n = 0; n < maxPasos && tiempos.at(-1) < tf; n++) {
const siguiente = Math.min(t0 + (n + 1) * h, tf);
tiempos.push(siguiente);
}
return tiempos;
}
console.log(crearMalla(0, 5, 0.6));Crear muestras exactas con estructura explícita
function crearMalla(t0, tf, h) {
const tiempos = [t0];
while (tiempos.at(-1) < tf) {
tiempos.push(Math.min(tiempos.at(-1) + h, tf));
}
return tiempos;
}
const exacta = t => Math.exp(-0.7 * t);
const muestras = crearMalla(0, 5, 0.6).map((t, indice) => ({
indice,
t,
y: exacta(t)
}));
for (const muestra of muestras) {
console.log(muestra);
}Separar el bucle de la regla de avance
function simular({ modelo, avanzar, t0, tf, estado0, h }) {
let t = t0;
let estado = structuredClone(estado0);
const trayectoria = [{ t, estado: structuredClone(estado) }];
const maxPasos = Math.ceil((tf - t0) / h) + 1;
for (let n = 0; n < maxPasos && t < tf; n++) {
const pasoActual = Math.min(h, tf - t);
estado = avanzar(modelo, t, estado, pasoActual);
t = Math.min(tf, t + pasoActual);
trayectoria.push({ t, estado: structuredClone(estado) });
}
return trayectoria;
}
const modelo = (t, y) => -0.7 * y;
const avanceExacto = (f, t, y, h) => y * Math.exp(-0.7 * h);
console.log(simular({ modelo, avanzar: avanceExacto, t0: 0, tf: 2, estado0: 1, h: 0.6 }));12 · Comprensión
Confusiones frecuentes
«N pasos producen N muestras»
Si se incluye el estado inicial, N intervalos producen N+1 muestras.
«Discretizar significa redondear los valores de y»
Se eligen instantes discretos; los estados pueden conservar precisión de punto flotante.
«Una malla fina garantiza un modelo correcto»
Solo reduce ciertos errores numéricos. No corrige supuestos ni parámetros inadecuados.
«El último tiempo siempre es t₀+Nh con el h solicitado»
Si el intervalo no es divisible, hay que ajustar el paso o aceptar otro extremo.
«Los puntos exactos muestreados son una solución numérica aproximada»
Son valores exactos evaluados en una malla; el error aparece al construirlos con una regla aproximada.
«Cuanto menor sea h, menor será cualquier error»
El truncamiento suele bajar, pero costo y efectos de redondeo aumentan; además puede persistir error de modelado.
13 · Práctica guiada
Ejercicios de comprensión
Ejercicio 1: construir una malla
Listá los nodos desde t₀=1 hasta tf=3 con h=0,5.
Ver solución
1; 1,5; 2; 2,5; 3. Hay cuatro pasos y cinco muestras.
Ejercicio 2: índice y tiempo
En una malla con t₀=2 y h=0,25, calculá t₇.
Ver solución
t₇=t₀+7h=2+7·0,25=3,75.
Ejercicio 3: contar pasos
¿Cuántos pasos uniformes hay entre 0 y 12 con h=0,2?
Ver solución
N=(12−0)/0,2=60 pasos y 61 nodos.
Ejercicio 4: extremo no divisible
Desde 0 hasta 2 con h=0,3, calculá la longitud del último paso si debe alcanzarse exactamente 2.
Ver solución razonada
Seis pasos regulares llegan a 1,8. El último mide 2−1,8=0,2.
Ejercicio 5: unidades
Si y se mide en metros, t en segundos y f=y′, ¿qué unidades tienen f y hf?
Ver solución
f se mide en m/s. Como h se mide en s, hf se mide en m y puede sumarse al estado.
Ejercicio 6: distinguir errores
Una simulación converge al reducir h, pero no coincide con los datos observados. ¿Qué debería investigarse?
Ver solución razonada
La convergencia sugiere que el error de discretización está controlado. Deben revisarse el modelo, sus supuestos, parámetros, datos iniciales y error de medición.
14 · Síntesis
Ideas para recordar
- Una simulación representa una solución continua mediante una secuencia finita de estados.
- En una malla uniforme,
tn=t₀+nh. Npasos producenN+1muestras si se incluye el estado inicial.- El último paso puede acortarse para alcanzar exactamente el tiempo final.
- Muestrear una solución exacta no es lo mismo que integrarla aproximadamente.
- El tamaño de paso controla resolución, costo y estabilidad.
- Modelo, regla de avance y bucle temporal deben mantenerse separados.
- Una simulación necesita validación, límites de iteraciones y criterios de parada.
- Error de modelado, discretización, redondeo e implementación son problemas diferentes.
En el próximo tema derivaremos e implementaremos la primera regla de avance: el método de Euler.