Пример #1
0
// 3D single-precission real-to-complex FFT plan.
func newFFT3DC2R(Nx, Ny, Nz int, stream cu.Stream) fft3DC2RPlan {
	handle := cufft.Plan3d(Nx, Ny, Nz, cufft.C2R)
	handle.SetCompatibilityMode(cufft.COMPATIBILITY_NATIVE)
	handle.SetStream(stream)
	return fft3DC2RPlan{fftplan{handle, 0}, size3D{Nx, Ny, Nz}}
}
Пример #2
0
// 3D single-precission real-to-complex FFT plan.
func FFT3DD2Z(Nx, Ny, Nz int) FFT3DD2ZPlan {
	handle := cufft.Plan3d(Nx, Ny, Nz, cufft.D2Z)
	handle.SetCompatibilityMode(cufft.COMPATIBILITY_NATIVE)
	return FFT3DD2ZPlan{fftplan{handle, 0}, size3D{Nx, Ny, Nz}}
}