• Register

Zakaj scipy.misc.derivative vrne pri enakih argumentih različno vrednost?

+8 votes
59 views

Koda:

from scipy.misc import derivative
def func(t):
    return a*t**2 + b*t**2 + c*t
tocke=np.linspace(0,t_2,n+1)
a = derivative(func=func, x0=tocke, n=1)
m = derivative(func=func, x0=tocke, n=1)
m == a

Vrne:

array([ True, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False])

 

asked Dec 11, 2018 by mbkoncar (250 points)

1 Answer

+2 votes
 
Best answer

V definiciji func ste uporabili globalno spremenljivko a, pri prvem klicu a = derivative(...) pa ste vrednost a spremenili. Ko se požene m = derivative(...) ima "podatek" a drugačno vrednost kot ob prvem klicu, rezultat klica func je drugačen.

answered Dec 12, 2018 by dgorjup (61,050 points)
selected Dec 12, 2018 by janko.slavic
...