Editing User:Antonio Pino
Jump to navigation
Jump to search
The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then publish the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 79: | Line 79: | ||
The project I intend to do is [http://wiki.octave.org/Summer_of_Code_Project_Ideas#Improve_logm.2C_sqrtm.2C_funm Improve logm, sqrtm, funm]; its aim is to improve the existing implementations of [https://en.wikipedia.org/wiki/Matrix_function Matrix Functions] in Octave based on the algorithms developed by [http://www.maths.manchester.ac.uk/~higham/NAMF/#People a team lead by Prof. Higham] (project entitled Numerical Analysis of Matrix Functions, NAMF) at the University of Manchester. At this point in time, in Octave there are the following: [http://hg.savannah.gnu.org/hgweb/octave/file/9a8be23d2c05/scripts/linear-algebra/expm.m expm] makes use of Padé approximant, [http://hg.savannah.gnu.org/hgweb/octave/file/9a8be23d2c05/scripts/linear-algebra/logm.m logm] uses a Schur-Parlett algorithm, and [http://hg.savannah.gnu.org/hgweb/octave/file/9a8be23d2c05/libinterp/corefcn/sqrtm.cc sqrtm] using a variant of the algorithm in A New sqrtm for MATLAB[1]. On the other hand, in Octave-Forge there are [http://sourceforge.net/p/octave/linear-algebra/ci/default/tree/inst/funm.m funm] and [http://sourceforge.net/p/octave/linear-algebra/ci/default/tree/inst/thfm.m trigonometric and hyperbolic matrix functions]. For a general survey-introduction to matrix functions (or matrix computation in general) refer to Golub & Van Loan[2]. | The project I intend to do is [http://wiki.octave.org/Summer_of_Code_Project_Ideas#Improve_logm.2C_sqrtm.2C_funm Improve logm, sqrtm, funm]; its aim is to improve the existing implementations of [https://en.wikipedia.org/wiki/Matrix_function Matrix Functions] in Octave based on the algorithms developed by [http://www.maths.manchester.ac.uk/~higham/NAMF/#People a team lead by Prof. Higham] (project entitled Numerical Analysis of Matrix Functions, NAMF) at the University of Manchester. At this point in time, in Octave there are the following: [http://hg.savannah.gnu.org/hgweb/octave/file/9a8be23d2c05/scripts/linear-algebra/expm.m expm] makes use of Padé approximant, [http://hg.savannah.gnu.org/hgweb/octave/file/9a8be23d2c05/scripts/linear-algebra/logm.m logm] uses a Schur-Parlett algorithm, and [http://hg.savannah.gnu.org/hgweb/octave/file/9a8be23d2c05/libinterp/corefcn/sqrtm.cc sqrtm] using a variant of the algorithm in A New sqrtm for MATLAB[1]. On the other hand, in Octave-Forge there are [http://sourceforge.net/p/octave/linear-algebra/ci/default/tree/inst/funm.m funm] and [http://sourceforge.net/p/octave/linear-algebra/ci/default/tree/inst/thfm.m trigonometric and hyperbolic matrix functions]. For a general survey-introduction to matrix functions (or matrix computation in general) refer to Golub & Van Loan[2]. | ||
I believe this is of interest to | I believe this is of interest to Gnu Octave first, due to the goal of overall MATLAB compatibility and second, because more and more systems are being described by a matrix equation lately. | ||
Upon completion | Upon completion Gnu Octave should have a working funm based on the Schur-Parlett algorithms by Higham et al., that calls to specific matrix functions if these have an instance of their own: expm, logm, sqrtm etc. | ||
'''Update:''' | '''Update:''' | ||
Part of the work is already done by Prof. N.J. Higham and is available under a GPLv3+ license: [http://www.ma.man.ac.uk/~higham/mftoolbox/ The Matrix Function Toolbox][3] which is closely related to the book by the same author[4]. A [http://www.ma.man.ac.uk/~higham/mctoolbox toolbox for matrix computations][ | Part of the work is already done by Prof. N.J. Higham and is available under a GPLv3+ license: [http://www.ma.man.ac.uk/~higham/mftoolbox/ The Matrix Function Toolbox][3] which is closely related to the book by the same author[4]. A [http://www.ma.man.ac.uk/~higham/mctoolbox toolbox for matrix computations][4] (The Matrix Computation Toolbox) is also provided by the same author, under the same license. Finally, a funm function is provided in the page of the NAMF project under GPLv3+. One might suggest that there is still room for improvement; because as Marco Caliari noted the toolboxes are from 2008. A review of the literature needs to be done in order to use more recent algorithms when writing the new functions. | ||
'''TENTATIVE TIME LINE''' | |||
'''preceding weeks (community bonding''' | |||
first meeting | |||
start the blog | |||
set up the working environment | |||
create an hg repository with the toolboxes | |||
'''weeks 1-2''' | |||
The start should be soft for I am having the finals in this period. At this point the list of algorithms to be used must be completely defined; that is, a final review of the literature is to be done. | The start should be soft for I am having the finals in this period. At this point the list of algorithms to be used must be completely defined; that is, a final review of the literature is to be done. | ||
Work on the toolboxes starts here. | Work on the toolboxes starts here. | ||
'''weeks 3-4''' | |||
: | ''Milestone 0'': the toolboxes are working and packaged. | ||
'''weeks 4-7''' | '''weeks 4-7''' | ||
funm | funm | ||
''Milestone 1'': general purpose funm based on a Schur-Parlett algorithm | ''Milestone 1'': general purpose funm based on a Schur-Parlett algorithm) | ||
'''weeks 8-9''' | '''weeks 8-9''' | ||
expm | expm and logm | ||
'''weeks 10-11''' | '''weeks 10-11''' | ||
Line 163: | Line 134: | ||
Pencils down. Run tests on the Matrix Functions and write/review their documentation. | Pencils down. Run tests on the Matrix Functions and write/review their documentation. | ||
Line 216: | Line 183: | ||
[6] M. I. Smith (2003). [http://www.maths.manchester.ac.uk/~higham/narep/narep392.ps.gz A Schur Algorithm For Computing Matrix Pth Roots], SIAM J. MATRIX ANAL. APPL. 24, 4, 971-989. | [6] M. I. Smith (2003). [http://www.maths.manchester.ac.uk/~higham/narep/narep392.ps.gz A Schur Algorithm For Computing Matrix Pth Roots], SIAM J. MATRIX ANAL. APPL. 24, 4, 971-989. | ||
---- | |||
[ | This section is being reworked in a sandbox, [[User:Antonio_Pino:anotherwiki|the other wiki]]. Will add it here when done. Note that the previous is still going though changes. | ||
==Z: submitted proposal== | ==Z: submitted proposal== |