Mfasi

Joined 28 February 2014
727 bytes added ,  10 March 2014
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 implement such functions, using known algorithms for matrix functions. In particular, I would like to start implementing the Schur-Parlett recurrence that should be easy to do using the syl() function, that is known to be O(n^4), and then implementing better - specific - algorithms for the other two functions. For the matrix logarithm I do not know wether there is something better than the scaling and squaring method devised by Higham in ''Functions of Matrices: Theory and Computation'', while 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 has a lower asymptotical complexity (but seems rather involved, so I cannot say anything about the real performances).
I would like to implement such functions, using known algorithms for matrix functions computation. In particular, I would like to start implementing the Schur-Parlett recurrence, that should be an easy task as syl () is already implemented, and then proceed implementing better - specific - algorithms for other functions. In particular, I think that the following list (ordered by relevance) should be respected:
* funm
* logm
* signm
* sqrtm
* rootm
* sinm
* cosm
Some other simpler functions should be required and implemented, possibly in C++ for performance's sake. For the matrix logarithm I do not know wether there is something better than the scaling and squaring method devised by Higham in ''Functions of Matrices: Theory and Computation'', while 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 has a lower asymptotical complexity (but seems rather involved, so I cannot say anything about the real performances).


==== Tentative timeline ====
*'''30 April''': Clear picture of the library structure that will be implemented
*'''19 May''': Implementation of the auxiliary functions (at least the toughest ones)
*'''23 June''': Implementation of '''funm''' and '''signm'''
*'''31 July''': Implementation of the remaining functions, using all the subroutines developed in the previous two periods
*'''7 August''': Testing, implementation of eventual optimizations left behind
*'''18 August''':


* [TODO] Please provide a rough estimated timeline for your work on the task. ''This should include the GSoC midterms and personal commitments like exams or vacation ("non-coding time"). Optionally include two or three milestones you expect.''
* [TODO] Please provide a rough estimated timeline for your work on the task. ''This should include the GSoC midterms and personal commitments like exams or vacation ("non-coding time"). Optionally include two or three milestones you expect.''
[[Category: Summer of Code]]
[[Category: Summer of Code]]
102

edits