[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Axiom-developer] Patches
From: |
Waldek Hebisch |
Subject: |
Re: [Axiom-developer] Patches |
Date: |
Tue, 5 Jun 2007 12:06:53 +0200 (CEST) |
> Dear Tim, Waldek,
>
> Waldek Hebisch <address@hidden> writes:
>
> > I supect that original author did not know how to leave one partial
> > derivative unevaluated, while giving value of the second one (ATM this
> > is not clear for me either). If you know how to to this please go
> > on.
>
> below is a patch that has the behaviour as you described it, with the
> exception
> of polygamma, which now throws an error. If you prefer that polygamma also
> allows differentiation with respect to the first argument, the change is
> trivial. I don't have time to modify sttaylor right now.
>
I tried the patch and I see a problem. Namely, when one tries do
do something with unevaluated derivatives Axiom goes into infinite
recursion. For example:
integrate(D(besselK(a,x),a),a)
or
limit(D(besselK(a,x),a),a=1)
shows the problem.
Backtrace show repeated pattern of smpeval and notfound calls:
#3 ES-;okkernel {loc0=#<vector 0000000001ea99f0>,loc1=(((1 #<vector
0000000002d369f0> #) . #0=(0...} [ihs=576]
#4 FSPECF;symbolicGrad {loc0=#<vector 0000000001eacf00>,loc1=(((1 #<vector
0000000002dd3de0> #) . #0=(0...} [ihs=575]
#5 FS-;notfound {loc0=(#<compiled-function |FS-;smpeval!1|> . #<vector
0000000002d39f00>),loc1=(...} [ihs=574]
#6 FS-;smpeval {loc0=(1 #<vector 0000000002d9de70> (1 0 . 1)),loc1=(#<vector
0000000002e70f90>)...} [ihs=573]
#7 FS-;notfound {loc0=(#<compiled-function |FS-;smpeval!1|> . #<vector
0000000002de0300>),loc1=(...} [ihs=572]
#8 FS-;smpeval {loc0=(1 #<vector 0000000002e460c0> (1 0 . 1)),loc1=(#<vector
0000000002f13ed0>)...} [ihs=571]
.....
#538 FS-;notfound {loc0=(#<compiled-function |FS-;smpeval!1|> . #<vector
00000000021bc9c0>),loc1=(...} [ihs=41]
#539 newGoGet {g104406=((#<compiled-function |FS-;smpeval!2|> . #<vector
00000000021bc9f0>) (#...} [ihs=40]
#540 FS-;smpeval {loc0=(1 #<vector 00000000021bce40> (1 0 .
1)),loc1=(#<vector 0000000001ed8360>)...} [ihs=39]
#541 newGoGet {g104406=(((1 #<vector 00000000021bce40> #) . #0=(0 . 1))
(#<vector 0000000001ed...} [ihs=38]
#542 newGoGet {g104406=(((1 #<vector 00000000021bce40> #) . #0=(0 . 1))
#<vector 0000000001ed8...} [ihs=37]
#543 newGoGet {g104406=(#<vector 0000000001ea99f0> ((# . #0=(0 . 1)) (# .
#0#) (# . #0#)) (#<v...} [ihs=36]
#544 EFSTRUC;k2Elem {loc0=#<vector 0000000001edaf30>,loc1=(|a|),loc2=#<vector
000000000219b930>} [ihs=35]
#545 newGoGet {g104406=((#<compiled-function |EFSTRUC;smpElem!0|> . #<vector
000000000219b810>...} [ihs=34]
#546 EFSTRUC;smpElem {loc0=(1 #<vector 0000000001edaf30> (1 0 .
1)),loc1=(|a|),loc2=#<vector 00000000...} [ihs=33]
#547 EFSTRUC;realElem {loc0=((1 #<vector 0000000001edaf30> (1 . #0=(0 . 1)))
. #0#),loc1=(|a|),loc2=#<...} [ihs=32]
#548 newGoGet {g104406=(((1 #<vector 0000000001edaf30> #) . #0=(0 . 1)) |a|
(#<vector 00000000...} [ihs=31]
#549 FSINT;integrate;FSU;10 {loc0=((1 #<vector 0000000001edaf30> (1 . #0=(0 .
1))) . #0#),loc1=|a|,loc2=#<ve...} [ihs=30]
--
Waldek Hebisch
address@hidden