|
From: Robert D. <rob...@gm...> - 2017-08-27 22:12:01
|
On 2017-08-22, Richard Fateman <fa...@be...> wrote: > It might be easier for matching if the arguments were reversed, that is, > > reverse_arg_ilt(x,t, ....) , ....) > > because then x and t would be bound before trying to match the main > argument. I tried that approach in another project (share/z_transforms) but eventually settled on having a top-level rule which captures the variable names, and then applies a bunch of other rules for specific cases. It seems to me that this general approach could be applied to other integral transforms such as the ILT. There is the problem that the existing ILT code doesn't make use of it (instead implementing a similar method via hand-written Lisp code); if someone creates new rules for ILT via pattern-matching rules, we might try to unify them with the existing code, or we might just let the two code bases exist separately. On looking at the existing ILT code in src/laplac.lisp, I see that Maxima's ilt function handles only a few cases -- the only nontrivial one is a ratio of polynomials, if I'm not mistaken. Given that, it seems worth considering to reimplemnt the whole thing via pattern matching rules. Incidentally I would take the opportunity to press for renaming 'ilt' to something more self-explanatory such as 'inverse_laplace'. best Robert Dodier |