假设我有一组标准正交基函数,表示为Python callables
class Basis(object):
def __init__(self,i,j):
self.i=i
self.j=j
def __call__(self,x,y):
return f(self.i,self.j,x,y)
我想将这些存储在numpy.array中,以便basis_functions[i,j]=Basis(i,j)
我也希望数组可以调用,以便basis_functions(x,y)
为范围内的所有basis_functions[i,j](x,y)
返回包含i,j
的数组。
我已经看过关于子类化ndarray的文档,但是没有发现它特别有帮助。任何人都可以给我任何指示,从哪里开始?
附录
我希望使用类似这样的东西
class SytheticFunction(object):
basis=callable_array([[Basis(i,j) for j in xrange(COLUMNS)]
for i in xrange(ROWS)])
def __init__(self,weights):
self.weights=weights
def __call__(self,x,y):
return (self.weights*SyntheticFunction.basis(x,y)).sum()