Summer of Code - Getting Started: Difference between revisions

Jump to navigation Jump to search
→‎Chebfun in Octave: update chebfun
(→‎Summary table: looking for comentor)
(→‎Chebfun in Octave: update chebfun)
Line 186: Line 186:
=== Chebfun in Octave ===
=== Chebfun in Octave ===


[https://chebfun.org Chebfun] is a mathematics and software project for "numerical computing with functions".  Basically it approximates functions to machine precision ($10^-15$) using Chebyshev polynomial interpolants.  Operations on those functions (arithmetic, derivatives, root-finding, etc) are then overloaded and return new interpolating polynomials.
[https://chebfun.org Chebfun] is a mathematics and software project for "numerical computing with functions".  Basically it approximates functions to machine precision accuracy (10<sup>-15</sup>) using piecewise Chebyshev polynomial interpolants.  Operations on those functions (arithmetic, derivatives, root-finding, etc) are then overloaded and return new interpolating polynomials, which are themselves proxies for the actual solution.


Chebfun makes extensive use of classdef classes, and is one of the largest Free Software projects to do so.  Unfortunately it currently only works in Matlab.  This project seeks to (1) improve Octave's classdef support and (2) tweak Chebfun to work under Octave, for example, removing undocumented classdef features.  The final goal is to have at least basic Chebfun features working on Octave.
Chebfun makes extensive use of classdef classes, and is one of the largest Free Software projects to do so.  Unfortunately it currently only works in Matlab.  This project seeks to (1) improve Octave's classdef support and (2) tweak Chebfun to work under Octave, for example, removing undocumented classdef features.  The final goal is to have at least basic Chebfun features working on Octave.  An additional goal would be making "pkg install chebfun.zip" work in Octave.


This project is important for both technical reasons (to improve Octave's classdef support) and ethical reasons (to allow Chebfun to run without proprietary software).
This project is important for both technical reasons (to improve Octave's classdef support) and ethical reasons (to allow Chebfun to run without proprietary software).
Line 197: Line 197:
: Medium to Hard (probably requires a deep dive into how Octave supports OO).
: Medium to Hard (probably requires a deep dive into how Octave supports OO).
* '''Potential mentors'''
* '''Potential mentors'''
: Colin B. Macdonald, Mike Miller (?), Carnë Draug (?), someone from Chebfun team (?).
: Colin B. Macdonald, Marco Caliari, Mike Miller (?), Carnë Draug (?), someone from Chebfun team (?).


How to get started: learn about Chebfun, browse Octave's bug list for classdef-related bugs, play with other classdef projects (Pytave, https://github.com/cbm755/octsympy/issues/545)
How to get started: learn about Chebfun, browse Octave's bug list for classdef-related bugs, play with other classdef projects (Pytave, https://github.com/cbm755/octsympy/issues/545)
99

edits

Navigation menu