public double getCond() {
	if (cond == Double.MIN_VALUE) {
	    Double max = Double.MIN_VALUE;
	    Double min = Double.MAX_VALUE;
	    double[] sngValues = getSingularValues();
	    for (int idx = 0; idx < sngValues.length; idx++) {
		if (sngValues[idx] > max) {
		    max = sngValues[idx];
		}
		if (sngValues[idx] < min && sngValues[idx] > 1E-10) {
		    min = sngValues[idx];
		}
	    }
	    cond = max / min;
	}
	return cond;
    }