#define SIZE 100 void Smult(float a[][SIZE], float target[][SIZE], float s, int n); void Mmult(float a[][SIZE], float b[][SIZE], float target[][SIZE], int n); void Mtranspose(float a[][SIZE], float target[][SIZE], int n); void Madd(float a[][SIZE], float b[][SIZE], float target[][SIZE], int n); void Msub(float a[][SIZE], float b[][SIZE], float target[][SIZE], int n); void Minvert(float a[][SIZE], float target[][SIZE], int n, int iterate); float Mmag(float a[][SIZE], int n); /* routines added 03/31/06 */ void Mortho(float target[][SIZE], int row, int col, float angle, int n); void Morthotrans(float SymM[][SIZE], int row, int col, float angle, int n); void Morthosweep(float SymM[][SIZE], int n); void Mprint(float a[][SIZE],int n); int Mread(float a[][SIZE],int n, char *filename); void Mortho(float target[][SIZE], int row, int col,float angle, int n){ /* creates an orthogonal matrix */ int i,j; for(i=0;i