107
edits
Antonio Pino (talk | contribs) |
Antonio Pino (talk | contribs) |
||
Line 16: | Line 16: | ||
<math>\dot{x}=A\cdot x</math>. | <math>\dot{x}=A\cdot x</math>. | ||
Needless to say, they tried to push Matlab to all the students, and I got by with Gnu | Needless to say, they tried to push Matlab to all the students, and I got by with Gnu Octave, for which I am thankful to the whole developer team. | ||
== C: Contact == | == C: Contact == | ||
Line 65: | Line 65: | ||
== P: Prerequisites == | == P: Prerequisites == | ||
I have access as root to two laptops running Debian Gnu | I have access as root to two laptops running Debian Gnu/Linux and Ubuntu, with a reasonably working internet connection during the whole day. | ||
== S: Self-assessment == | == S: Self-assessment == | ||
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] 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]. | ||
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 Octave should have a working funm based on the algorithms 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 then get to the rest, picking logm first. | 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. 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 then get to the rest, picking logm first. | ||
'''TENTATIVE TIMELINE''' | '''TENTATIVE TIMELINE''' | ||
Line 87: | Line 87: | ||
'''weeks 1-2''' | '''weeks 1-2''' | ||
The start should be soft for I am having the finals in this period. | 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. | ||
'''weeks 3-7''' | '''weeks 3-7''' |
edits