Class MarquardtMethodVersion1

java.lang.Object
NewtonMethods.marquardt.MarquardtCommon
NewtonMethods.marquardt.MarquardtMethodVersion1
All Implemented Interfaces:
interfaces.Method

public class MarquardtMethodVersion1
extends MarquardtCommon
класс для поиска минимума функции методом Марквардта без использования разложения Холецкого
  • Field Summary

    Fields inherited from class NewtonMethods.marquardt.MarquardtCommon

    beta, epsilon, lambda, solver
  • Constructor Summary

    Constructors 
    Constructor Description
    MarquardtMethodVersion1()
    дефолтный конструктор: СЛАУ будет решаться методом Гаусса с выбором опорного элемента по всей матрице точность - 10^-6 значение beta - 0.5 начальное значение lambda - 1000000000000000
    MarquardtMethodVersion1​(interfaces.Solver solver, double epsilon, double lambda, double beta)
    создаёт экземпляр класса с пользовательскими параметрами параметрами
  • Method Summary

    Modifier and Type Method Description
    private double findAlpha​(interfaces.Function f, double[] x, double[] p)  
    double[] findMinimum​(interfaces.Function function, double[] x0)
    метод находит минимум исследуемой функции, стартуя с указанного начального приближения
    double[] findMinimumWithLog​(interfaces.Function function, double[] x0, java.lang.String functionName)  
    private interfaces.MathFunction getOptimizedFunction​(interfaces.Function f, double[] x, double[] p)  

    Methods inherited from class NewtonMethods.marquardt.MarquardtCommon

    getI

    Methods inherited from class java.lang.Object

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

    • MarquardtMethodVersion1

      public MarquardtMethodVersion1()
      дефолтный конструктор:
      • СЛАУ будет решаться методом Гаусса с выбором опорного элемента по всей матрице
      • точность - 10^-6
      • значение beta - 0.5
      • начальное значение lambda - 1000000000000000
    • MarquardtMethodVersion1

      public MarquardtMethodVersion1​(interfaces.Solver solver, double epsilon, double lambda, double beta)

      создаёт экземпляр класса с пользовательскими параметрами параметрами

      MarquardtCommon
  • Method Details

    • findMinimum

      public double[] findMinimum​(interfaces.Function function, double[] x0)
      метод находит минимум исследуемой функции, стартуя с указанного начального приближения
      Parameters:
      function - исследуемая функция
      x0 - начальное приближение
      Returns:
      точка минимума функции
    • findMinimumWithLog

      public double[] findMinimumWithLog​(interfaces.Function function, double[] x0, java.lang.String functionName) throws java.lang.Exception
      Throws:
      java.lang.Exception
    • findAlpha

      private double findAlpha​(interfaces.Function f, double[] x, double[] p)
    • getOptimizedFunction

      private interfaces.MathFunction getOptimizedFunction​(interfaces.Function f, double[] x, double[] p)