SPRAAK
|
Basic matrix and vector operations. More...
Functions | |
int | spr_math_mat_print (SprStream *fd, const void *A, int nrows, int ncols, const SprDT *dt, const char *info) |
float * | spr_mat_f32_A_plus_scaleB_insitu (float *restrict mA, int size, const float *mB, float facB) |
float * | spr_mat_f32_scaleA_plus_B (float *restrict mC, int size, const float *mA, const float *mB, float facA) |
float * | spr_mat_f32_scaleA_plus_scaleB (float *restrict mC, int size, const float *mA, const float *mB, float facA, float facB) |
float * | spr_mat_f32_scaleA_insitu (float *restrict mA, float facA, int size) |
float * | spr_mat_f32_scaleA (float *restrict mC, int size, const float *mA, float facA) |
float * | spr_mat_f32_A_plus_B (float *restrict mC, int size, const float *mA, const float *mB) |
float * | spr_mat_f32_A_plus_B_insitu (float *restrict mA, int size, const float *mB) |
float * | spr_mat_f32_A_minus_B (float *restrict mC, int size, const float *mA, const float *mB) |
float * | spr_mat_f32_A_minus_B_insitu (float *restrict mA, int size, const float *mB) |
float * | spr_mat_f32_A_dotmul_B (float *restrict mC, int size, const float *mA, const float *mB) |
float * | spr_mat_f32_A_dotdiv_B (float *restrict mC, int size, const float *mA, const float *mB) |
double | spr_mat_f32_A_inprod_B (const float *mA, int size, const float *mB) |
double | spr_mat_f32_rowA_inprod_colB (const float *mA, int size, const float *mB, int ncolB) |
float * | spr_mat_f32_A_mul_B (float *restrict mC, const float *mA, int nrowA, int ncolA, const float *mB, int ncolB) |
float * | spr_mat_f32_At_mul_B (float *restrict mC, const float *mA, int nrowA, int ncolA, const float *mB, int ncolB) |
float * | spr_mat_f32_A_mul_Bt (float *restrict mC, const float *mA, int nrowA, int ncolA, const float *mB, int nrowB) |
float * | spr_mat_f32_At_mul_Bt (float *restrict mC, const float *mA, int nrowA, int ncolA, const float *mB, int nrowB) |
float * | spr_mat_f32_colA (float *restrict mC, const float *mA, int nrowA, int ncolA) |
float * | spr_mat_f32_At (float *restrict mC, const float *mA, int nrowA, int ncolA) |
double | spr_mat_f32_detA (float *restrict mA, float *restrict copy, int size) |
double | spr_mat_f32_norm2A (const float *mA, int size) |
double | spr_mat_f32_prodA (const float *mA, int size) |
double * | spr_mat_f64_A_plus_scaleB_insitu (double *restrict mA, int size, const double *mB, double facB) |
double * | spr_mat_f64_scaleA_plus_B (double *restrict mC, int size, const double *mA, const double *mB, double facA) |
double * | spr_mat_f64_scaleA_plus_scaleB (double *restrict mC, int size, const double *mA, const double *mB, double facA, double facB) |
double * | spr_mat_f64_scaleA_insitu (double *restrict mA, double facA, int size) |
double * | spr_mat_f64_scaleA (double *restrict mC, int size, const double *mA, double facA) |
double * | spr_mat_f64_A_plus_B (double *restrict mC, int size, const double *mA, const double *mB) |
double * | spr_mat_f64_A_plus_B_insitu (double *restrict mA, int size, const double *mB) |
double * | spr_mat_f64_A_minus_B (double *restrict mC, int size, const double *mA, const double *mB) |
double * | spr_mat_f64_A_minus_B_insitu (double *restrict mA, int size, const double *mB) |
double * | spr_mat_f64_A_dotmul_B (double *restrict mC, int size, const double *mA, const double *mB) |
double * | spr_mat_f64_A_dotdiv_B (double *restrict mC, int size, const double *mA, const double *mB) |
double | spr_mat_f64_A_inprod_B (const double *mA, int size, const double *mB) |
double | spr_mat_f64_rowA_inprod_colB (const double *mA, int size, const double *mB, int ncolB) |
double * | spr_mat_f64_A_mul_B (double *restrict mC, const double *mA, int nrowA, int ncolA, const double *mB, int ncolB) |
double * | spr_mat_f64_At_mul_B (double *restrict mC, const double *mA, int nrowA, int ncolA, const double *mB, int ncolB) |
double * | spr_mat_f64_A_mul_Bt (double *restrict mC, const double *mA, int nrowA, int ncolA, const double *mB, int nrowB) |
double * | spr_mat_f64_At_mul_Bt (double *restrict mC, const double *mA, int nrowA, int ncolA, const double *mB, int nrowB) |
double * | spr_mat_f64_colA (double *restrict mC, const double *mA, int nrowA, int ncolA) |
double * | spr_mat_f64_At (double *restrict mC, const double *mA, int nrowA, int ncolA) |
double | spr_mat_f64_detA (double *restrict mA, double *restrict copy, int size) |
double | spr_mat_f64_norm2A (const double *mA, int size) |
double | spr_mat_f64_prodA (const double *mA, int size) |
Basic matrix and vector operations.
Various routines for basic linear algebra. The routines work well for the relative small vector and matrix dimensions typically used in speech recognition but are not optimized for large matrices (e.g. block matrix multiplication).