102
edits
Line 62: | Line 62: | ||
* The project I would like to work on is '''Improve logm, sqrtm, funm'''. | * The project I would like to work on is '''Improve logm, sqrtm, funm'''. | ||
I would like to | I would like to write such functions, using known algorithms for matrix functions. In particular, I would like to start implementing the Schur-Parlett recurrence, that should not be a hard task as syl () is already there, and then proceed implementing better - specific - algorithms for other relevant matrix functions. In particular, I think that the following list (ordered by relevance) should be respected: | ||
* funm | * funm | ||
* logm | * logm [just a check, see below] | ||
* signm | * signm | ||
* sqrtm | * sqrtm | ||
* rootm | * rootm | ||
* | * hyperbolic and trigonometric matrix functions | ||
Some other auxiliary functions should be required and implemented, possibly in C++ for performance's sake. It seems that something has already been done for the logm () function, see [http://octave.1599824.n4.nabble.com/GSoC2014-Looking-for-a-mentor-td4662648.html] and [http://octave.1599824.n4.nabble.com/logm-robustness-td2016796.html], while the implementation of funm () lacks of robustness as it uses a simple diagonalization scheme that should be avoided when dealing with general matrices. For the p-th root there is a [http://poisson.phc.unipi.it/~maxreen/bruno/pdf/B.%20Iannazzo%20and%20C.%20Manasse%20-%20A%20Schur%20logarithmic%20algorithm%20for%20fractional%20powers%20of%20matrices%20-%20SIMAX.pdf recent work] that seems promising but being rather involved could be tricky to implement in a robust way. | |||
Some other | |||
==== Tentative timeline ==== | ==== Tentative timeline ==== |
edits