public static void sprstx(int [] sa, int [] ija,  int [] x, double [] b) throws NRException
{
    int i,j,k;

    int n = x.length;
    if (ija[0] != (n+1))
        throw new NRException("mismatched vector and matrix in sprstx");
    for (i=0; i<n; i++)  b[i] = sa[i]*x[i];
    for (i=0; i<n; i++) {
        for (k=ija[i]; k<ija[i+1]; k++) {
            j = ija[k];
            b[j] += sa[k]*x[i];
	}
  }
}