70 lines
2.8 KiB
C
70 lines
2.8 KiB
C
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
#ifndef _MATRIX_H_
|
|
#define _MATRIX_H_
|
|
|
|
#include "pdr_base.h"
|
|
|
|
/**---------------------------------------------------------------------
|
|
* Function : m_trans
|
|
* Description : 矩阵转置
|
|
* Date : 2020/02/10 yuanlin_rjyb@vivo.com & zhanli@vivo.com
|
|
*---------------------------------------------------------------------**/
|
|
void m_trans(double a[N][N], double r[N][N]);
|
|
|
|
/**---------------------------------------------------------------------
|
|
* Function : vm_mlt
|
|
* Description : 向量和矩阵相乘 r = b * a
|
|
* Date : 2020/02/10 yuanlin_rjyb@vivo.com & zhanli@vivo.com
|
|
*---------------------------------------------------------------------**/
|
|
void vm_mlt(double a[N], double b[N][N], double r[N]);
|
|
|
|
/**---------------------------------------------------------------------
|
|
* Function : mm_mlt
|
|
* Description : 矩阵和矩阵相乘 r = a * b
|
|
* Date : 2020/02/10 yuanlin_rjyb@vivo.com & zhanli@vivo.com
|
|
*---------------------------------------------------------------------**/
|
|
void mm_mlt(double a[N][N], double b[N][N], double r[N][N]);
|
|
|
|
/**---------------------------------------------------------------------
|
|
* Function : m_add
|
|
* Description : 矩阵和矩阵相加 r = a + b, 注意这个函数支持a = a + b
|
|
* Date : 2020/02/10 yuanlin_rjyb@vivo.com & zhanli@vivo.com
|
|
*---------------------------------------------------------------------**/
|
|
void m_add(double a[N][N], double b[N][N], double r[N][N]);
|
|
|
|
/**---------------------------------------------------------------------
|
|
* Function : v_add
|
|
* Description : 向量和向量相加 r = a + b, 注意这个函数支持a = a + b
|
|
* Date : 2020/02/10 yuanlin_rjyb@vivo.com & zhanli@vivo.com
|
|
*---------------------------------------------------------------------**/
|
|
void v_add(double a[N], double b[N], double r[N]);
|
|
|
|
/**---------------------------------------------------------------------
|
|
* Function : m_sub
|
|
* Description : 矩阵和矩阵相减 r = a - b, 注意这个函数支持a = a - b
|
|
* Date : 2020/02/10 yuanlin_rjyb@vivo.com & zhanli@vivo.com
|
|
*---------------------------------------------------------------------**/
|
|
void m_sub(double a[N][N], double b[N][N], double r[N][N]);
|
|
|
|
/**---------------------------------------------------------------------
|
|
* Function : v_sub
|
|
* Description : 向量和向量相减 r = a - b, 注意这个函数支持a = a - b
|
|
* Date : 2020/02/10 yuanlin_rjyb@vivo.com & zhanli@vivo.com
|
|
*---------------------------------------------------------------------**/
|
|
void v_sub(double a[N], double b[N], double r[N]);
|
|
|
|
/**---------------------------------------------------------------------
|
|
* Function : m_inverse
|
|
* Description : 求矩阵的逆矩阵
|
|
* Date : 2020/02/10 yuanlin_rjyb@vivo.com & zhanli@vivo.com
|
|
*---------------------------------------------------------------------**/
|
|
void m_inverse(double(*a)[N], double(*a_inverse)[N]);
|
|
|
|
#endif
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif |