def _run_cupy(data: cupy.ndarray) -> cupy.ndarray: data = data.astype(cupy.float32) griddim, blockdim = cuda_args(data.shape) out = cupy.empty(data.shape, dtype='f4') out[:] = cupy.nan _run_gpu[griddim, blockdim](data, out) return out
def _run_cupy(data: cupy.ndarray, cellsize_x: Union[int, float], cellsize_y: Union[int, float]) -> cupy.ndarray: cellsize_x_arr = cupy.array([float(cellsize_x)], dtype='f4') cellsize_y_arr = cupy.array([float(cellsize_y)], dtype='f4') data = data.astype(cupy.float32) griddim, blockdim = cuda_args(data.shape) out = cupy.empty(data.shape, dtype='f4') out[:] = cupy.nan _run_gpu[griddim, blockdim](data, cellsize_x_arr, cellsize_y_arr, out) return out
def _run_cupy(data: cupy.ndarray, cellsize: Union[int, float]) -> cupy.ndarray: data = data.astype(cupy.float32) cellsize_arr = cupy.array([float(cellsize)], dtype='f4') # TODO: add padding griddim, blockdim = cuda_args(data.shape) out = cupy.empty(data.shape, dtype='f4') out[:] = cupy.nan _run_gpu[griddim, blockdim](data, cellsize_arr, out) return out
def KHK(self, KHK: cp.ndarray): self.__KHK = KHK.astype(cp.float64)
def solution(self, solution: cp.ndarray): self.__solution = solution.astype(cp.float64)