Example #1
0
 def allocate_space(self,x_peak,y_peak,k_max,order,type):
     # step=k_max/order
     # points=numpy.array([i*step for i in range(order)])
     # weights=numpy.array([step for i in range(order)])
     [points,weights]=calc.triangle_contour(x_peak,y_peak,k_max,order) # Generate weights.
     self.k_max=k_max
     size=self.size=len(points)
     host_k=(numpy.array([points[i%size] for i in range(size**2)])).astype(type) # Generate k-matrix.
     host_k_prim=(numpy.array([points[(int)(i/size)] for i in range(size**2)])).astype(type) # Generate k_prim-matrix.
     host_step=(numpy.array([weights[(int)(i/size)] for i in range(size**2)])).astype(type) # Generate step-matrix.
     self.gpu_k=cl_array.to_device(self.ctx,self.queue,host_k) # Flush k to gpu
     self.gpu_k_prim=cl_array.to_device(self.ctx,self.queue,host_k_prim) # Flush k_prim to gpu.
     self.gpu_step=cl_array.to_device(self.ctx,self.queue,host_step) # Flush steps to gpu.
     self.gpu_result=cl_array.empty(self.queue,(size**2,1,),type) # Allocate space for results.