Dear list, IMHO, Sage may use an implementation of Padé approximants (similar t its implementation of Taylor series), if only for numerical use reasons. Currently, this can be done:
- by wrapping the Maxima functions taylor and pade (Maxima's pade needs a Maxima taylor development object, which does not cleanly translate to Sage); - by using the PowerSeriesRing.pade method. Some trials have shown that the latter method, as advertised in its documentation, is indeed unsuitable even for moderately large degrees of the numerator and denominator: the expression thus obtained are extremely unwieldy large and are slow to evaluate numerically. In contrast, the algorithm used by Maxima, gives easily usable results (even if they can be enhanced by expansion and possibly factorization and/or simplification). But using it worsens our dependence on Maxima. Hence, a couple of questions: *Algorithms:* Do you have pointers to better algorithms for Padé approximants computation (especially for the multivariate case ? (These might also be helpful in the implementation of PowerSeriesRing.pade ...) *User interface:* We can follow our current taylor() convention, which is a bit of a straightjacket in the multivariate case,imposing the same degree for all the developments wrt the different variables. We can also allow so specify different degrees for the development wrt the different variables (this can make sense for very asymetric functions). Suggestions ? *Multivariate case:* An elementary implementation (see (Huard and Guillaume, 2000) <https://www.sciencedirect.com/science/article/pii/S037704270000337X> for example) is to iteratively create a Padé approximant for the successive variables. i. e. if p(f, x) denotes the Pade approximant wrt the variable x, you end up computing (p(p(p(f,x),y),z) (the implementation is trivial). The paper I quoted hints that there are better solutions, but is a bit above my pay grade (my initial formation is in dentistry and surgery...). Do you have suggestions on this point ? More generally, any comments are welcome ! -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/sage-devel/469ec8fe-06a7-40d3-975c-7c71f787a411%40googlegroups.com.