## #313 gradef for bessel functions

closed
nobody
None
5
2003-05-25
2003-05-12
No

Consider

(C1) display2d : false;
Evaluation took 0.00 seconds (0.00 elapsed)
(D1) FALSE
(C2) diff(bessel_j(x,x),x);
Evaluation took 0.00 seconds (0.00 elapsed)
(D2) 'DIFF(BESSEL_J[x](x),x,1)-BESSEL_J[x](x)
+BESSEL_J[x-1](x)

The derivative in the first term of (d2) is should
be with respect to the order of the bessel function --
instead it's a _total_ derivative. A good solution
isn't easy; in orthopoly, I handle this problem by
signaling an error. Thus (from orthopoly)

;; When a user requests the derivative of an a function in
this package
;; with respect to the order or some other parameter,
return a form
;; ((unk) input from user). We &quot;simplify&quot; this form by
printing an error.

(defprop unk simp-unk operators)

(defun simp-unk (x y z)
(declare (ignore y z))
(merror &quot;Maxima doesn't know the derivative of ~:M
with respect the ~:M argument&quot; (nth 2 x) (nth 1 x)))

(putprop '\$legendre_p
'((n x)
((unk) &quot;\$first&quot; &quot;\$legendre_p&quot;)
((mtimes)
((mplus)
((mtimes) n ((\$legendre_p) ((mplus) -1 n)
x))
((mtimes) -1 n ((\$legendre_p) n x) x))
((mexpt) ((mplus) 1 ((mtimes) -1 ((mexpt)
x 2))) -1)))

(C3) build_info();

Maxima version: 5.9.0
Maxima build date: 19:10 2/9/2003
host type: i686-pc-mingw32
lisp-implementation-type: Kyoto Common Lisp
lisp-implementation-version: GCL-2-5.0

Evaluation took 0.00 seconds (0.00 elapsed)
(D3)
(C4)

Barton

## Discussion

• Raymond Toy - 2003-05-25
• status: open --> closed

• Raymond Toy - 2003-05-25

Logged In: YES
user_id=28849

Derivative with respect to order added for Bessel J. It's a
bit messy.