for (int i = getNumObjectiveFunctions(); i < getArtificialVariableOffset(); i++) { if (MathUtils.compareTo(tableau.getEntry(0, i), 0, epsilon) > 0) { columnsToDrop.add(i); int col = i + getArtificialVariableOffset(); if (getBasicRow(col) == null) { columnsToDrop.add(col);
for (int i = getNumObjectiveFunctions(); i < getArtificialVariableOffset(); i++) { if (MathUtils.compareTo(tableau.getEntry(0, i), 0, epsilon) > 0) { columnsToDrop.add(i); int col = i + getArtificialVariableOffset(); if (getBasicRow(col) == null) { columnsToDrop.add(col);
int column = i + tableau.getArtificialVariableOffset(); if (MathUtils.equals(tableau.getEntry(row, column), 1, epsilon) && row.equals(tableau.getBasicRow(column))) {
int column = i + tableau.getArtificialVariableOffset(); if (MathUtils.equals(tableau.getEntry(row, column), 1, epsilon) && row.equals(tableau.getBasicRow(column))) {
matrix.setEntry(0, getArtificialVariableOffset() + artificialVar, 1); matrix.setEntry(row, getArtificialVariableOffset() + artificialVar++, 1); matrix.setRowVector(0, matrix.getRowVector(0).subtract(matrix.getRowVector(row)));
matrix.setEntry(0, getArtificialVariableOffset() + artificialVar, 1); matrix.setEntry(row, getArtificialVariableOffset() + artificialVar++, 1); matrix.setRowVector(0, matrix.getRowVector(0).subtract(matrix.getRowVector(row)));