Chebfun is a collection of algorithms and an open-source software system in object-oriented MATLAB which extends familiar powerful methods of numerical computation involving numbers to continuous or piecewise-continuous functions. It also implements continuous analogues of linear algebra notions like the QR decomposition and the SVD, and solves ordinary differential equations. The mathematical basis of the system combines tools of Chebyshev expansions, fast Fourier transform, barycentric interpolation, recursive zerofinding, and automatic differentiation.
Current release: V4.2.2194
Here are three quick examples:
What's the integral of sin(sin(x)) from 0 to 10?
>> x = chebfun('x',[0 10]); sum(sin(sin(x)))
ans = 1.629603118459496
What's the maximum of sin(x)+sin(x2) over the same interval?
>> max(sin(x)+sin(x.^2))
ans = 1.985446580874100
What's the solution to u"-xu=1 with zero boundary conditions on [-20,20]?
>> L = chebop(@(x,u)diff(u,2)-x.*u,[-20,20],'dirichlet'); plot(L\1)
For much more extensive list of more in-depth examples, see http://www.chebfun.org/examples/ and http://www.chebfun.org/examples/new/
The current release is compatible with MATLAB 7.6 (2008a) and more recent versions.
Installation instructions:
1. Unzip the contents of the zip file to a directory. We suggest the name "chebfun" for this directory. Make sure to maintain the existing subdirectory structure of the zip package. (Please note: If you install into the "toolbox" subdirectory of the MATLAB program hierarchy, you will need to click the button "Update toolbox path cache" from the File/Preferences... dialog in MATLAB.)
2. In MATLAB, add the chebfun directory to your path. This can be done by selecting "File/Set Path..." from the main or Command window menus. We recommend that you select the "Save" button on this dialog so that chebfuns are on the path automatically in future MATLAB sessions. (Alternatively, you can put an "addpath" command in your startup.m file, as described in the MATLAB documentation.)
3. A restart of MATLAB may be needed if you want to access the user guides via the Help browser.
4. To check whether the system appears to be working, type "chebtest" at the command window prompt. If a problem is reported, please contact discuss@chebfun.org with the details (including output of the "ver" command and the file chebtest_report.txt).
5. Point your web browser to the guide/html directory of the Chebfun installation in order to read the user guides.
Please see the file LICENSE.txt for licensing information. For full documentation, guides, and examples, visit http://www.chebfun.org |