/* * declare routines available from mat.c and svd.c */ double geteps( void); void matprint( FILE *fp, char *format, double *a[], int m, int n, double tol, int io, int num); void matcopy( double *a[], double *b[], int m, int n); void mattrans( double *b[], double *a[], int m, int n); void mattrans1( double *a[], int m); void matmul( double *x[], double *y[], double *z[], int m, int n, int p); double dot( double *y[], double *z[], int n); double **matcreate( int m, int n); void matfree( double **a); double norm(double *a[], int m, int n); void ones( double *a[], int m, int n); void zeros( double *a[], int m, int n); void eye( double *a[], int m, int n); void qr( double *q[], double *r[], int m, int n); int svd( double *u[], double *z[], double *v[], int m, int n); /* * m error routine */ void error( char *, char *); /* main.c */