/** * Extracts a row or column from this matrix. The returned vector will either be a row or column * vector depending on the input type. * * @param extractRow If true a row will be extracted. * @param element The row or column the vector is contained in. * @return Extracted vector. */ public T extractVector(boolean extractRow, int element) { int length = extractRow ? mat.numCols : mat.numRows; T ret = extractRow ? createMatrix(1, length) : createMatrix(length, 1); if (extractRow) { SpecializedOps.subvector(mat, element, 0, length, true, 0, ret.getMatrix()); } else { SpecializedOps.subvector(mat, 0, element, length, false, 0, ret.getMatrix()); } return ret; }