alphas[i] = -sList.get(i).dot(dir) / roList.get(i);
addMult(dir, yList.get(i), alphas[i]);
}
DoubleVector lastY = yList.get(count - 1);
double yDotY = lastY.dot(lastY);
double scalar = roList.get(count - 1) / yDotY;
scale(dir, scalar);
for (int i = 0; i < count; i++) {
double beta = yList.get(i).dot(dir) / roList.get(i);