diff --git a/matexp.h b/matexp.h index a8e4f9e..8a8f1a8 100644 --- a/matexp.h +++ b/matexp.h @@ -394,6 +394,7 @@ mat.gemv(0.,tmp,transpose?'t':'n',scale,si); si=tmp; } +//this recursion is very inefficient, it is better to use complex exptimes! template void sincostimes_aux(const M &mat, V &si, V &co, const V &rhs, const NRVec::normtype> &taylors, const NRVec::normtype> &taylorc, bool transpose, const S scale, int power) { @@ -411,6 +412,7 @@ else } +//inefficient, it is better to use complex exptimes! //again scale should actually be elementtype of M which is inaccessible template void sincostimes(const M &mat, V &si, V &co, const V &rhs, bool transpose=false, const typename LA_traits::normtype scale=1., int maxpower= -1, int maxtaylor= -1, bool mat_is_0=false) //uses just matrix vector multiplication