Looking through cd.c (bearing in mind I am still trying to get my head around
the source code), I noticed d. has missed a lot of low hanging fruit in the
form of
(f * g) d. _1
e.g from around line 337 of cd.c:
static F2(jtintgtymes){A f=a,g=w;
RZ(a&&w);
R A0;
} /* integral of a * w */
d. gives up for pretty much any case of f * g, when it should be possible to
evaluate a lot of expressions, e.g. polynomial * exponential and some trig *
exponential, and some trig * polynomial.
I know symbolic integration is a vipers nest and the complexity can explode,
but it should be possible to add more functionality to d.
I have done some playing around and implemented some functionality (poly *
exp), but still very messy and not worth showing yet. One issue is tidying up
the resulting expression. e.g. rebracketing and factoring out common
expressions.
Anyway, I wonder if it is worth adding more functionality to d.
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm