User:Antonio Pino: Difference between revisions
Jump to navigation
Jump to search
→Y: Your task
Line 71: | Line 71: | ||
== 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 octave based on the algorithms developed by [http://www.maths.manchester.ac.uk/~higham/NAMF/#People a team lead by Prof. Higham] 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]. | 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] 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]. | ||
Upon completion Octave should have a working funm based on the algoriths by Higham et al., that calls to specific matrix functions if these have an instance of their own: expm, logm, sqrtm etc. Thus, 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 after that start paying attention to the rest, picking logm first. | Upon completion Octave should have a working funm based on the algoriths by Higham et al., that calls to specific matrix functions if these have an instance of their own: expm, logm, sqrtm etc. Thus, 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 after that start paying attention to the rest, picking logm first. |