Funciones de interpolación spline

SMath dispone de tres funciones de interpolación spline:

  • linterp('X-vector','Y-vector','x') devuelve el valor interpolado linealmente en x para los vectores de datos X-vector e Y-vector, que deben tener el mismo tamaño.
  • cinterp('X-vector','Y-vector','x') devuelve el valor interpolado con spline cúbico en x para los vectores de datos X-vector e Y-vector, que deben tener el mismo tamaño.
  • ainterp('X-vector','Y-vector','x') devuelve el valor interpolado con spline de Akima en x para los vectores de datos X-vector e Y-vector, que deben tener el mismo tamaño.

Este es un ejemplo de estas funciones:

Ejemplo de interpolación spline

Observe lo engañosas que resultan todas estas funciones fuera del rango de los puntos de datos originales, es decir, por debajo de x=1 y por encima de x=5. Úselas solo para interpolar, no para extrapolar.

El vector X puede estar ordenado de forma ascendente:

Vector X en orden ascendente

El vector X también puede quedar sin ordenar. Como el uso principal de la interpolación es estimar un valor y para un valor x que no está en la tabla, esto no es recomendable:

Vector X sin ordenar

Esta página se basa en un artículo de la antigua wiki, escrito por Greg Locock.