PAL 3D Arrays: Real, Integer, and Boolean Operations
Initialization, copying, arithmetic, extrema, logarithms, and conversion for three-dimensional Float, Double, Int, and Bool arrays.
|
|
|---|---|
KiratPal3DFloatLog10ApproxSignature
T_INT KiratPal3DFloatLog10Approx( T_FLOAT*** pppfSource, T_INT iSizeDim1, T_INT iSizeDim2, T_INT iSizeDim3);Description
Calculates a fast element-wise approximation of log10. Mathematical operation
\(y_{\mathbf i}\approx\log_{10}(x_{\mathbf i})\) using the PAL approximate log implementation. Supported implementations
|
|
KiratPal3DFloatLog10ApproxToDestSignature
T_INT KiratPal3DFloatLog10ApproxToDest( T_FLOAT*** pppfSource, T_FLOAT*** pppfDestination, T_INT iSizeDim1, T_INT iSizeDim2, T_INT iSizeDim3);Description
Calculates a fast element-wise approximation of log10. Mathematical operation
\(y_{\mathbf i}\approx\log_{10}(x_{\mathbf i})\) using the PAL approximate log implementation. Supported implementations
|
|
KiratPalAdd3DFloatTo3DDoubleSignature
T_INT KiratPalAdd3DFloatTo3DDouble( T_FLOAT*** pppfSource, T_DOUBLE*** pppdDestination, T_INT iSizeDim1, T_INT iSizeDim2, T_INT iSizeDim3);Description
Adds scalar, vector, or array values element-wise; ToDest writes to a separate destination, while Acc accumulates into an existing destination. Mathematical operation
\(y_{\mathbf i}=\operatorname{cast}(x_{\mathbf i})\) element-wise. Supported implementations
|
|
KiratPalAdd3DFloatTo3DFloatSignature
void KiratPalAdd3DFloatTo3DFloat( T_FLOAT*** pppfSource, T_FLOAT*** pppfDestination, T_INT iSizeDim1, T_INT iSizeDim2, T_INT iSizeDim3);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_{\mathbf i}\leftarrow d_{\mathbf i}+s_{\mathbf i}\) (or \(+c\) for a scalar source). Supported implementations
|
|
KiratPalAdd3DFloatTo3DFloatToDestSignature
void KiratPalAdd3DFloatTo3DFloatToDest( T_FLOAT*** pppfSource1, T_FLOAT*** pppfSource2, T_FLOAT*** pppfDestination, T_INT iSizeDim1, T_INT iSizeDim2, T_INT iSizeDim3);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_{\mathbf i}=a_{\mathbf i}+b_{\mathbf i}\) (or source element plus scalar, according to the signature). Supported implementations
|
|
KiratPalAddFloatTo3DFloatSignature
T_INT KiratPalAddFloatTo3DFloat( T_FLOAT fSource, T_FLOAT*** pppfDestination, T_INT iSizeDim1, T_INT iSizeDim2, T_INT iSizeDim3);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_{\mathbf i}\leftarrow d_{\mathbf i}+c\). Supported implementations
|
|
KiratPalAddFloatTo3DFloatToDestSignature
T_INT KiratPalAddFloatTo3DFloatToDest( const T_FLOAT*** pppfSource, T_FLOAT fValue, T_FLOAT*** pppfDestination, T_INT iSizeDim1, T_INT iSizeDim2, T_INT iSizedim3);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_{\mathbf i}\leftarrow d_{\mathbf i}+c\). Supported implementations
|
|
KiratPalCopy3DFloatSignature
void KiratPalCopy3DFloat( T_FLOAT** const* pppfSource, T_FLOAT*** pppfDestination, T_INT iSizeDim1, T_INT iSizeDim2, T_INT iSizeDim3);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
|
|
KiratPalCopy3DFloatTo3DDoubleSignature
T_INT KiratPalCopy3DFloatTo3DDouble( T_FLOAT*** pppfSource, T_DOUBLE*** pppdDestination, T_INT iSizeDim1, T_INT iSizeDim2, T_INT iSizeDim3);Description
Copies the specified data or subrange to the destination. Mathematical operation
\(y_{\mathbf i}=\operatorname{cast}(x_{\mathbf i})\) element-wise. Supported implementations
|
|
KiratPalDivide3DFloatBy3DFloatSignature
void KiratPalDivide3DFloatBy3DFloat( T_FLOAT*** pppfSource, T_FLOAT*** pppfDestination, T_INT iSizeDim1, T_INT iSizeDim2, T_INT iSizeDim3);Description
Divides element-wise; some implementations add SYS_EPS or another small safeguard to avoid division by zero. Mathematical operation
\(D_{ijk}\leftarrow D_{ijk}/X_{ijk}\). Supported implementations
|
|
KiratPalGetMax3DFloatSignature
T_FLOAT KiratPalGetMax3DFloat(T_FLOAT*** pppfVector, T_INT iSize1, T_INT iSize2, T_INT iSize3);Description
Returns the largest value in the array. Mathematical operation
\(y=\max_{\mathbf i}x_{\mathbf i}\). Supported implementations
|
|
KiratPalGetMaxValAndIndex3DFloatSignature
T_FLOAT KiratPalGetMaxValAndIndex3DFloat( T_FLOAT*** pppfVector, T_INT iSize1, T_INT iSize2, T_INT iSize3, T_INT* piIndex1, T_INT* piIndex2, T_INT* piIndex3);Description
Finds the maximum value (or maximum magnitude measure) and its corresponding index. Mathematical operation
\(y=\max_{\mathbf i}x_{\mathbf i}\) and the function returns/stores an index \(\mathbf i^*\) satisfying \(x_{\mathbf i^*}=y\). Supported implementations
|
|
KiratPalGetMin3DFloatSignature
T_FLOAT KiratPalGetMin3DFloat(T_FLOAT*** pppfVector, T_INT iSize1, T_INT iSize2, T_INT iSize3);Description
Returns the smallest value in the array. Mathematical operation
\(y=\min_{\mathbf i}x_{\mathbf i}\). Supported implementations
|
|
KiratPalGetMinValAndIndex3DFloatSignature
T_FLOAT KiratPalGetMinValAndIndex3DFloat( T_FLOAT*** pppfVector, T_INT iSize1, T_INT iSize2, T_INT iSize3, T_INT* piIndex1, T_INT* piIndex2, T_INT* piIndex3);Description
Finds the minimum value and its corresponding index. Mathematical operation
\(y=\min_{\mathbf i}x_{\mathbf i}\) and the function returns/stores an index \(\mathbf i^*\) satisfying \(x_{\mathbf i^*}=y\). Supported implementations
|
|
KiratPalMult3DFloatWith3DFloatSignature
void KiratPalMult3DFloatWith3DFloat( T_FLOAT*** pppfSource, T_FLOAT*** pppfDestination, T_INT iSizeDim1, T_INT iSizeDim2, T_INT iSizeDim3);Description
Multiplies scalar, vector, or array values element-wise; Acc variants add the product to the destination. Mathematical operation
\(d_{\mathbf i}\leftarrow d_{\mathbf i}s_{\mathbf i}\). Supported implementations
|
|
KiratPalMult3DFloatWithFloatSignature
void KiratPalMult3DFloatWithFloat( T_FLOAT*** pppfDestination, T_FLOAT fFactor, T_INT iSizeDim1, T_INT iSizeDim2, T_INT iSizeDim3);Description
Multiplies scalar, vector, or array values element-wise; Acc variants add the product to the destination. Mathematical operation
\(d_{\mathbf i}\leftarrow c\,d_{\mathbf i}\). Supported implementations
|
|
KiratPalMult3DFloatWithFloatToDestSignature
void KiratPalMult3DFloatWithFloatToDest( T_FLOAT*** pppfSource, T_FLOAT*** pppfDestination, T_FLOAT fFactor, T_INT iSizeDim1, T_INT iSizeDim2, T_INT iSizeDim3);Description
Multiplies scalar, vector, or array values element-wise; Acc variants add the product to the destination. Mathematical operation
\(d_{\mathbf i}=c\,s_{\mathbf i}\). Supported implementations
|
|
KiratPalSet3DBoolToValueSignature
void KiratPalSet3DBoolToValue( T_BOOL*** pppbDestination, T_INT iSizeDim1, T_INT iSizeDim2, T_INT iSizeDim3, T_BOOL bValue);Description
Sets all elements of the array to a constant value. Mathematical operation
\(d_{\mathbf i}\leftarrow c\) for every array index \(\mathbf i\). Supported implementations
|
|
KiratPalSet3DDoubleToZeroSignature
T_INT KiratPalSet3DDoubleToZero( T_DOUBLE*** pppdDestination, T_INT iSizeDim1, T_INT iSizeDim2, T_INT iSizeDim3);Description
Sets all elements of the array to zero. Mathematical operation
\(d_{\mathbf i}\leftarrow0\) for every array index \(\mathbf i\). Supported implementations
|
|
KiratPalSet3DFloatToValueSignature
void KiratPalSet3DFloatToValue( T_FLOAT*** pppfDestination, T_INT iSizeDim1, T_INT iSizeDim2, T_INT iSizeDim3, T_FLOAT fValue);Description
Sets all elements of the array to a constant value. Mathematical operation
\(d_{\mathbf i}\leftarrow c\) for every array index \(\mathbf i\). Supported implementations
|
|
KiratPalSet3DFloatToZeroSignature
void KiratPalSet3DFloatToZero( T_FLOAT*** pppfDestination, T_INT iSizeDim1, T_INT iSizeDim2, T_INT iSizeDim3);Description
Sets all elements of the array to zero. Mathematical operation
\(d_{\mathbf i}\leftarrow0\) for every array index \(\mathbf i\). Supported implementations
|
|
KiratPalSet3DFloatToZeroOrFillWithLowPowerNoiseSignature
void KiratPalSet3DFloatToZeroOrFillWithLowPowerNoise( T_FLOAT*** pppfDestination, T_INT iSizeDim1, T_INT iSizeDim2, T_INT iSizeDim3);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 real-valued default path selects the local zero mode, so \(x_i=0\); the alternative code path would use uniform noise of gain \(10^{-10}\). Supported implementations
|
|
KiratPalSet3DIntToValueSignature
void KiratPalSet3DIntToValue( T_INT*** pppiDestination, T_INT iSizeDim1, T_INT iSizeDim2, T_INT iSizeDim3, T_INT iValue);Description
Sets all elements of the array to a constant value. Mathematical operation
\(d_{\mathbf i}\leftarrow c\) for every array index \(\mathbf i\). Supported implementations
|
|
KiratPalSet3DIntToZeroSignature
void KiratPalSet3DIntToZero( T_INT*** pppiDestination, T_INT iSizeDim1, T_INT iSizeDim2, T_INT iSizeDim3);Description
Sets all elements of the array to zero. Mathematical operation
\(d_{\mathbf i}\leftarrow0\) for every array index \(\mathbf i\). Supported implementations
|
|
KiratPalSubtract3DFloatFrom3DFloatSignature
void KiratPalSubtract3DFloatFrom3DFloat( T_FLOAT*** pppfDestination, T_FLOAT*** pppfSource, T_INT iSizeDim1, T_INT iSizeDim2, T_INT iSizeDim3);Description
Subtracts scalar, vector, or array values element-wise; “A from B” means B−A mathematically. Mathematical operation
\(D_{ijk}\leftarrow D_{ijk}-X_{ijk}\). Supported implementations
|