void solsvdovr(float **u, float val[], float **v, int m, int n, float x[], float em[]) { float *allocate_real_vector(int, int); void free_real_vector(float *, int); float matvec(int, int, int, float **, float []); float tamvec(int, int, int, float **, float []); int i; float min,*x1; x1=allocate_real_vector(1,n); min=em[6]; for (i=1; i<=n; i++) x1[i] = (val[i] <= min) ? 0.0 : tamvec(1,m,i,u,x)/val[i]; for (i=1; i<=n; i++) x[i]=matvec(1,n,i,v,x1); free_real_vector(x1,1); }