Hi!
Maybe I resolve it...:

def deriv(self, *args,**kwds): print args, kwds; return w(x)
f(x)=-x*x*x+1
w(x)=sin(x)/x
tc=3
def ef(self,x,parent=None):
    return numerical_integral(w,tc,x)[0]
g=function('g',nargs=1,evalf_func=ef,derivative_func=deriv)

In this way i can correctly compute for example the derivative of
f(integral(w)) as:
(diff(f(g(x)),x,1)
And the value assumed for example in 4
(diff(f(g(x)),x,1)(4).n())

and this works also for n-th-derivative.

I apologize if you waste time :-)
Thanks!
Andrea Gobbi


---------- Forwarded message ----------
From: Andrea Gobbi <andreamat...@gmail.com>
Date: 2011/1/26
Subject: Integral functions
To: sage-support <sage-support@googlegroups.com>


Hi!
I have a question...I'm working with integral functions:

var('t,x')
f(t)=t^2
F(x)=integral(f,t,0,x)

and obviously:

F(x).derivative() give x^2 as result.

Now the question is: can i have the same result if f doesn't admit a
primitive? I think that when sage "sees" integral(f,t,0,x), tries to
compute a primitive G and then assigns to F the difference between
G(x) and G(0). In this way when i try to calculate the derivative of
F, the result is f.
For example:

var('t,x')
f(t)=t^2
F(x)=integral(sin(t)/t,t,1,x,assume(x>1))

I look at the reference manual and I  find a section in which we can
force a funcion to have a rule for the derivation  (pag. 252)  but I
don't understand how to do this. Sorry for my awful english!
Thank you!
Best regards!
Andrea Gobbi



-- 
Andrea Gobbi

-- 
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to 
sage-support+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sage-support
URL: http://www.sagemath.org

Reply via email to