DFTFwd_CToC
DFTFwd_CToC
Computes the forward discrete Fourier transform of a complex
signal.
Syntax
Case 1: Operation on real data type
IppStatus ippsDFTFwd_CToC_32f(const Ipp32f*
pSrcRe
, const Ipp32f*
pSrcIm
, Ipp32f*
pDstRe
, Ipp32f*
pDstIm
, const IppsDFTSpec_C_32f*
pDFTSpec
, Ipp8u*
pBuffer
);
IppStatus ippsDFTFwd_CToC_64f(const Ipp64f*
pSrcRe
, const Ipp64f*
pSrcIm
, Ipp64f*
pDstRe
, Ipp64f*
pDstIm
, const IppsDFTSpec_C_64f*
pDFTSpec
, Ipp8u*
pBuffer
);
Case 2: Operation on complex data type
IppStatus ippsDFTFwd_CToC_32fc(const Ipp32fc*
pSrc
, Ipp32fc*
pDst
, const IppsDFTSpec_C_32fc*
pDFTSpec
, Ipp8u*
pBuffer
);
IppStatus ippsDFTFwd_CToC_64fc(const Ipp64fc*
pSrc
, Ipp64fc*
pDst
, const IppsDFTSpec_C_64fc*
pDFTSpec
, Ipp8u*
pBuffer
);
Include Files
ipps.h
Domain Dependencies
Flavors declared in
ipps.h
:Headers:
ippcore.h
,
ippvm.h
Libraries:
ippcore.lib
,
ippvm.lib
Parameters
- pDFTSpec
- Pointer to the DFT specification structure.
- pSrc
- Pointer to the input array containing complex values.
- pDst
- Pointer to the output array containing complex values.
- pSrcRe
- Pointer to the input array containing real parts of the signal.
- pSrcIm
- Pointer to the input array containing imaginary parts of the signal.
- pDstRe
- Pointer to the output array containing real parts of the signal.
- pDstIm
- Pointer to the output array containing imaginary parts of the signal.
- pBuffer
- Pointer to the work buffer.
Description
These functions
compute the forward DFT
according to the pDFTSpec
specification parameters: the transform len
, the normalization flag
, and the specific code hint
. The functions operating on the complex data type process the input complex
array
pSrc
and store the result
in pDst
.The functions operating on the real data type (processing complex signals
represented by separate real
pSrcRe
and imaginary pSrcIm
parts) store
the result separately in pDstRe
and
pDstIm
, respectively.The function can be used with the external work buffer
pBuffer
2) Data vectors for these functions
must be aligned to an appropriate number of bytes that is determined by the SIMD width that is
supported by the customer's platform - it is reccomended to use ippMalloc function for such
purpose as it guarantees such alignment. Required buffer size must be computed by the corresponding function
ippsDFTGet BufSize_C
prior to using DFT computation functions. If a null
pointer is passed, memory will be allocated by the DFT computation functions internally.Data vectors for these functions must be aligned to an appropriate number
of bytes that is determined by the SIMD width that is supported by the customer's platform -
use
ippMalloc
function for such alignment.The forward DFT functionality can be described as follows:

where
k
is the
index of elements in the frequency domain, n
is the index of elements in the time domain, N
is the input signal len
, and A
is a multiplier defined by flag
. Also, x(n)
is pSrc[n]
and X(k)
is pDst[k]
.Product and Performance Information
|
---|
Performance varies by use, configuration and other factors. Learn more at
www.Intel.com/PerformanceIndex.
Notice revision #20201201
|
Return Values
- ippStsNoErr
- Indicates no error.
- ippStsNullPtrErr
- Indicates an error when one of the specified pointers with exception ofpBufferisNULL.
- ippStsContextMatchErr
- Indicates an error when the specification identifierpDFTSpecis incorrect.
- ippStsMemAllocErr
- Indicates an error when no memory is allocated.
- ippStsFftFlagErr
- Indicates an error when theflagvalue is incorrect.