107
edits
Antonio Pino (talk | contribs) (Add information about the mftoolbox) |
Antonio Pino (talk | contribs) (add more bibliography) |
||
Line 77: | Line 77: | ||
== Y: Your task == | == Y: Your task == | ||
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 | 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.{{ref label|1|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 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. | 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. | ||
Line 83: | Line 83: | ||
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. | 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. | ||
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][ | '''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][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+. | |||
<div class="toccolours mw-collapsible mw-collapsed" style="width:800px"> | <div class="toccolours mw-collapsible mw-collapsed" style="width:800px"> | ||
'''TENTATIVE TIMELINE'''(previous) | '''TENTATIVE TIMELINE'''(previous) | ||
<div class="mw-collapsible-content">''' | <div class="mw-collapsible-content">'''Introduction''' | ||
It appears to me that the natural task division for this project is to first improve and test funm (this shoud be ready by the mid-term), and then get to the rest, picking logm first. | It appears to me that the natural task division for this project is to first improve and test funm (this shoud be ready by the mid-term), and then get to the rest, picking logm first. | ||
'''weeks 1-2''' | '''weeks 1-2''' | ||
Line 118: | Line 119: | ||
:{{ref label|1|1}} N.J. Higham. A New sqrtm for MATLAB. Numerical Analysis Report No. 336, Manchester Centre for Computational Mathematics, Manchester, England, January 1999. | |||
[2] G.H. Golub and C.F. Van Loan. Matrix Computations, 4th Edition. The Johns Hopkins University Press, Baltimore, USA, 2013. | |||
[3] N. J. Higham. The Matrix Function Toolbox. http://www.ma.man.ac.uk/~higham/mftoolbox | |||
[4] Nicholas J. Higham, Functions of Matrices: Theory and Computation, Society for Industrial and Applied Mathematics, Philadelphia, USA, 2008. | |||
[5] N. J. Higham. The Matrix Computation Toolbox. http://www.ma.man.ac.uk/~higham/mctoolbox | |||
------- | ------- | ||
edits