24 lines
1.2 KiB
C
24 lines
1.2 KiB
C
|
|
|
||
|
|
#include <math.h>
|
||
|
|
|
||
|
|
int mtxCpy(double* pMtx1, double* pMtx2, int row, int col);
|
||
|
|
double norm(double* pMtx0, int cnt);
|
||
|
|
void CrossMatrixGet(double element1[3][3], double B[3]);
|
||
|
|
void qleft(double Q1[4][4], double qinn[4]);
|
||
|
|
int mtxMtp(double* pMtx0, double* pMtx1, int row1, int col1, double* pMtx2, int row2, int col2);
|
||
|
|
void euler2qua(double q[4], double euler_angle[3]);
|
||
|
|
void CrossMatrixGet(double element1[3][3], double B[3]);
|
||
|
|
double mtxDet(double* pMtx0, int n);
|
||
|
|
void mtxInv(double* pMtx0, double* pMtx1, int n);
|
||
|
|
void mtxT(double* pMtx0, double* pMtx1, int row, int col);
|
||
|
|
void mtxAdd(double* pMtx0, double* pMtx1, double* pMtx2, int row, int col);
|
||
|
|
void mtxSub(double* pMtx0, double* pMtx1, double* pMtx2, int row, int col);
|
||
|
|
void TransQ(double Q[3][3], double q[4]);
|
||
|
|
double randn();
|
||
|
|
void MtxJtoOGet(double MtxJtoO[3][3], double orbInfo[6]);
|
||
|
|
void A2q(double q[4], double A[3][3]);
|
||
|
|
int sign(double x);
|
||
|
|
void qua2euler(double euler_angle[3], double q[4], double euler_angle_last[3]);
|
||
|
|
void Fun_Mtx_ECI2LVLH(double* R, double* V, double* Mtx_ECI2LVLH);
|
||
|
|
void FunECI2LVLH(double RLVLH[3], double RVLVLH[6], double RVChaECI[6], double RVTarECI[6]);
|
||
|
|
void VecCross(double* pMtx0, double* pMtx1, double* pMtx2);
|