El proyecto chebfun es una colección de algoritmos, y un sistema software basado en Matlab orientado a objetos, iniciado por Nick Trefethen y Zachary Battles en 2002, que extiende la potencia de los métodos numéricos al tratamiento «casi» simbólico de funciones continuas y continuas a trozos. Incluye algoritmos continuos para algoritmos como la descomposición QR o la SVD. Todo se basa en métodos espectrales o desarrollos de Fourier-Chebyshev. Es espectacular.
Algunos ejemplos:
>> x = chebfun(‘x’,[0 10]); sum(exp(-sqrt(x)))
ans = 1.647628069579947
¿Cuál es el máximo local de la función sin(x)+sin(x2) en el mismo intervalo?
>> max(sin(x)+sin(x.^2))
ans = 1.985446580874099
¿Cuántas raíces tiene la función de Bessel J0(x) entre 0 y 1000?
>> length(roots(chebfun(@(x) besselj(0,x),[0 1000])))
ans = 318