Package cholesky

Class CholeskySolver

java.lang.Object
cholesky.CholeskySolver
All Implemented Interfaces:
interfaces.Solver

public class CholeskySolver
extends java.lang.Object
implements interfaces.Solver
класс для решения СЛАУ методом Холецкого
  • Constructor Summary

    Constructors 
    Constructor Description
    CholeskySolver()  
  • Method Summary

    Modifier and Type Method Description
    double[][] decompose​(double[][] A, int dimension)
    реализует разложение Холецкого
    private void gaussBackward​(double[][] transposeL, double[] y)
    обратный ход Гаусса
    private void gaussForward​(double[][] L, double[] b)
    прямой ход гаусса
    double[] solve​(double[][] A, double[] B, double epsilon)
    решает СЛАУ

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

  • Method Details

    • decompose

      public double[][] decompose​(double[][] A, int dimension)
      реализует разложение Холецкого
      Parameters:
      A - исходная матрица
      dimension - размерность
      Returns:
      нижнетреугольная матрица L, такая что A = L * L^T, если разложение возможно
    • gaussForward

      private void gaussForward​(double[][] L, double[] b)
      прямой ход гаусса
      Parameters:
      L - нижнетреугольная матрица
      b - результирующий вектор
    • gaussBackward

      private void gaussBackward​(double[][] transposeL, double[] y)
      обратный ход Гаусса
      Parameters:
      transposeL - верхнетреуугольная матрица
      y - результирующий вектор
    • solve

      public double[] solve​(double[][] A, double[] B, double epsilon)
      решает СЛАУ
      Specified by:
      solve in interface interfaces.Solver
      Parameters:
      A - матрица коэффициентов
      B - результирующий вектор
      Returns:
      null, если матрицу A невозможно разложить методом Холецкого; иначе - решение СЛАУ