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 : <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD>
|
|||
|
* 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 : <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 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 : <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 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 : <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> r = a + b, ע<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֧<EFBFBD><EFBFBD>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 : <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> r = a + b, ע<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֧<EFBFBD><EFBFBD>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 : <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> r = a - b, ע<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֧<EFBFBD><EFBFBD>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 : <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> r = a - b, ע<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֧<EFBFBD><EFBFBD>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 : <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
* 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
|