test_class.declarator: testL
test_class.modifier: private
test_class.original_string: private Matrix testL;
test_class.type: Matrix
test_class.var_name: testL
test_class.declarator: testU
test_class.modifier: private
test_class.original_string: private Matrix testU;
test_class.type: Matrix
test_class.var_name: testU
test_class.declarator: testP
test_class.modifier: private
test_class.original_string: private Matrix testP;
test_class.type: Matrix
test_class.var_name: testP
test_class.declarator: testMatrix
test_class.modifier: private
test_class.original_string: private Matrix testMatrix;
test_class.type: Matrix
test_class.var_name: testMatrix
test_class.declarator: rawPivot
test_class.modifier: private
test_class.original_string: private int[] rawPivot;
test_class.type: int[]
test_class.var_name: rawPivot
test_class.file: modules/ml/src/test/java/org/apache/ignite/ml/math/primitives/matrix/LUDecompositionTest.java
test_class.identifier: LUDecompositionTest
test_case.body: @Test(expected = SingularMatrixException.class)
      public void solveMtxSingularMatrix() throws Exception {
          new LUDecomposition(new DenseMatrix(testMatrix.rowSize(), testMatrix.rowSize()))
              .solve(new DenseMatrix(testMatrix.rowSize(), testMatrix.rowSize()));
      }
test_case.class_method_signature: LUDecompositionTest.solveMtxSingularMatrix()
test_case.full_signature: @Test(expected = SingularMatrixException.class) public void solveMtxSingularMatrix()
test_case.identifier: solveMtxSingularMatrix
test_case.invocations: solve rowSize rowSize rowSize rowSize
test_case.modifiers: @Test(expected = SingularMatrixException.class) public
test_case.parameters: ()
test_case.return: void
test_case.signature: void solveMtxSingularMatrix()
focal_class.declarator: DEFAULT_TOO_SMALL = 1e-11
focal_class.modifier: private static final
focal_class.original_string: private static final double DEFAULT_TOO_SMALL = 1e-11;
focal_class.type: double
focal_class.var_name: DEFAULT_TOO_SMALL
focal_class.declarator: pivot
focal_class.modifier: private final
focal_class.original_string: private final Vector pivot;
focal_class.type: Vector
focal_class.var_name: pivot
focal_class.declarator: even
focal_class.modifier: private
focal_class.original_string: private boolean even;
focal_class.type: boolean
focal_class.var_name: even
focal_class.declarator: singular
focal_class.modifier: private
focal_class.original_string: private boolean singular;
focal_class.type: boolean
focal_class.var_name: singular
focal_class.declarator: cachedL
focal_class.modifier: private
focal_class.original_string: private Matrix cachedL;
focal_class.type: Matrix
focal_class.var_name: cachedL
focal_class.declarator: cachedU
focal_class.modifier: private
focal_class.original_string: private Matrix cachedU;
focal_class.type: Matrix
focal_class.var_name: cachedU
focal_class.declarator: cachedP
focal_class.modifier: private
focal_class.original_string: private Matrix cachedP;
focal_class.type: Matrix
focal_class.var_name: cachedP
focal_class.declarator: matrix
focal_class.modifier: private
focal_class.original_string: private Matrix matrix;
focal_class.type: Matrix
focal_class.var_name: matrix
focal_class.declarator: lu
focal_class.modifier: private
focal_class.original_string: private Matrix lu;
focal_class.type: Matrix
focal_class.var_name: lu
focal_class.file: modules/ml/src/main/java/org/apache/ignite/ml/math/primitives/matrix/LUDecomposition.java
focal_class.identifier: LUDecomposition
focal_class.interfaces: implements AutoCloseable
focal_class.class_method_signature: LUDecomposition.LUDecomposition(Matrix matrix)
focal_class.full_signature: public  LUDecomposition(Matrix matrix)
focal_class.identifier: LUDecomposition
focal_class.modifiers: public
focal_class.parameters: (Matrix matrix)
focal_class.signature:  LUDecomposition(Matrix matrix)
focal_class.class_method_signature: LUDecomposition.LUDecomposition(Matrix matrix, double singularityThreshold)
focal_class.full_signature: public  LUDecomposition(Matrix matrix, double singularityThreshold)
focal_class.identifier: LUDecomposition
focal_class.modifiers: public
focal_class.parameters: (Matrix matrix, double singularityThreshold)
focal_class.signature:  LUDecomposition(Matrix matrix, double singularityThreshold)
focal_class.class_method_signature: LUDecomposition.close()
focal_class.full_signature: @Override public void close()
focal_class.identifier: close
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void close()
focal_class.class_method_signature: LUDecomposition.getL()
focal_class.full_signature: public Matrix getL()
focal_class.identifier: getL
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: Matrix
focal_class.signature: Matrix getL()
focal_class.class_method_signature: LUDecomposition.getU()
focal_class.full_signature: public Matrix getU()
focal_class.identifier: getU
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: Matrix
focal_class.signature: Matrix getU()
focal_class.class_method_signature: LUDecomposition.getP()
focal_class.full_signature: public Matrix getP()
focal_class.identifier: getP
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: Matrix
focal_class.signature: Matrix getP()
focal_class.class_method_signature: LUDecomposition.getPivot()
focal_class.full_signature: public Vector getPivot()
focal_class.identifier: getPivot
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: Vector
focal_class.signature: Vector getPivot()
focal_class.class_method_signature: LUDecomposition.determinant()
focal_class.full_signature: public double determinant()
focal_class.identifier: determinant
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: double
focal_class.signature: double determinant()
focal_class.class_method_signature: LUDecomposition.solve(Vector b)
focal_class.full_signature: public Vector solve(Vector b)
focal_class.identifier: solve
focal_class.modifiers: public
focal_class.parameters: (Vector b)
focal_class.return: Vector
focal_class.signature: Vector solve(Vector b)
focal_class.class_method_signature: LUDecomposition.solve(Matrix b)
focal_class.full_signature: public Matrix solve(Matrix b)
focal_class.identifier: solve
focal_class.modifiers: public
focal_class.parameters: (Matrix b)
focal_class.return: Matrix
focal_class.signature: Matrix solve(Matrix b)
focal_method.body: public Vector solve(Vector b) {
          final int m = pivot.size();
  
          if (b.size() != m)
              throw new CardinalityException(b.size(), m);
  
          if (singular)
              throw new SingularMatrixException();
  
          final double[] bp = new double[m];
  
          // Apply permutations to b
          for (int row = 0; row < m; row++)
              bp[row] = b.get((int)pivot.get(row));
  
          // Solve LY = b
          for (int col = 0; col < m; col++) {
              final double bpCol = bp[col];
  
              for (int i = col + 1; i < m; i++)
                  bp[i] -= bpCol * lu.get(i, col);
          }
  
          // Solve UX = Y
          for (int col = m - 1; col >= 0; col--) {
              bp[col] /= lu.get(col, col);
              final double bpCol = bp[col];
  
              for (int i = 0; i < col; i++)
                  bp[i] -= bpCol * lu.get(i, col);
          }
  
          return b.like(m).assign(bp);
      }
focal_method.class_method_signature: LUDecomposition.solve(Vector b)
focal_method.full_signature: public Vector solve(Vector b)
focal_method.identifier: solve
focal_method.invocations: size size size get get get get get assign like
focal_method.modifiers: public
focal_method.parameters: (Vector b)
focal_method.return: Vector
focal_method.signature: Vector solve(Vector b)