diff --git a/src/matrix/2x2matrix.h b/src/matrix/2x2matrix.h new file mode 100644 index 0000000000000000000000000000000000000000..04f5db5f032c2aa6f8f277affb916a2fdff199a5 --- /dev/null +++ b/src/matrix/2x2matrix.h @@ -0,0 +1,24 @@ +#ifndef _2X2MATRIX_H +#define _2X2MATRIX_H +#define MATRIXCACHE2X2 10 +#include <stdint.h> +typedef struct{ + float a11,a12, + a21,a22; +}_2x2Matrix; + +typedef struct{ + float a11, + a21; +}_2x1Matrix; + +_2x2Matrix add_2x2(_2x2Matrix m1, _2x2Matrix m2); +_2x2Matrix minus_2x2(_2x2Matrix m1, _2x2Matrix m2); +_2x2Matrix multiply_2x2(_2x2Matrix m1, _2x2Matrix m2); +_2x2Matrix scale_2x2(_2x2Matrix m1, float scale); +float det_2x2(_2x2Matrix m); +_2x2Matrix inverse_2x2(_2x2Matrix m); +_2x1Matrix transpose_2x2(_2x2Matrix m1, _2x1Matrix m2); +unsigned char equals_2x2(_2x2Matrix m1, _2x2Matrix m2); + +#endif //_2X2MATRIX_H