Chebfun equivalent for differentiation matrices in Julia?

Is there yet a differentiation matrices calculating tool in some Julia package ? Something similar to https://github.com/chebfun/chebfun/blob/master/diffmat.m
I have tried searching in JuliaApproximation community but couldn’t find anything similar ! Would be glad to find anything similar here !

My understanding is that ApproxFun moved away from the Chebfun-style differentiation matrices, in which you take a function in the basis of Chebyshev polynomials and represent the derivative in the same basis. The problem is that this results in dense (mostly nonzero) differentiation matrices that don’t scale well to large problems.

Instead, they represent the function and its derivative in different bases (e.g. Chebyshev and ultraspherical polynomials, respectively), and this allows the resulting derivative matrix to be sparse (banded). See these operators and this paper.

(But there’s probably a way to get the Chebfun-style matrices if you dig deep enough in the package.)

6 Likes

Thanks @stevengj for the links ! I see now that ApproxFun has adopted banded matrices approach. Is there any difference really in the derivatives calculated using Chebfun styles vs ApproFun style ? (I mean there shouldn’t be , but who’s more accurate ?)

They should be almost exactly equivalent (for the same polynomial degrees).

I see ! I drifted towards chebstyle matrices thinking i should create package that calculates chebstyle differentiaion matrices, but ApproxFun.jl has already done a better job here ! :sweat_smile: