PAL 1D Arrays: Complex Analysis and Accumulation
Magnitude measures, norms, dot products, multiply-accumulate operations, subset processing, correlation, means, and ring-buffer helpers for one-dimensional complex data.
|
|
|---|---|
KiratPal1DComplexAbsSquaredTo1DFloatSignature
T_INT KiratPal1DComplexAbsSquaredTo1DFloat( const T_COMPLEX* pcSource, T_FLOAT* pfDestination, T_INT iSize);Description
Calculates element-wise squares or complex squared magnitudes. Mathematical operation
\(y_i=|z_i|^2=(\Re z_i)^2+(\Im z_i)^2\). Supported implementations
|
|
KiratPal1DComplexAbsTo1DFloatSignature
T_INT KiratPal1DComplexAbsTo1DFloat( const T_COMPLEX* pcSource, T_FLOAT* pfDestination, T_INT iSize);Description
Calculates the element-wise absolute value/magnitude. Mathematical operation
\(y_i=|x_i|\) Supported implementations
|
|
KiratPalAbs1DComplexSignature
T_INT KiratPalAbs1DComplex(const T_COMPLEX* pcSource, T_FLOAT* pfDestination, T_INT iSize);Description
Calculates the element-wise absolute value/magnitude. Mathematical operation
\(y_i=|x_i|\) Supported implementations
|
|
KiratPalAbsApprox1DComplexSignature
void KiratPalAbsApprox1DComplex(const T_COMPLEX* pcSource, T_FLOAT* pfDestination, T_INT iSize);Description
Calculates a fast element-wise approximation of complex magnitude. Mathematical operation
\(y_i\approx|z_i|\) using the named PAL approximation. Supported implementations
|
|
KiratPalAbsSquared1DComplexSignature
T_INT KiratPalAbsSquared1DComplex(const T_COMPLEX* pcSource, T_FLOAT* pfDestination, T_INT iSize);Description
Calculates element-wise squares or complex squared magnitudes. Mathematical operation
\(y_i=|z_i|^2=(\Re z_i)^2+(\Im z_i)^2\). Supported implementations
|
|
KiratPalAdd1DComplexAbsSquaredto1DFloatSignature
T_INT KiratPalAdd1DComplexAbsSquaredto1DFloat( const T_COMPLEX* pcSource, T_FLOAT* pfDestination, T_INT iSize);Description
Adds scalar, vector, or array values element-wise; ToDest writes to a separate destination, while Acc accumulates into an existing destination. Mathematical operation
\(d_i\leftarrow d_i+(\Re z_i)^2+(\Im z_i)^2\). Supported implementations
|
|
KiratPalAddAbs1DComplexSignature
T_INT KiratPalAddAbs1DComplex(const T_COMPLEX* pcSource, T_FLOAT* pfDestination, T_INT iSize);Description
Adds scalar, vector, or array values element-wise; ToDest writes to a separate destination, while Acc accumulates into an existing destination. Mathematical operation
\(d_i\leftarrow d_i+\sqrt{(\Re z_i)^2+(\Im z_i)^2}\). Supported implementations
|
|
KiratPalAddAbsApprox1DComplexSignature
void KiratPalAddAbsApprox1DComplex( const T_COMPLEX* pcSource, T_FLOAT* pfDestination, T_INT iSize);Description
Adds scalar, vector, or array values element-wise; ToDest writes to a separate destination, while Acc accumulates into an existing destination. Mathematical operation
\(d_i\leftarrow d_i+\sqrt{(\Re z_i)^2+(\Im z_i)^2}\); the current generic `KiratPalComplexAbsApprox` path uses the ordinary square root. Supported implementations
|
|
KiratPalAddAbsSquared1DComplexSignature
T_INT KiratPalAddAbsSquared1DComplex( const T_COMPLEX* pcSource, T_FLOAT* pfDestination, T_INT iSize);Description
Adds scalar, vector, or array values element-wise; ToDest writes to a separate destination, while Acc accumulates into an existing destination. Mathematical operation
\(d_i\leftarrow d_i+(\Re z_i)^2+(\Im z_i)^2\). Supported implementations
|
|
KiratPalAddBiasedAbsApprox1DComplexSignature
void KiratPalAddBiasedAbsApprox1DComplex( const T_COMPLEX* pcSource, T_FLOAT* pfDestination, T_INT iSize);Description
Adds scalar, vector, or array values element-wise; ToDest writes to a separate destination, while Acc accumulates into an existing destination. Mathematical operation
\(d_i\leftarrow d_i+|\Re z_i|+|\Im z_i|\). Supported implementations
|
|
KiratPalAddSubset1DComplexAbsSquaredto1DFloatSignature
T_INT KiratPalAddSubset1DComplexAbsSquaredto1DFloat( const T_COMPLEX* pcSource, T_FLOAT* pfDestination, T_INT iSize, T_INT* piPoints);Description
Adds scalar, vector, or array values element-wise; ToDest writes to a separate destination, while Acc accumulates into an existing destination. Mathematical operation
\(d_i\leftarrow d_i+(\Re z_i)^2+(\Im z_i)^2\) for the selected source indices. Supported implementations
|
|
KiratPalAutoCorr1DComplexTo1DComplexSignature
T_INT KiratPalAutoCorr1DComplexTo1DComplex( const T_COMPLEX* pcSource, T_COMPLEX* pcDestination, T_INT iSourceSize, T_INT iDestinationSize);Description
Calculates the complex autocorrelation of a vector; depending on the parameter, normalization can be normal, biased, or unbiased. Mathematical operation
\(r[k]=\sum_n x[n]x^*[n-k]\) over the valid overlap used by the implementation. Supported implementations
|
|
KiratPalBiasedAbsApprox1DComplexSignature
void KiratPalBiasedAbsApprox1DComplex( const T_COMPLEX* pcSource, T_FLOAT* pfDestination, T_INT iSize);Description
Calculates a fast element-wise approximation of complex magnitude. Mathematical operation
\(y_i=|\Re z_i|+|\Im z_i|\). Supported implementations
|
|
KiratPalCheckDegenerated1DComplexSignature
T_BOOL KiratPalCheckDegenerated1DComplex(const T_COMPLEX* pcVector, T_INT iSize);Description
Checks whether all vector elements are numerically degenerate, i.e. close to zero. Mathematical operation
\(\text{degenerated}\iff \max_i|z_i|\le \varepsilon_{\mathrm{SYS}}\) according to the source threshold test. Supported implementations
|
|
KiratPalCopy1DConjComplexSignature
T_INT KiratPalCopy1DConjComplex(const T_COMPLEX* pcSource, T_COMPLEX* pcDestination, T_INT iSize);Description
Copies the specified data or subrange to the destination. Mathematical operation
\(y_i=x_i^*\). Supported implementations
|
|
KiratPalCopy1DConjComplexMirroredSignature
T_INT KiratPalCopy1DConjComplexMirrored( const T_COMPLEX* pcSource, T_COMPLEX* pcDestination, T_INT iSize);Description
Copies the specified data or subrange to the destination. Mathematical operation
\(y_i=x_{N-1-i}^*\) (mirrored order plus conjugation). Supported implementations
|
|
KiratPalCopy1DFloatRealAnd1DFloatImagTo1DComplexSignature
T_INT KiratPalCopy1DFloatRealAnd1DFloatImagTo1DComplex( const T_FLOAT* pfSourceReal, const T_FLOAT* pfSourceImag, T_COMPLEX* pcDestination, T_INT iSize);Description
Copies the specified data or subrange to the destination. Mathematical operation
\(z_i=r_i+jq_i\). Supported implementations
|
|
KiratPalCopy1DFloatTo1DComplexSignature
T_INT KiratPalCopy1DFloatTo1DComplex( const T_FLOAT* pfSource, T_COMPLEX* pcDestination, T_INT iSize);Description
Copies the specified data or subrange to the destination. Mathematical operation
\(z_i=x_i+j0\). Supported implementations
|
|
KiratPalCopySubset1DComplexSignature
T_INT KiratPalCopySubset1DComplex( const T_COMPLEX* pcSource, T_COMPLEX* pcDestination, T_INT iSize, T_INT* piPoints);Description
Copies the specified data or subrange to the destination. Mathematical operation
\(D_{\mathbf i}=S_{\mathbf i+\mathbf o}\) on the requested subset/ROI, with offsets and extents given by the function arguments. Supported implementations
|
|
KiratPalDotProd1DComplexWith1DComplexSignature
T_INT KiratPalDotProd1DComplexWith1DComplex( const T_COMPLEX* pcSource1, const T_COMPLEX* pcSource2, T_COMPLEX* pcDpResult, T_INT iSize);Description
Calculates the dot product of two vectors; complex variants use the complex multiplication convention specified by the function. Mathematical operation
\(s=\sum_i a_i b_i\) (no conjugation unless explicitly stated by the function name). Supported implementations
|
|
KiratPalDotProd1DComplexWith1DFloatSignature
T_INT KiratPalDotProd1DComplexWith1DFloat( const T_COMPLEX* pcSource1, const T_FLOAT* pfSource2, T_COMPLEX* pcDpResult, T_INT iSize);Description
Calculates the dot product of two vectors; complex variants use the complex multiplication convention specified by the function. Mathematical operation
\(s=\sum_i z_i x_i\). Supported implementations
|
|
KiratPalDownsample1DComplexSignature
T_INT KiratPalDownsample1DComplex( const T_COMPLEX* pcSource, T_COMPLEX* pcDestination, T_INT iSrcLen, T_INT iDstLen, T_INT iFactor, T_INT iPhase);Description
Downsamples a vector by retaining every R-th element. Mathematical operation
\(y_k=x_{kR}\) for integer downsampling factor \(R\). Supported implementations
|
|
KiratPalGetMean1DComplexSignature
T_COMPLEX KiratPalGetMean1DComplex(const T_COMPLEX* pcVector, T_INT iSize);Description
Calculates the arithmetic mean, optionally considering only non-zero values. Mathematical operation
\(\bar x=N^{-1}\sum_i x_i\). Supported implementations
|
|
KiratPalMult1DBiasedAbsApproxComplexWith1DComplexToDestSignature
T_INT KiratPalMult1DBiasedAbsApproxComplexWith1DComplexToDest( const T_COMPLEX* pcSource1, const T_COMPLEX* pcSource2, T_COMPLEX* pcDestination, T_INT iSize);Description
Multiplies scalar, vector, or array values element-wise; Acc variants add the product to the destination. Mathematical operation
\(d_i=a(z_i)\,w_i\), where \(a(z)=|\Re z|+|\Im z|\). Supported implementations
|
|
KiratPalMultAcc1DComplexWith1DComplexSignature
T_INT KiratPalMultAcc1DComplexWith1DComplex( const T_COMPLEX* pcSource1, const T_COMPLEX* pcSource2, T_COMPLEX* pcDestination, T_INT iSize);Description
Multiplies scalar, vector, or array values element-wise; Acc variants add the product to the destination. Mathematical operation
\(d_i\leftarrow d_i+a_ib_i\) (subset variants only over the selected range). Supported implementations
|
|
KiratPalMultAcc1DComplexWith1DComplexConjugateSignature
T_INT KiratPalMultAcc1DComplexWith1DComplexConjugate( const T_COMPLEX* pcSource1, const T_COMPLEX* pcSource2, T_COMPLEX* pcDestination, T_INT iSize);Description
Multiplies scalar, vector, or array values element-wise; Acc variants add the product to the destination. Mathematical operation
\(d_i\leftarrow d_i+a_ib_i^*\) (subset variants only over the selected range). Supported implementations
|
|
KiratPalMultAcc1DComplexWith1DComplexScaleSignature
T_INT KiratPalMultAcc1DComplexWith1DComplexScale( const T_COMPLEX* pcSource1, const T_COMPLEX* pcSource2, T_FLOAT fScale, T_COMPLEX* pcDestination, T_INT iSize);Description
Multiplies scalar, vector, or array values element-wise; Acc variants add the product to the destination. Mathematical operation
\(d_i\leftarrow d_i+c\,a_ib_i\) (subset variants only over the selected range). Supported implementations
|
|
KiratPalMultAcc1DComplexWith1DComplexScaleFastSignature
T_INT KiratPalMultAcc1DComplexWith1DComplexScaleFast( const T_COMPLEX* pcSource1, const T_COMPLEX* pcSource2, T_FLOAT fScale, T_COMPLEX* pcDestination, T_COMPLEX* pcHelpVec, T_INT iSize);Description
Multiplies scalar, vector, or array values element-wise; Acc variants add the product to the destination. Mathematical operation
\(d_i\leftarrow d_i+c\,a_ib_i\) (subset variants only over the selected range). Supported implementations
|
|
KiratPalMultAcc1DComplexWith1DFloatSignature
T_INT KiratPalMultAcc1DComplexWith1DFloat( const T_COMPLEX* pcSource1, const T_FLOAT* pfSource2, T_COMPLEX* pcDestination, T_INT iSize);Description
Multiplies scalar, vector, or array values element-wise; Acc variants add the product to the destination. Mathematical operation
\(d_i\leftarrow d_i+a_ib_i\) (subset variants only over the selected range). Supported implementations
|
|
KiratPalMultAcc1DComplexWithFloatSignature
T_INT KiratPalMultAcc1DComplexWithFloat( const T_COMPLEX* pcSource, T_FLOAT fScale, T_COMPLEX* pcDestination, T_INT iSize);Description
Multiplies scalar, vector, or array values element-wise; Acc variants add the product to the destination. Mathematical operation
\(d_i\leftarrow d_i+a_ib_i\) (subset variants only over the selected range). Supported implementations
|
|
KiratPalMultAccSubset1DComplexWith1DComplexSignature
T_INT KiratPalMultAccSubset1DComplexWith1DComplex( const T_COMPLEX* pcSource1, const T_COMPLEX* pcSource2, T_COMPLEX* pcDestination, T_INT iSize, T_INT* piPoints);Description
Multiplies scalar, vector, or array values element-wise; Acc variants add the product to the destination. Mathematical operation
\(d_i\leftarrow d_i+a_ib_i\) (subset variants only over the selected range). Supported implementations
|
|
KiratPalMultAccSubset1DComplexWith1DComplexConjugateSignature
T_INT KiratPalMultAccSubset1DComplexWith1DComplexConjugate( const T_COMPLEX* pcSource1, const T_COMPLEX* pcSource2, T_COMPLEX* pcDestination, T_INT iSize, T_INT* piPoints);Description
Multiplies scalar, vector, or array values element-wise; Acc variants add the product to the destination. Mathematical operation
\(d_i\leftarrow d_i+a_ib_i^*\) (subset variants only over the selected range). Supported implementations
|
|
KiratPalMultAdd1DComplexAbsSquaredto1DFloatSignature
T_INT KiratPalMultAdd1DComplexAbsSquaredto1DFloat( const T_COMPLEX* pcSource, T_FLOAT* pfDestination, T_FLOAT fValue, T_INT iSize);Description
Adds scalar, vector, or array values element-wise; ToDest writes to a separate destination, while Acc accumulates into an existing destination. Mathematical operation
\(d_i\leftarrow d_i+c[(\Re z_i)^2+(\Im z_i)^2]\). Supported implementations
|
|
KiratPalMultAdd1DComplexBiasedApproxAbsto1DFloatSignature
T_INT KiratPalMultAdd1DComplexBiasedApproxAbsto1DFloat( const T_COMPLEX* pcSource, T_FLOAT* pfDestination, T_FLOAT fValue, T_INT iSize);Description
Adds scalar, vector, or array values element-wise; ToDest writes to a separate destination, while Acc accumulates into an existing destination. Mathematical operation
\(d_i\leftarrow d_i+c(|\Re z_i|+|\Im z_i|)\). Supported implementations
|
|
KiratPalMultAddSubset1DComplexAbsSquaredto1DFloatSignature
T_INT KiratPalMultAddSubset1DComplexAbsSquaredto1DFloat( const T_COMPLEX* pcSource, T_FLOAT* pfDestination, T_FLOAT fValue, T_INT iSize, T_INT* piPoints);Description
Adds scalar, vector, or array values element-wise; ToDest writes to a separate destination, while Acc accumulates into an existing destination. Mathematical operation
\(d_i\leftarrow d_i+c[(\Re z_{p_i})^2+(\Im z_{p_i})^2]\) when an index vector \(p_i\) is supplied; otherwise \(p_i=i\). Supported implementations
|
|
KiratPalMultSubset1DComplexWith1DComplexToDestSignature
T_INT KiratPalMultSubset1DComplexWith1DComplexToDest( const T_COMPLEX* pcSource1, const T_COMPLEX* pcSource2, T_COMPLEX* pcDestination, T_INT iSize, T_INT* piPoints);Description
Multiplies scalar, vector, or array values element-wise; Acc variants add the product to the destination. Mathematical operation
\(d_i=a_ib_i\). Supported implementations
|
|
KiratPalMultSubset1DComplexWith1DFloatSignature
T_INT KiratPalMultSubset1DComplexWith1DFloat( const T_FLOAT* pfSource, T_COMPLEX* pcDestination, T_INT iSize, T_INT* piPoints);Description
Multiplies scalar, vector, or array values element-wise; Acc variants add the product to the destination. Mathematical operation
\(d_i\leftarrow d_is_i\). Supported implementations
|
|
KiratPalMultSubtract1DComplexAbsSquaredFrom1DFloatSignature
T_INT KiratPalMultSubtract1DComplexAbsSquaredFrom1DFloat( const T_COMPLEX* pcSource, T_FLOAT* pfDestination, T_FLOAT fValue, T_INT iSize);Description
Subtracts scalar, vector, or array values element-wise; “A from B” means B−A mathematically. Mathematical operation
\(d_i\leftarrow d_i-c[(\Re z_i)^2+(\Im z_i)^2]\). Supported implementations
|
|
KiratPalMultSubtract1DComplexBiasedApproxAbsFrom1DFloatSignature
T_INT KiratPalMultSubtract1DComplexBiasedApproxAbsFrom1DFloat( const T_COMPLEX* pcSource, T_FLOAT* pfDestination, T_FLOAT fValue, T_INT iSize);Description
Subtracts scalar, vector, or array values element-wise; “A from B” means B−A mathematically. Mathematical operation
\(d_i\leftarrow d_i-c(|\Re z_i|+|\Im z_i|)\). Supported implementations
|
|
KiratPalMultSubtractSubset1DComplexAbsSquaredFrom1DFloatSignature
T_INT KiratPalMultSubtractSubset1DComplexAbsSquaredFrom1DFloat( const T_COMPLEX* pcSource, T_FLOAT* pfDestination, T_FLOAT fValue, T_INT iSize, T_INT* piPoints);Description
Subtracts scalar, vector, or array values element-wise; “A from B” means B−A mathematically. Mathematical operation
\(d_i\leftarrow d_i-c[(\Re z_{p_i})^2+(\Im z_{p_i})^2]\) when an index vector \(p_i\) is supplied; otherwise \(p_i=i\). Supported implementations
|
|
KiratPalSquared1DComplexSignature
T_INT KiratPalSquared1DComplex(T_COMPLEX* pcDestination, T_INT iSize);Description
Calculates element-wise squares or complex squared magnitudes. Mathematical operation
\(z_i\leftarrow z_i^2=[(\Re z_i)^2-(\Im z_i)^2]+j\,2(\Re z_i)(\Im z_i)\). Supported implementations
|
|
KiratPalSquared1DComplexToDestSignature
T_INT KiratPalSquared1DComplexToDest( const T_COMPLEX* pcSource, T_COMPLEX* pcDestination, T_INT iSize);Description
Calculates element-wise squares or complex squared magnitudes. Mathematical operation
\(y_i=z_i^2=[(\Re z_i)^2-(\Im z_i)^2]+j\,2(\Re z_i)(\Im z_i)\). Supported implementations
|
|
KiratPalSquaredL2Norm1DComplexSignature
T_INT KiratPalSquaredL2Norm1DComplex(const T_COMPLEX* pcSource, T_FLOAT* pfReult, T_INT iSize);Description
Calculates the Euclidean/L2 norm of a vector. Mathematical operation
\(s=\sum_i|z_i|^2\). Supported implementations
|
|
KiratPalSubtract1DComplexAbsSquaredFrom1DFloatSignature
T_INT KiratPalSubtract1DComplexAbsSquaredFrom1DFloat( const T_COMPLEX* pcSource, T_FLOAT* pfDestination, T_INT iSize);Description
Subtracts scalar, vector, or array values element-wise; “A from B” means B−A mathematically. Mathematical operation
\(d_i\leftarrow d_i-[(\Re z_i)^2+(\Im z_i)^2]\). Supported implementations
|
|
KiratPalSubtractSubset1DComplexAbsSquaredFrom1DFloatSignature
T_INT KiratPalSubtractSubset1DComplexAbsSquaredFrom1DFloat( const T_COMPLEX* pcSource, T_FLOAT* pfDestination, T_INT iSize, T_INT* piPoints);Description
Subtracts scalar, vector, or array values element-wise; “A from B” means B−A mathematically. Mathematical operation
\(d_i\leftarrow d_i-[(\Re z_{p_i})^2+(\Im z_{p_i})^2]\) when \(p\) is supplied; otherwise \(p_i=i\). Supported implementations
|
|
KiratPalSubtractSubset1DComplexFrom1DComplexToDestSignature
T_INT KiratPalSubtractSubset1DComplexFrom1DComplexToDest( const T_COMPLEX* pcSource1, const T_COMPLEX* pcSource2, T_COMPLEX* pcDestination, T_INT iSize, T_INT* piPonts);Description
Subtracts scalar, vector, or array values element-wise; “A from B” means B−A mathematically. Mathematical operation
\(d_i=x^{(1)}_{p_i}-x^{(2)}_i\) when index vector \(p\) is supplied. Supported implementations
|
|
KiratPalSumUp1DComplexVectorToScalarSignature
T_COMPLEX KiratPalSumUp1DComplexVectorToScalar(const T_COMPLEX* pcSource, T_INT iSize);Description
Sums array elements; variants sum values, magnitudes, powers, or Boolean true values. Mathematical operation
\(s=\sum_i z_i\). Supported implementations
|
|
KiratPalSumUpAbs1DComplexVectorToFloatScalarSignature
T_FLOAT KiratPalSumUpAbs1DComplexVectorToFloatScalar(const T_COMPLEX* pcSource, T_INT iSize);Description
Sums array elements; variants sum values, magnitudes, powers, or Boolean true values. Mathematical operation
\(s=\sum_i|z_i|\). Supported implementations
|