PAL 1D Arrays: Complex Setup and Arithmetic
Initialization, copying, conjugation, inversion, phase conversion, addition, subtraction, multiplication, and division for one-dimensional complex arrays.
|
|
|---|---|
KiratPalAdd1DComplexTo1DComplexSignature
T_INT KiratPalAdd1DComplexTo1DComplex( const T_COMPLEX* pcSource, T_COMPLEX* pcDestination, 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+s_i\) (or \(+c\) for a scalar source). Supported implementations
|
|
KiratPalAdd1DComplexTo1DComplexToDestSignature
T_INT KiratPalAdd1DComplexTo1DComplexToDest( const T_COMPLEX* pcSource1, const T_COMPLEX* pcSource2, T_COMPLEX* pcDestination, 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=a_i+b_i\) (or source element plus scalar, according to the signature). Supported implementations
|
|
KiratPalConj1DComplexSignature
T_INT KiratPalConj1DComplex(T_COMPLEX* pcDestination, T_INT iSize);Description
Calculates the element-wise complex conjugate. Mathematical operation
\(y_i=z_i^*\). Supported implementations
|
|
KiratPalConvert1DPolarTo1DComplexSignature
T_INT KiratPalConvert1DPolarTo1DComplex( const T_FLOAT* pfSourceMag, const T_FLOAT* pfSourcePhase, T_COMPLEX* pcDestination, T_INT iSize);Description
Calculates the linear convolution of two vectors. Mathematical operation
\(z_i=r_i(\cos\varphi_i+j\sin\varphi_i)=r_ie^{j\varphi_i}\). Supported implementations
|
|
KiratPalCopy1DComplexSignature
T_INT KiratPalCopy1DComplex(const T_COMPLEX* pcSource, T_COMPLEX* pcDestination, T_INT iSize);Description
Copies the specified data or subrange to the destination. Mathematical operation
\(D_{\mathbf i}\leftarrow S_{\mathbf i}\) element-wise (with type conversion where indicated by the function name). Supported implementations
|
|
KiratPalCopy1DComplexFromRingBufferSignature
T_INT KiratPalCopy1DComplexFromRingBuffer( const T_COMPLEX* pcSource, T_COMPLEX* pcDestination, T_INT iStartOffset, T_INT iSamples, T_INT iRingBufferLength);Description
Copies the specified data or subrange to the destination. Mathematical operation
Data are copied with circular indexing: the physical buffer index is taken modulo the ring-buffer length while the logical samples remain in sequential order. Supported implementations
|
|
KiratPalCopy1DComplexMirroredSignature
T_INT KiratPalCopy1DComplexMirrored( 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}\). Supported implementations
|
|
KiratPalCopy1DComplexTo1DFloatImagSignature
T_INT KiratPalCopy1DComplexTo1DFloatImag( const T_COMPLEX* pcSourceComplex, T_FLOAT* pfDestImag, T_INT iSize);Description
Copies the specified data or subrange to the destination. Mathematical operation
\(y_i=\Im z_i\). Supported implementations
|
|
KiratPalCopy1DComplexTo1DFloatRealSignature
T_INT KiratPalCopy1DComplexTo1DFloatReal( const T_COMPLEX* pcSourceComplex, T_FLOAT* pfDestReal, T_INT iSize);Description
Copies the specified data or subrange to the destination. Mathematical operation
\(y_i=\Re z_i\). Supported implementations
|
|
KiratPalCopy1DComplexTo1DFloatRealAnd1DFloatImagSignature
T_INT KiratPalCopy1DComplexTo1DFloatRealAnd1DFloatImag( const T_COMPLEX* pcSourceComplex, T_FLOAT* pfDestReal, T_FLOAT* pfDestImag, T_INT iSize);Description
Copies the specified data or subrange to the destination. Mathematical operation
\(r_i=\Re z_i,\quad q_i=\Im z_i\). Supported implementations
|
|
KiratPalCopy1DComplexToRingBufferSignature
T_INT KiratPalCopy1DComplexToRingBuffer( const T_COMPLEX* pcSource, T_COMPLEX* pcDestination, T_INT iStartOffset, T_INT iSamples, T_INT iRingBufferLength);Description
Copies the specified data or subrange to the destination. Mathematical operation
Data are copied with circular indexing: the physical buffer index is taken modulo the ring-buffer length while the logical samples remain in sequential order. Supported implementations
|
|
KiratPalDivide1DComplexByComplexToDestinationSignature
T_INT KiratPalDivide1DComplexByComplexToDestination( T_COMPLEX cValue, T_COMPLEX* pcSource, T_COMPLEX* pcDestination, T_INT iSize);Description
Divides element-wise; some implementations add SYS_EPS or another small safeguard to avoid division by zero. Mathematical operation
For scalar \(c\), \(d_i=z_i c^*/(|c|^2+\varepsilon_{\mathrm{SYS}})\) on the generic path. Supported implementations
|
|
KiratPalDivide1DComplexByFloatSignature
T_INT KiratPalDivide1DComplexByFloat(T_FLOAT fValue, T_COMPLEX* pcDestination, T_INT iSize);Description
Divides element-wise; some implementations add SYS_EPS or another small safeguard to avoid division by zero. Mathematical operation
\(d_i\leftarrow d_i/(c+\varepsilon_{\mathrm{SYS}})\) on the generic path. Supported implementations
|
|
KiratPalDivide1DComplexWith1DComplexSignature
T_INT KiratPalDivide1DComplexWith1DComplex( const T_COMPLEX* pcSource, T_COMPLEX* pcDestination, T_INT iSize);Description
Divides element-wise; some implementations add SYS_EPS or another small safeguard to avoid division by zero. Mathematical operation
ANSI-C path: \(d_i\leftarrow d_i x_i^*/(|x_i|^2+10^{-10})\). Supported implementations
|
|
KiratPalDivide1DComplexWith1DComplexToDestSignature
T_INT KiratPalDivide1DComplexWith1DComplexToDest( const T_COMPLEX* pcSource1, const T_COMPLEX* pcSource2, T_COMPLEX* pcDestination, T_INT iSize);Description
Divides element-wise; some implementations add SYS_EPS or another small safeguard to avoid division by zero. Mathematical operation
ANSI-C path: \(d_i=x^{(2)}_i(x^{(1)}_i)^*/(|x^{(1)}_i|^2+10^{-10})\). Supported implementations
|
|
KiratPalDivide1DComplexWith1DFloatSignature
T_INT KiratPalDivide1DComplexWith1DFloat( const T_FLOAT* pfSource, T_COMPLEX* pcDestination, T_INT iSize);Description
Divides element-wise; some implementations add SYS_EPS or another small safeguard to avoid division by zero. Mathematical operation
ANSI-C path: \(d_i\leftarrow d_i/(x_i+10^{-10})\). Supported implementations
|
|
KiratPalDivide1DComplexWith1DFloatToDestSignature
T_INT KiratPalDivide1DComplexWith1DFloatToDest( const T_FLOAT* pfSource1, const T_COMPLEX* pcSource2, T_COMPLEX* pcDestination, T_INT iSize);Description
Divides element-wise; some implementations add SYS_EPS or another small safeguard to avoid division by zero. Mathematical operation
ANSI-C path: \(d_i=z^{(2)}_i/(x^{(1)}_i+10^{-10})\). Supported implementations
|
|
KiratPalInverse1DComplexSignature
T_INT KiratPalInverse1DComplex(T_COMPLEX* pcSrcDest, T_INT iSize);Description
Calculates the element-wise reciprocal; threshold variants limit critically small denominators. Mathematical operation
ANSI-C path: \(z_i\leftarrow z_i^*/(|z_i|^2+\varepsilon_{\mathrm{SYS}})\). Supported implementations
|
|
KiratPalInverse1DComplexToDestSignature
T_INT KiratPalInverse1DComplexToDest( const T_COMPLEX* pcSource, T_COMPLEX* pcDestination, T_INT iSize);Description
Calculates the element-wise reciprocal; threshold variants limit critically small denominators. Mathematical operation
ANSI-C path: \(y_i=z_i^*/(|z_i|^2+\varepsilon_{\mathrm{SYS}})\). Supported implementations
|
|
KiratPalMove1DComplexSignature
T_INT KiratPalMove1DComplex(const T_COMPLEX* pcSource, T_COMPLEX* pcDestination, T_INT iSize);Description
Moves/copies data safely even when source and destination memory regions overlap. Mathematical operation
\(D_{\mathbf i}\leftarrow S_{\mathbf i}\) element-wise (with type conversion where indicated by the function name). Supported implementations
|
|
KiratPalMult1DComplexWith1DComplexSignature
T_INT KiratPalMult1DComplexWith1DComplex( const T_COMPLEX* pcSource, 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_is_i\). Supported implementations
|
|
KiratPalMult1DComplexWith1DComplexToDestSignature
T_INT KiratPalMult1DComplexWith1DComplexToDest( 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_ib_i\). Supported implementations
|
|
KiratPalMult1DComplexWith1DFloatSignature
T_INT KiratPalMult1DComplexWith1DFloat( const T_FLOAT* pfSource, 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_is_i\). Supported implementations
|
|
KiratPalMult1DComplexWith1DFloatToDestSignature
T_INT KiratPalMult1DComplexWith1DFloatToDest( const T_FLOAT* pfSource1, 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_ib_i\). Supported implementations
|
|
KiratPalMult1DComplexWithComplexSignature
T_INT KiratPalMult1DComplexWithComplex(T_COMPLEX* pcDestination, T_COMPLEX* cFactor, 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 c\,d_i\). Supported implementations
|
|
KiratPalMult1DComplexWithComplexToDestSignature
T_INT KiratPalMult1DComplexWithComplexToDest( T_COMPLEX* pcDestination, T_COMPLEX* pcSource, T_COMPLEX* cFactor, T_INT iSize);Description
Multiplies scalar, vector, or array values element-wise; Acc variants add the product to the destination. Mathematical operation
\(d_i=c\,s_i\). Supported implementations
|
|
KiratPalMult1DComplexWithConj1DComplexToDestSignature
T_INT KiratPalMult1DComplexWithConj1DComplexToDest( 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_i b_i^*\). Supported implementations
|
|
KiratPalMult1DComplexWithConj1DComplexToDestSmoothedSignature
T_INT KiratPalMult1DComplexWithConj1DComplexToDestSmoothed( const T_COMPLEX* pcSource1, const T_COMPLEX* pcSource2, T_COMPLEX* pcDestination, T_INT iSize, T_FLOAT fBeta);Description
Multiplies scalar, vector, or array values element-wise; Acc variants add the product to the destination. Mathematical operation
\(d_i=a_i b_i^*\). Supported implementations
|
|
KiratPalMult1DComplexWithFloatSignature
T_INT KiratPalMult1DComplexWithFloat(T_COMPLEX* pcDestination, T_FLOAT fFactor, 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 c\,d_i\). Supported implementations
|
|
KiratPalMult1DComplexWithFloatToDestSignature
T_INT KiratPalMult1DComplexWithFloatToDest( const T_COMPLEX* pcSource, T_COMPLEX* pcDestination, T_FLOAT fFactor, T_INT iSize);Description
Multiplies scalar, vector, or array values element-wise; Acc variants add the product to the destination. Mathematical operation
\(d_i=c\,s_i\). Supported implementations
|
|
KiratPalMultConj1DComplexWith1DComplexToDestSignature
T_INT KiratPalMultConj1DComplexWith1DComplexToDest( 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_i b_i^*\). Supported implementations
|
|
KiratPalMultConj1DComplexWith1DFloatToDestSignature
T_INT KiratPalMultConj1DComplexWith1DFloatToDest( 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=a_i b_i^*\). Supported implementations
|
|
KiratPalPhase1DComplexSignature
T_INT KiratPalPhase1DComplex(const T_COMPLEX* pcSource, T_FLOAT* pfDestination, T_INT iSize);Description
Calculates the element-wise phase of complex values. Mathematical operation
\(\varphi_i=\operatorname{atan2}(\Im z_i,\Re z_i)\). Supported implementations
|
|
KiratPalSet1DComplexToComplexSignature
T_INT KiratPalSet1DComplexToComplex(T_COMPLEX* pcDestination, T_COMPLEX cValue, T_INT iSize);Description
Sets every element of a complex vector to the same complex constant. Mathematical operation
\(z_i\leftarrow c\). Supported implementations
|
|
KiratPalSet1DComplexToFloatSignature
T_INT KiratPalSet1DComplexToFloat(T_COMPLEX* pcDestination, T_FLOAT fValue, T_INT iSize);Description
Sets real components/elements from Float values; complex imaginary components are handled according to the implementation. Mathematical operation
\(z_{\mathbf i}\leftarrow a+j0\). Supported implementations
|
|
KiratPalSet1DComplexToZeroSignature
T_INT KiratPalSet1DComplexToZero(T_COMPLEX* pcDestination, T_INT iSize);Description
Sets all elements of the array to zero. Mathematical operation
\(d_{\mathbf i}\leftarrow0\) for every array index \(\mathbf i\). Supported implementations
|
|
KiratPalSet1DComplexToZeroOrFillWithLowPowerNoiseSignature
T_INT KiratPalSet1DComplexToZeroOrFillWithLowPowerNoise(T_COMPLEX* pcDestination, T_INT iSize);Description
Sets the array to zero or, depending on the configuration, fills it with very low-level noise to avoid numerical corner cases. Mathematical operation
Current 1-D complex default path uses \(z_i=10^{-10}u_i+j10^{-10}v_i\) with \(u_i,v_i\approx\mathcal U[-1,1)\); higher-dimensional complex variants call this row-wise. (The 1-D local mode is currently set to noise.) Supported implementations
|
|
KiratPalSubtract1DComplexFrom1DComplexSignature
T_INT KiratPalSubtract1DComplexFrom1DComplex( const T_COMPLEX* pcSource, T_COMPLEX* pcDestination, T_INT iSize);Description
Subtracts scalar, vector, or array values element-wise; “A from B” means B−A mathematically. Mathematical operation
\(d_i\leftarrow x_i-d_i\) (the source explicitly uses this operand order). Supported implementations
|
|
KiratPalSubtract1DComplexFrom1DComplexToDestSignature
T_INT KiratPalSubtract1DComplexFrom1DComplexToDest( const T_COMPLEX* pcSource1, const T_COMPLEX* pcSource2, T_COMPLEX* pcDestination, T_INT iSize);Description
Subtracts scalar, vector, or array values element-wise; “A from B” means B−A mathematically. Mathematical operation
\(d_i=x^{(1)}_i-x^{(2)}_i\). Supported implementations
|