---
title: vDSP_fft_zripD
framework: accelerate
role: symbol
role_heading: Function
path: accelerate/vdsp_fft_zripd
---

# vDSP_fft_zripD

Computes a forward or inverse in-place, double-precision real FFT.

## Declaration

```occ
extern void vDSP_fft_zripD(FFTSetupD __Setup, const DSPDoubleSplitComplex *__C, vDSP_Stride __IC, vDSP_Length __Log2N, FFTDirection __Direction);
```

## Parameters

- `__Setup`: The FFT setup structure for this transform. The setup’s structure Log2N must be greater than or equal to this function’s Log2N.
- `__C`: A pointer to the input-output data.
- `__IC`: The stride between the elements in C, set to 1 for best performance.
- `__Log2N`: The base 2 exponent of the number of elements to process. For example, to process 1024 elements, specify 10 for parameter Log2N.
- `__Direction`: A flag that specifies the transform direction. Pass doc://com.apple.documentation/documentation/kernel/1645049-anonymous/kfftdirection_forward to transform from the time domain to the frequency domain. Pass doc://com.apple.documentation/documentation/kernel/1645049-anonymous/kfftdirection_inverse to transform from the frequency domain to the time domain.

## Discussion

Discussion tip: To learn how the vDSP library scales and arranges the FFT output, see Understanding data packing for Fourier transforms.

## See Also

### In-Place FFT Functions

- [vDSP_fft_zrip](accelerate/vdsp_fft_zrip.md)
