void svbksb(u,w,v,m,n,b,x) float **u,w[],**v,b[],x[]; int m,n; { int jj,j,i; float s,*tmp,*vector(); void free_vector(); tmp=vector(1,n); for (j=1;j<=n;j++) { s=0.0; if (w[j]) { for (i=1;i<=m;i++) s += u[i][j]*b[i]; s /= w[j]; } tmp[j]=s; } for (j=1;j<=n;j++) { s=0.0; for (jj=1;jj<=n;jj++) s += v[j][jj]*tmp[jj]; x[j]=s; } free_vector(tmp,1,n); }