- Timestamp:
- 10/29/10 19:10:03 (14 years ago)
- Files:
-
- 1 modified
Legend:
- Unmodified
- Added
- Removed
-
applications/pmsm/simulator_zdenek/ekf_example/matrix_vs.h
r1230 r1240 12 12 13 13 #define qAU 14 14 #define qD 14 15 16 #define int16 short int 17 #define int32 int 14 18 15 19 /* Matrix multiply Full matrix by upper diagonal matrix with unit diagonal; */ 16 extern void mmultAU(int *m1, int *up, int *result, unsigned int rows, unsigned intcolumns);20 extern void mmultAU(int16 *m1, int16 *up, int16 *result, unsigned int16 rows, unsigned int16 columns); 17 21 18 22 /* Matrix multiply Full matrix by upper diagonal matrix; */ 19 extern void mmultACh(int *m1, int *up, int *result, unsigned int rows, unsigned intcolumns);23 extern void mmultACh(int16 *m1, int16 *up, int16 *result, unsigned int16 rows, unsigned int16 columns); 20 24 21 25 /* perform Thorton update of UD matrix using PSI*U, Q, and temporaries G, Dold, for size dimx*/ 22 extern void thorton(int *U, int *D, int *PSIU, int *Q, int *G, int *Dold, unsigned intdimx);26 extern void thorton(int16 *U, int16 *D, int16 *PSIU, int16 *Q, int16 *G, int16 *Dold, unsigned int16 dimx); 23 27 24 28 /* perform Bierman update of UD matrix using difz, R and xp, for size dimx*/ 25 extern void bierman(int *difz, int *xp, int *U, int *D, int *R, unsigned int dimy, unsigned intdimx );29 extern void bierman(int16 *difz, int16 *xp, int16 *U, int16 *D, int16 *R, unsigned int16 dimy, unsigned int16 dimx ); 26 30 27 31 /* perform Thorton update of UD matrix using PSI*U, Q, and temporaries G, Dold, for size dimx*/ 28 extern void thorton_fast(int *U, int *D, int *PSIU, int *Q, int *G, int *Dold, unsigned intdimx);32 extern void thorton_fast(int16 *U, int16 *D, int16 *PSIU, int16 *Q, int16 *G, int16 *Dold, unsigned int16 dimx); 29 33 30 34 /* perform Bierman update of UD matrix using difz, R and xp, for size dimx*/ 31 extern void bierman_fast(int *difz, int *xp, int *U, int *D, int *R, unsigned int dimy, unsigned intdimx );35 extern void bierman_fast(int16 *difz, int16 *xp, int16 *U, int16 *D, int16 *R, unsigned int16 dimy, unsigned int16 dimx ); 32 36 33 37 /* perform Householder update of Ch matrix using PSI*Ch , Q, */ 34 extern void householder(int *Ch /*= int *PSICh*/, int *Q, unsigned intdimx);38 extern void householder(int16 *Ch /*= int16 *PSICh*/, int16 *Q, unsigned int16 dimx); 35 39 36 40 /* perform Givens update of Ch matrix using PSI*Ch , Q, */ 37 extern void givens(int *Ch /*= int *PSICh*/, int *Q, unsigned intdimx);41 extern void givens(int16 *Ch /*= int16 *PSICh*/, int16 *Q, unsigned int16 dimx); 38 42 39 43 /* perform Carlson update of Ch matrix using difz, R and xp, for size dimx*/ 40 extern void carlson(int *difz, int *xp, int *Ch, int *R, unsigned int dimy, unsigned intdimx );44 extern void carlson(int16 *difz, int16 *xp, int16 *Ch, int16 *R, unsigned int16 dimy, unsigned int16 dimx );