![]() |
LIBDSP Version 4.1.9
LIBDSP Software Library
|

Data Structures | |
| struct | tpt_matrix_instance_f32 |
| Instance structure for the floating-point matrix structure. More... | |
| struct | tpt_matrix_instance_f64 |
| Instance structure for the double-precision floating-point matrix structure. More... | |
| struct | tpt_matrix_instance_f16 |
| Instance structure for the F16 matrix structure. More... | |
| struct | tpt_matrix_instance_q15 |
| Instance structure for the Q15 matrix structure. More... | |
| struct | tpt_matrix_instance_q31 |
| Instance structure for the Q31 matrix structure. More... | |
| struct | tpt_matrix_instance_q7 |
| Instance structure for the Q7 matrix structure. More... | |
Macros | |
| #define | ELEM(A, ROW, COL) |
| #define | SWAP_ROWS_F32(A, COL, i, j) |
| #define | SCALE_ROW_F32(A, COL, v, i) |
| #define | MAS_ROW_F32(COL, A, i, v, B, j) |
| #define | SWAP_ROWS_F64(A, COL, i, j) |
| #define | SWAP_ROWS_F32(A, COL, i, j) |
| #define | MAC_ROW_F32(COL, A, i, v, B, j) |
| #define | SWAP_COLS_F32(A, COL, i, j) |
| #define | SWAP_COLS_F64(A, COL, i, j) |
| #define | SCALE_ROW_F64(A, COL, v, i) |
| #define | MAC_ROW_F64(COL, A, i, v, B, j) |
| #define | MAS_ROW_F64(COL, A, i, v, B, j) |
| #define | COPY_COL_T(T, A, ROW, COL, DST) |
| #define | COPY_COL_F32(A, ROW, COL, DST) |
| #define | COPY_COL_F64(A, ROW, COL, DST) |
| #define | COPY_COL_F16(A, ROW, COL, DST) |
| #define | CMPLX_DIM 2 |
| Dimension of complex vector space. | |
Functions | |
| tpt_status | tpt_linear_equation_f32 (f32_t *aOutMat, f32_t *aInMat, uint32_t aN, f32_t *aB) |
| Floating-point linear equations. | |
| void | tpt_mat_add_f32 (f32_t *aOutMat, const f32_t *aInMatA, const f32_t *aInMatB, uint16_t aRows, uint16_t aCols) |
| Floating-point matrix addition. | |
| void | tpt_mat_add_f64 (f64_t *aOutMat, const f64_t *aInMatA, const f64_t *aInMatB, uint16_t aRows, uint16_t aCols) |
| Floating-point matrix addition. | |
| void | tpt_mat_add_q15 (q15_t *aOutMat, const q15_t *aInMatA, const q15_t *aInMatB, uint16_t aRows, uint16_t aCols) |
| Q15 matrix addition. | |
| void | tpt_mat_add_q31 (q31_t *aOutMat, const q31_t *aInMatA, const q31_t *aInMatB, uint16_t aRows, uint16_t aCols) |
| Q31 matrix addition. | |
| void | tpt_mat_cmplx_mult_f32 (f32_t *aOutMat, const f32_t *aInMatA, const f32_t *aInMatB, uint16_t aM, uint16_t aK, uint16_t aN) |
| Floating-point Complex matrix multiplication. | |
| void | tpt_mat_cmplx_mult_f64 (f64_t *aOutMat, const f64_t *aInMatA, const f64_t *aInMatB, uint16_t aM, uint16_t aK, uint16_t aN) |
| Floating-point Complex matrix multiplication. | |
| void | tpt_mat_cmplx_mult_q15 (q15_t *aOutMat, const q15_t *aInMatA, const q15_t *aInMatB, uint16_t aM, uint16_t aK, uint16_t aN) |
| Q15 Complex matrix multiplication. | |
| void | tpt_mat_cmplx_mult_q31 (q31_t *aOutMat, const q31_t *aInMatA, const q31_t *aInMatB, uint16_t aM, uint16_t aK, uint16_t aN) |
| Q31 Complex matrix multiplication. | |
| void | tpt_mat_cmplx_trans_f32 (f32_t *aOutMat, const f32_t *aInMat, uint32_t aM, uint32_t aK) |
| Transpose the single-precision floating-point complex matrices. | |
| void | tpt_mat_cmplx_trans_f64 (f64_t *aOutMat, const f64_t *aInMat, uint32_t aM, uint32_t aK) |
| Transpose the single-precision floating-point complex matrices. | |
| void | tpt_mat_cmplx_trans_q15 (q15_t *aOutMat, const q15_t *aInMat, uint32_t aM, uint32_t aK) |
| Transpose the q15 complex matrices. | |
| void | tpt_mat_cmplx_trans_q31 (q31_t *aOutMat, const q31_t *aInMat, uint32_t aM, uint32_t aK) |
| Transpose the q31 complex matrices. | |
| tpt_status | tpt_mat_inverse_f32 (f32_t *aOutMat, f32_t *aInMat, uint32_t aN) |
| Floating-point matrix inverse. | |
| tpt_status | tpt_mat_inverse_f64 (f64_t *aOutMat, f64_t *aInMat, uint16_t aN) |
| Floating-point matrix inverse. | |
| void | tpt_mat_mul_mxv_f32 (f32_t *aOutMat, const f32_t *aInMat, const f32_t *aInVec, uint32_t aRow, uint32_t aCol) |
| Matrix multiply vector for f32 formats. | |
| void | tpt_mat_mul_mxv_q7 (q7_t *aOutMat, const q7_t *aInMat, const q7_t *aInVec, uint32_t aRow, uint32_t aCol) |
| Matrix multiply vector for q7 formats. | |
| void | tpt_mat_mul_mxv_q15 (q15_t *aOutMat, const q15_t *aInMat, const q15_t *aInVec, uint32_t aRow, uint32_t aCol) |
| Matrix multiply vector for q15 formats. | |
| void | tpt_mat_mul_mxv_q31 (q31_t *aOutMat, const q31_t *aInMat, const q31_t *aInVec, uint32_t aRow, uint32_t aCol) |
| Matrix multiply vector for q31 formats. | |
| void | tpt_mat_mult_f32 (f32_t *aOutMat, const f32_t *aInMatA, const f32_t *aInMatB, uint16_t aM, uint16_t aK, uint16_t aN) |
| Floating-point matrix multiplication. | |
| void | tpt_mat_mult_f64 (f64_t *aOutMat, const f64_t *aInMatA, const f64_t *aInMatB, uint16_t aM, uint16_t aK, uint16_t aN) |
| Floating-point matrix multiplication. | |
| void | tpt_mat_mult_q7 (q7_t *aOutMat, const q7_t *aInMatA, const q7_t *aInMatB, uint16_t aM, uint16_t aK, uint16_t aN) |
| Q7 matrix multiplication. | |
| void | tpt_mat_mult_q15 (q15_t *aOutMat, const q15_t *aInMatA, const q15_t *aInMatB, uint16_t aM, uint16_t aK, uint16_t aN) |
| Q15 matrix multiplication. | |
| void | tpt_mat_mult_q31 (q31_t *aOutMat, const q31_t *aInMatA, const q31_t *aInMatB, uint16_t aM, uint16_t aK, uint16_t aN) |
| Q31 matrix multiplication. | |
| void | tpt_mat_oprod_q31 (q31_t *aOutMat, const q31_t *aInMatA, const q31_t *aInMatB, uint32_t aM, uint32_t aN) |
| Matrix Multiplication of two q31 vevtor. | |
| void | tpt_mat_scale_f32 (f32_t *aOutMat, const f32_t *aInMat, uint16_t aRows, uint16_t aCols, f32_t aScale) |
| Floating-point matrix scaling. | |
| void | tpt_mat_scale_f64 (f64_t *aOutMat, const f64_t *aInMat, uint16_t aRows, uint16_t aCols, f64_t aScale) |
| Floating-point matrix scaling. | |
| void | tpt_mat_scale_q15 (q15_t *aOutMat, const q15_t *aInMat, uint16_t aRows, uint16_t aCols, q15_t aScaleFract, int8_t aShift) |
| Q15 matrix scaling. | |
| void | tpt_mat_scale_q31 (q31_t *aOutMat, const q31_t *aInMat, uint16_t aRows, uint16_t aCols, q31_t aScaleFract, int8_t aShift) |
| Q31 matrix scaling. | |
| void | tpt_mat_sub_f32 (f32_t *aOutMat, const f32_t *aInMatA, const f32_t *aInMatB, uint16_t aRows, uint16_t aCols) |
| Floating-point matrix subtraction. | |
| void | tpt_mat_sub_f64 (f64_t *aOutMat, const f64_t *aInMatA, const f64_t *aInMatB, uint16_t aRows, uint16_t aCols) |
| Floating-point matrix subtraction. | |
| void | tpt_mat_sub_q15 (q15_t *aOutMat, const q15_t *aInMatA, const q15_t *aInMatB, uint16_t aRows, uint16_t aCols) |
| Q15 matrix subtraction. | |
| void | tpt_mat_sub_q31 (q31_t *aOutMat, const q31_t *aInMatA, const q31_t *aInMatB, uint16_t aRows, uint16_t aCols) |
| Q31 matrix subtraction. | |
| void | tpt_mat_trans_f32 (f32_t *aOutMat, const f32_t *aInMat, uint16_t aRows, uint16_t aCols) |
| Floating-point matrix transpose. | |
| void | tpt_mat_trans_f64 (f64_t *aOutMat, const f64_t *aInMat, uint16_t aRows, uint16_t aCols) |
| Floating-point matrix transpose. | |
| void | tpt_mat_trans_q15 (q15_t *aOutMat, const q15_t *aInMat, uint16_t aRows, uint16_t aCols) |
| Q15 matrix transpose. | |
| void | tpt_mat_trans_q31 (q31_t *aOutMat, const q31_t *aInMat, uint16_t aRows, uint16_t aCols) |
| Q31 matrix transpose. | |
| tpt_status | tpt_mat_ldlt_f32 (tpt_matrix_instance_f32 *aOutLowerTriangularMat, tpt_matrix_instance_f32 *aOutDiagonalMat, uint16_t *aOutPermutationVec, const tpt_matrix_instance_f32 *aInMat) |
| Floating-point LDL decomposition of Symmetric Positive Semi-Definite Matrix. | |
| tpt_status | tpt_mat_ldlt_f64 (tpt_matrix_instance_f64 *aOutLowerTriangularMat, tpt_matrix_instance_f64 *aOutDiagonalMat, uint16_t *aOutPermutationVec, const tpt_matrix_instance_f64 *aInMat) |
| Floating-point LDL decomposition of Symmetric Positive Semi-Definite Matrix. | |
| void | tpt_mat_init_f32 (tpt_matrix_instance_f32 *S, uint16_t nRows, uint16_t nColumns, f32_t *pData) |
| Floating-point matrix initialization. | |
| void | tpt_mat_init_q15 (tpt_matrix_instance_q15 *S, uint16_t nRows, uint16_t nColumns, q15_t *pData) |
| Q15 matrix initialization. | |
| void | tpt_mat_init_q31 (tpt_matrix_instance_q31 *S, uint16_t nRows, uint16_t nColumns, q31_t *pData) |
| Q31 matrix initialization. | |
| void | tpt_mat_vec_mult_f32 (f32_t *aOutVec, const tpt_matrix_instance_f32 *aInMat, const f32_t *aInVec) |
| Floating-point matrix and vector multiplication. | |
| void | tpt_mat_vec_mult_q15 (q15_t *aOutVec, const tpt_matrix_instance_q15 *aInMat, const q15_t *aInVec) |
| Q15 matrix and vector multiplication. | |
| void | tpt_mat_vec_mult_f16 (f16_t *aOutVec, const tpt_matrix_instance_f16 *aInMat, const f16_t *aInVec) |
| Floating-point matrix and vector multiplication. | |
| tpt_status | tpt_mat_mult_fast_q15 (tpt_matrix_instance_q15 *aOutMat, const tpt_matrix_instance_q15 *aInMatA, const tpt_matrix_instance_q15 *aInMatB, q15_t *aState) |
| Q15 matrix multiplication. (fast variant). | |
| void | tpt_mat_vec_mult_q31 (q31_t *aOutVec, const tpt_matrix_instance_q31 *aInMat, const q31_t *aInVec) |
| Q31 matrix and vector multiplication. | |
| tpt_status | tpt_mat_mult_opt_q31 (tpt_matrix_instance_q31 *aOutMat, const tpt_matrix_instance_q31 *aInMatA, const tpt_matrix_instance_q31 *aInMatB, q31_t *aState) |
| Q31 matrix multiplication. (fast variant). | |
| tpt_status | tpt_mat_mult_fast_q31 (tpt_matrix_instance_q31 *aOutMat, const tpt_matrix_instance_q31 *aInMatA, const tpt_matrix_instance_q31 *aInMatB) |
| Q31 matrix multiplication. (fast variant). | |
| void | tpt_mat_vec_mult_q7 (q7_t *aOutVec, const tpt_matrix_instance_q7 *aInMat, const q7_t *aInVec) |
| Q7 matrix and vector multiplication. | |
| tpt_status | tpt_mat_solve_upper_triangular_f32 (tpt_matrix_instance_f32 *aOutMat, const tpt_matrix_instance_f32 *aUpperTriangularMat, const tpt_matrix_instance_f32 *aInMat) |
| Solve UT . X = A where UT is an upper triangular matrix. | |
| tpt_status | tpt_mat_solve_upper_triangular_f64 (tpt_matrix_instance_f64 *aOutMat, const tpt_matrix_instance_f64 *aUpperTriangularMat, const tpt_matrix_instance_f64 *aInMat) |
| Solve UT . X = A where UT is an upper triangular matrix. | |
| tpt_status | tpt_mat_cholesky_f32 (tpt_matrix_instance_f32 *aOutMat, const tpt_matrix_instance_f32 *aInMat) |
| Cholesky decomposition of a symmetric positive definite matrix. | |
| tpt_status | tpt_mat_cholesky_f64 (tpt_matrix_instance_f64 *aOutMat, const tpt_matrix_instance_f64 *aInMat) |
| Cholesky decomposition of a symmetric positive definite matrix. | |
| tpt_status | tpt_mat_solve_lower_triangular_f32 (const tpt_matrix_instance_f32 *aLowerTriangularMat, const tpt_matrix_instance_f32 *aInMat, tpt_matrix_instance_f32 *aOutMat) |
| Solve LT . X = A where LT is a lower triangular matrix. | |
| tpt_status | tpt_mat_solve_lower_triangular_f64 (const tpt_matrix_instance_f64 *aLowerTriangularMat, const tpt_matrix_instance_f64 *aInMat, tpt_matrix_instance_f64 *aOutMat) |
| Solve LT . X = A where LT is a lower triangular matrix. | |
| void | tpt_mat_init_q7 (tpt_matrix_instance_q7 *S, uint16_t nRows, uint16_t nColumns, q7_t *pData) |
| Initialize a Q7 matrix. | |
| void | tpt_mat_trans_q7 (q7_t *aOutMat, const q7_t *aInMat, uint16_t aRows, uint16_t aCols) |
| Transpose a Q7 matrix. | |
| tpt_status | tpt_mat_qr_f32 (const tpt_matrix_instance_f32 *aInMat, const f32_t threshold, tpt_matrix_instance_f32 *aOutR, tpt_matrix_instance_f32 *aOutQ, f32_t *aOutTau, f32_t *aTmpA, f32_t *aTmpB) |
| QR decomposition of a matrix. | |
| tpt_status | tpt_mat_qr_f64 (const tpt_matrix_instance_f64 *aInMat, const f64_t threshold, tpt_matrix_instance_f64 *aOutR, tpt_matrix_instance_f64 *aOutQ, f64_t *aOutTau, f64_t *aTmpA, f64_t *aTmpB) |
| QR decomposition of a matrix. | |
| void | tpt_mat_add_f16 (f16_t *aOutMat, const f16_t *aInMatA, const f16_t *aInMatB, uint16_t aRows, uint16_t aCols) |
| Add two matrices. | |
| void | tpt_mat_cmplx_mult_f16 (f16_t *aOutMat, const f16_t *aInMatA, const f16_t *aInMatB, uint16_t aM, uint16_t aK, uint16_t aN) |
| Multiply two matrices. | |
| void | tpt_mat_eigenvalue_f32 (f32_t *aOutMat, f32_t *aInMat, uint16_t aN) |
| Eigenvalue of a matrix. | |
| void | tpt_mat_eigenvalue_f64 (f64_t *aOutMat, f64_t *aInMat, uint16_t aN) |
| Eigenvalue of a matrix. | |
| tpt_status | tpt_mat_inverse_f16 (f16_t *aOutMat, f16_t *aInMat, uint16_t aN) |
| Inverse of a matrix. | |
| void | tpt_mat_max_eigenvalue_f32 (f32_t *aResult, const f32_t *aInMat, uint16_t aN) |
| Maximum eigenvalue of a matrix. | |
| void | tpt_mat_max_eigenvalue_f64 (f64_t *aResult, const f64_t *aInMat, uint16_t aN) |
| Maximum eigenvalue of a matrix. | |
| void | tpt_mat_mult_f16 (f16_t *aOutMat, const f16_t *aInMatA, const f16_t *aInMatB, uint16_t aM, uint16_t aK, uint16_t aN) |
| Multiply two matrices. | |
| void | tpt_mat_scale_f16 (f16_t *aOutMat, const f16_t *aInMat, uint16_t aRows, uint16_t aCols, f16_t aScale) |
| Scale a matrix. | |
| tpt_status | tpt_mat_solve_lower_triangular_f16 (f16_t *aOutMat, const f16_t *aInDataL, const f16_t *aInDataA, uint16_t aRows, uint16_t aCols) |
| Solve lower triangular matrix equation. | |
| tpt_status | tpt_mat_solve_upper_triangular_f16 (f16_t *aOutMat, const f16_t *aInDataU, const f16_t *aInDataA, uint16_t aRows, uint16_t aCols) |
| Solve upper triangular matrix equation. | |
| void | tpt_mat_sub_f16 (f16_t *aOutMat, const f16_t *aInMatA, const f16_t *aInMatB, uint16_t aRows, uint16_t aCols) |
| Subtract two matrices. | |
| void | tpt_mat_trans_f16 (f16_t *aOutMat, f16_t *aInMat, uint16_t aRows, uint16_t aCols) |
| Transpose a matrix f16. | |
| tpt_status | tpt_qr_decompose_f32 (f32_t *aOutMatQ, f32_t *aOutMatR, const f32_t *aInMat, uint16_t aN) |
| QR decomposition of a matrix f32. | |
| tpt_status | tpt_qr_decompose_f64 (f64_t *aOutMatQ, f64_t *aOutMatR, const f64_t *aInMat, uint16_t aN) |
| QR decomposition of a matrix f64. | |
| #define CMPLX_DIM 2 |
Dimension of complex vector space.
| #define COPY_COL_F16 | ( | A, | |
| ROW, | |||
| COL, | |||
| DST ) |
| #define COPY_COL_F32 | ( | A, | |
| ROW, | |||
| COL, | |||
| DST ) |
| #define COPY_COL_F64 | ( | A, | |
| ROW, | |||
| COL, | |||
| DST ) |
| #define MAC_ROW_F32 | ( | COL, | |
| A, | |||
| i, | |||
| v, | |||
| B, | |||
| j ) |
| #define MAC_ROW_F64 | ( | COL, | |
| A, | |||
| i, | |||
| v, | |||
| B, | |||
| j ) |
| #define MAS_ROW_F32 | ( | COL, | |
| A, | |||
| i, | |||
| v, | |||
| B, | |||
| j ) |
| #define MAS_ROW_F64 | ( | COL, | |
| A, | |||
| i, | |||
| v, | |||
| B, | |||
| j ) |
| #define SCALE_ROW_F32 | ( | A, | |
| COL, | |||
| v, | |||
| i ) |
| #define SCALE_ROW_F64 | ( | A, | |
| COL, | |||
| v, | |||
| i ) |
| #define SWAP_COLS_F32 | ( | A, | |
| COL, | |||
| i, | |||
| j ) |
| #define SWAP_COLS_F64 | ( | A, | |
| COL, | |||
| i, | |||
| j ) |
| #define SWAP_ROWS_F32 | ( | A, | |
| COL, | |||
| i, | |||
| j ) |
| #define SWAP_ROWS_F32 | ( | A, | |
| COL, | |||
| i, | |||
| j ) |
| #define SWAP_ROWS_F64 | ( | A, | |
| COL, | |||
| i, | |||
| j ) |
| void tpt_mat_add_f16 | ( | f16_t * | aOutMat, |
| const f16_t * | aInMatA, | ||
| const f16_t * | aInMatB, | ||
| uint16_t | aRows, | ||
| uint16_t | aCols ) |
Add two matrices.
| [out] | aOutMat | points to output matrix |
| [in] | aInMatA | points to input matrix A |
| [in] | aInMatB | points to input matrix B |
| [in] | aRows | rows of matrix |
| [in] | aCols | columns of matrix |
| tpt_status tpt_mat_cholesky_f32 | ( | tpt_matrix_instance_f32 * | aOutMat, |
| const tpt_matrix_instance_f32 * | aInMat ) |
Cholesky decomposition of a symmetric positive definite matrix.
| [out] | aOutMat | points to output matrix structure |
| [in] | aInMat | points to the input matrix structure |
TPT_MATH_SIZE_MISMATCH or TPT_MATH_SUCCESS based on the outcome of size checking.| [out] | aOutMat | points to output matrix structure |
| [in] | aInMat | points to the input matrix structure |
| tpt_status tpt_mat_cholesky_f64 | ( | tpt_matrix_instance_f64 * | aOutMat, |
| const tpt_matrix_instance_f64 * | aInMat ) |
Cholesky decomposition of a symmetric positive definite matrix.
| [out] | aOutMat | points to output matrix structure |
| [in] | aInMat | points to the input matrix structure |
TPT_MATH_SIZE_MISMATCH or TPT_MATH_SUCCESS based on the outcome of size checking.| [out] | aOutMat | points to output matrix structure |
| [in] | aInMat | points to the input matrix structure |
| void tpt_mat_cmplx_mult_f16 | ( | f16_t * | aOutMat, |
| const f16_t * | aInMatA, | ||
| const f16_t * | aInMatB, | ||
| uint16_t | aM, | ||
| uint16_t | aK, | ||
| uint16_t | aN ) |
Multiply two matrices.
| [out] | aOutMat | points to output matrix |
| [in] | aInMatA | points to input matrix A |
| [in] | aInMatB | points to input matrix B |
| [in] | aM | rows of matrix A |
| [in] | aK | columns of matrix A |
| [in] | aN | columns of matrix B |
Eigenvalue of a matrix.
| [out] | aOutMat | points to output matrix |
| [in] | aInMat | points to input matrix |
| [in] | aN | number of rows and columns of the matrix |
Eigenvalue of a matrix.
| [out] | aOutMat | points to output matrix |
| [in] | aInMat | points to input matrix |
| [in] | aN | number of rows and columns of the matrix |
| tpt_status tpt_mat_inverse_f16 | ( | f16_t * | aOutMat, |
| f16_t * | aInMat, | ||
| uint16_t | aN ) |
Inverse of a matrix.
| [out] | aOutMat | points to output matrix |
| [in] | aInMat | points to input matrix |
| [in] | aN | number of rows and columns of the matrix |
| tpt_status tpt_mat_ldlt_f32 | ( | tpt_matrix_instance_f32 * | aOutLowerTriangularMat, |
| tpt_matrix_instance_f32 * | aOutDiagonalMat, | ||
| uint16_t * | aOutPermutationVec, | ||
| const tpt_matrix_instance_f32 * | aInMat ) |
Floating-point LDL decomposition of Symmetric Positive Semi-Definite Matrix.
| [out] | aOutLowerTriangularMat | points to the output floating-point triangular matrix structure. |
| [out] | aOutDiagonalMat | points to the output floating-point diagonal matrix structure. |
| [out] | aOutPermutationVec | points to the output permutation vector. |
| [in] | aInMat | points to the input floating-point matrix structure. |
Floating-point LDL decomposition of Symmetric Positive Semi-Definite Matrix.
| [out] | aOutLowerTriangularMat | lower matrix output |
| [out] | aOutDiagonalMat | diagonal matrix output |
| [out] | aOutPermutationVec | permutation vector |
| [in] | aInMat | input matrix |
| tpt_status tpt_mat_ldlt_f64 | ( | tpt_matrix_instance_f64 * | aOutLowerTriangularMat, |
| tpt_matrix_instance_f64 * | aOutDiagonalMat, | ||
| uint16_t * | aOutPermutationVec, | ||
| const tpt_matrix_instance_f64 * | aInMat ) |
Floating-point LDL decomposition of Symmetric Positive Semi-Definite Matrix.
| [out] | aOutLowerTriangularMat | points to the output floating-point triangular matrix structure. |
| [out] | aOutDiagonalMat | points to the output floating-point diagonal matrix structure. |
| [out] | aOutPermutationVec | points to the output permutation vector. |
| [in] | aInMat | points to the input floating-point matrix structure. |
Floating-point LDL decomposition of Symmetric Positive Semi-Definite Matrix.
| [out] | aOutLowerTriangularMat | lower matrix output |
| [out] | aOutDiagonalMat | diagonal matrix output |
| [out] | aOutPermutationVec | permutation vector |
| [in] | aInMat | input matrix |
Maximum eigenvalue of a matrix.
| [out] | aResult | points to output matrix |
| [in] | aInMat | points to input matrix |
| [in] | aN | number of rows and columns of the matrix |
Maximum eigenvalue of a matrix.
| [out] | aResult | points to output matrix |
| [in] | aInMat | points to input matrix |
| [in] | aN | number of rows and columns of the matrix |
| void tpt_mat_mult_f16 | ( | f16_t * | aOutMat, |
| const f16_t * | aInMatA, | ||
| const f16_t * | aInMatB, | ||
| uint16_t | aM, | ||
| uint16_t | aK, | ||
| uint16_t | aN ) |
Multiply two matrices.
| [out] | aOutMat | points to output matrix |
| [in] | aInMatA | points to input matrix A |
| [in] | aInMatB | points to input matrix B |
| [in] | aM | rows of matrix A |
| [in] | aK | columns of matrix A |
| [in] | aN | columns of matrix B |
| tpt_status tpt_mat_mult_fast_q15 | ( | tpt_matrix_instance_q15 * | aOutMat, |
| const tpt_matrix_instance_q15 * | aInMatA, | ||
| const tpt_matrix_instance_q15 * | aInMatB, | ||
| q15_t * | aState ) |
Q15 matrix multiplication. (fast variant).
| [out] | aOutMat | points to output matrix structure |
| [in] | aInMatA | points to the first input matrix structure |
| [in] | aInMatB | points to the second input matrix structure |
| [in] | aState | points to the array for storing intermediate results |
TPT_MATH_SIZE_MISMATCH or TPT_MATH_SUCCESS based on the outcome of size checking. | tpt_status tpt_mat_mult_fast_q31 | ( | tpt_matrix_instance_q31 * | aOutMat, |
| const tpt_matrix_instance_q31 * | aInMatA, | ||
| const tpt_matrix_instance_q31 * | aInMatB ) |
Q31 matrix multiplication. (fast variant).
| [out] | aOutMat | points to output matrix structure |
| [in] | aInMatA | points to the first input matrix structure |
| [in] | aInMatB | points to the second input matrix structure |
TPT_MATH_SIZE_MISMATCH or TPT_MATH_SUCCESS based on the outcome of size checking. | tpt_status tpt_mat_mult_opt_q31 | ( | tpt_matrix_instance_q31 * | aOutMat, |
| const tpt_matrix_instance_q31 * | aInMatA, | ||
| const tpt_matrix_instance_q31 * | aInMatB, | ||
| q31_t * | aState ) |
Q31 matrix multiplication. (fast variant).
| [out] | aOutMat | points to output matrix structure |
| [in] | aInMatA | points to the first input matrix structure |
| [in] | aInMatB | points to the second input matrix structure |
| [in] | aState | points to the array for storing intermediate results |
TPT_MATH_SIZE_MISMATCH or TPT_MATH_SUCCESS based on the outcome of size checking. | void tpt_mat_scale_f16 | ( | f16_t * | aOutMat, |
| const f16_t * | aInMat, | ||
| uint16_t | aRows, | ||
| uint16_t | aCols, | ||
| f16_t | aScale ) |
Scale a matrix.
| [out] | aOutMat | points to output matrix |
| [in] | aInMat | points to input matrix |
| [in] | aRows | rows of matrix |
| [in] | aCols | columns of matrix |
| [in] | aScale | scale factor |
| tpt_status tpt_mat_solve_lower_triangular_f16 | ( | f16_t * | aOutMat, |
| const f16_t * | aInDataL, | ||
| const f16_t * | aInDataA, | ||
| uint16_t | aRows, | ||
| uint16_t | aCols ) |
Solve lower triangular matrix equation.
| [out] | aOutMat | points to output matrix |
| [in] | aInDataL | points to input matrix L |
| [in] | aInDataA | points to input matrix A |
| [in] | aRows | rows of matrix |
| [in] | aCols | columns of matrix |
| tpt_status tpt_mat_solve_lower_triangular_f32 | ( | const tpt_matrix_instance_f32 * | aLowerTriangularMat, |
| const tpt_matrix_instance_f32 * | aInMat, | ||
| tpt_matrix_instance_f32 * | aOutMat ) |
Solve LT . X = A where LT is a lower triangular matrix.
| [in] | aLowerTriangularMat | The lower triangular matrix |
| [in] | aInMat | The input matrix A |
| [out] | aOutMat | The solution X of LT . X = A |
| [out] | aOutMat | points to output matrix |
| [in] | aLowerTriangularMat | The lower triangular matrix |
| [in] | aInMat | The matrix A |
| tpt_status tpt_mat_solve_lower_triangular_f64 | ( | const tpt_matrix_instance_f64 * | aLowerTriangularMat, |
| const tpt_matrix_instance_f64 * | aInMat, | ||
| tpt_matrix_instance_f64 * | aOutMat ) |
Solve LT . X = A where LT is a lower triangular matrix.
| [in] | aLowerTriangularMat | The lower triangular matrix |
| [in] | aInMat | The input matrix A |
| [out] | aOutMat | The solution X of LT . X = A |
| [out] | aOutMat | points to output matrix |
| [in] | aLowerTriangularMat | The lower triangular matrix |
| [in] | aInMat | The matrix A |
| tpt_status tpt_mat_solve_upper_triangular_f16 | ( | f16_t * | aOutMat, |
| const f16_t * | aInDataU, | ||
| const f16_t * | aInDataA, | ||
| uint16_t | aRows, | ||
| uint16_t | aCols ) |
Solve upper triangular matrix equation.
| [out] | aOutMat | points to output matrix |
| [in] | aInDataU | points to input matrix U |
| [in] | aInDataA | points to input matrix A |
| [in] | aRows | rows of matrix |
| [in] | aCols | columns of matrix |
| void tpt_mat_sub_f16 | ( | f16_t * | aOutMat, |
| const f16_t * | aInMatA, | ||
| const f16_t * | aInMatB, | ||
| uint16_t | aRows, | ||
| uint16_t | aCols ) |
Subtract two matrices.
| [out] | aOutMat | points to output matrix |
| [in] | aInMatA | points to input matrix A |
| [in] | aInMatB | points to input matrix B |
| [in] | aRows | rows of matrix |
| [in] | aCols | columns of matrix |
| void tpt_mat_trans_f16 | ( | f16_t * | aOutMat, |
| f16_t * | aInMat, | ||
| uint16_t | aRows, | ||
| uint16_t | aCols ) |
Transpose a matrix f16.
| [out] | aOutMat | points to output matrix |
| [in] | aInMat | points to input matrix |
| [in] | aRows | rows of matrix |
| [in] | aCols | columns of matrix |
| tpt_status tpt_qr_decompose_f32 | ( | f32_t * | aOutMatQ, |
| f32_t * | aOutMatR, | ||
| const f32_t * | aInMat, | ||
| uint16_t | aN ) |
QR decomposition of a matrix f32.
| [out] | aOutMatQ | points to output matrix Q |
| [out] | aOutMatR | points to output matrix R |
| [in] | aInMat | points to input matrix |
| [in] | aN | number of rows and columns of the matrix |
QR decomposition of a matrix f32.
| [out] | aOutMatQ | points to output matrix Q |
| [out] | aOutMatR | points to output matrix R |
| [in] | aInMat | points to input matrix |
| [in] | aN | number of rows and columns of the matrix |
| tpt_status tpt_qr_decompose_f64 | ( | f64_t * | aOutMatQ, |
| f64_t * | aOutMatR, | ||
| const f64_t * | aInMat, | ||
| uint16_t | aN ) |
QR decomposition of a matrix f64.
| [out] | aOutMatQ | points to output matrix Q |
| [out] | aOutMatR | points to output matrix R |
| [in] | aInMat | points to input matrix |
| [in] | aN | number of rows and columns of the matrix |
QR decomposition of a matrix f64.
| [out] | aOutMatQ | points to output matrix Q |
| [out] | aOutMatR | points to output matrix R |
| [in] | aInMat | points to input matrix |
| [in] | aN | number of rows and columns of the matrix |