PDR/3.BackUp/PDR-Origin-Version/include/pdr_matrix.h

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