scikits.cuda.integrate.trapz

scikits.cuda.integrate.trapz(x_gpu, dx=1.0, handle=None)[source]

1D trapezoidal integration.

Parameters:

x_gpu : pycuda.gpuarray.GPUArray

Input array to integrate.

dx : scalar

Spacing.

handle : int

CUBLAS context. If no context is specified, the default handle from scikits.misc._global_cublas_handle is used.

Returns:

result : float

Definite integral as approximated by the trapezoidal rule.

Examples

>>> import pycuda.autoinit
>>> import pycuda.gpuarray
>>> import numpy as np
>>> import integrate
>>> integrate.init()
>>> x = np.asarray(np.random.rand(10), np.float32)
>>> x_gpu = gpuarray.to_gpu(x)
>>> z = integrate.trapz(x_gpu)
>>> np.allclose(np.trapz(x), z)
True