code: public double[][] solve(double[][] B) {
      if(B.length != L.length) {
        throw new IllegalArgumentException(ERR_MATRIX_DIMENSIONS);
      }
      if(!isspd) {
        throw new ArithmeticException(ERR_MATRIX_NOT_SPD);
      }
      // Work on a copy!
      return solveLtransposed(solveL(copy(B)));
    }
docs: Solve A*X = B
  
  @param B A Matrix with as many rows as A and any number of columns.
  @return X so that L*L^T*X = B
  @exception IllegalArgumentException Matrix row dimensions must agree.
  @exception RuntimeException Matrix is not symmetric positive definite.