[SciPy-user] vectorizing a function inside a class
Matthieu Brucher
matthieu.brucher at gmail.com
Tue Sep 4 04:43:36 EDT 2007
Hi,
Vectorize() vectorizes a function that takes one argument (or more)
arguments that are the values to be used. Then the vectorized function will
take the same number of arguments, this time it will be arrays.
For what you want to do, vectorize can't help you, it can't know that what
it has to do is to put the argument in self.x instead of passing the
argument.
Matthieu
2007/9/4, morovia morovia <jallikattu at googlemail.com>:
>
>
> Hello all,
>
> I am trying to vectorize a function which resides in the class.
> Can any one help me out ? I have appended the test code below.
>
> from scipy import vectorize
>
> ************************************************
> def square(x):
> return x.x
>
> v_sq = vectorize(square)
>
> result = v_sq(x)
>
> ************************************************
> Just new to class !!
>
> I just want to mimic the above function,
> which works. But, inside the class structure,
> it does not !
>
> from scipy import vectorize
>
> class a:
> def __init__(self,x):
> self.x = x
> def square(self):
> return self.x*self.x
> def v_sq(self):
> vect_sq = vectorize(square)
> return vect_sq(self)
>
> x = [1,2,3]
> fn = a(x)
> fn.v_sq()
>
>
> Thanks in advance,
> Morovia.
>
> _______________________________________________
> SciPy-user mailing list
> SciPy-user at scipy.org
> http://projects.scipy.org/mailman/listinfo/scipy-user
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.scipy.org/pipermail/scipy-user/attachments/20070904/0ecdfe80/attachment.html>
More information about the SciPy-User
mailing list