detect sqrt in expression?



Why are you using the internal function ?isinop -- it is in general a bad
idea to use internal Maxima functions unless you are familiar with the Lisp
code yourself.

As for listofops, it depends how exactly you ended up defining that....

           -s

On Wed, Nov 16, 2011 at 17:54, Edwin Woollett <woollett at charter.net> wrote:

> I need a way to detect the op sqrt in an expression.
>
> So far, neither ?isinop or listofops seems to work:
> ------------------------------**---------------
> Maxima 5.25.1 http://maxima.sourceforge.net
> using Lisp GNU Common Lisp (GCL) GCL 2.6.8 (a.k.a. GCL)
>
> (%i1) display2d:false$
>
> (%i2) ?isinop(a*bessel_j(0,x),**bessel_j);
>
> (%o2) bessel_j(0,x)
>
> (%i3) ?isinop(a*sqrt(x),sqrt);
>
> (%o3) false
>
> (%i4) ?isinop(sqrt(x^2),sqrt);
>
> (%o4) false
>
> (%i5) load(nint);
>
> (%o5) "c:/work2/nint.mac"
>
> (%i6) listofops(a*sqrt(x^2+y^2)/b);
>
> (%o6) {"*","+","^"}
>
> (%i7) listofops(a*bessel_j(0,x)/c);
>
> (%o7) {"*","^",bessel_j}
> ------------------------------**-------
>
> Ted Woollett
>
> ______________________________**_________________
> Maxima mailing list
> Maxima at math.utexas.edu
> http://www.math.utexas.edu/**mailman/listinfo/maxima<http://www.math.utexas.edu/mailman/listinfo/maxima>;
>