Установка:

Для установки python3-lmfit в Ubuntu / Linux Mint / Debian, введите в Терминал:

sudo apt update
sudo apt install python3-lmfit

Подробная информация о пакете:

Минимизация минимальных квадратов с ограничениями (Python 3)

Пакет lmfit Python обеспечивает простой, гибкий интерфейс для нелинейной оптимизации или проблем с подгонкой кривой. Пакет расширяет возможности оптимизации scipy.optimize, заменяя значения с плавающей точкой для переменных, которые будут оптимизированы с помощью объектов Parameter. Эти параметры могут быть фиксированными или различными, иметь верхние и / или нижние границы, установленные по его значению, или записываться как алгебраическое выражение других параметров.

Основное преимущество использования параметров вместо простых переменных состоит в том, что целевую функцию не нужно переписывать, чтобы отражать каждое изменение того, что изменяется в подгонке, или какие отношения или ограничения помещаются в параметры. Это означает, что научный программист может написать общую модель, которая инкапсулирует оптимизируемое явление, а затем позволяет пользователю этой модели изменять то, что меняется и фиксировано, какой диапазон значений приемлем для параметров и какие ограничения помещаются на модели , Легкость, с которой может быть изменена модель, также позволяет легко проверить значимость определенных параметров в подходящей модели.

Пакет lmfit позволяет выбирать несколько методов оптимизации, доступных из scipy.optimize. Используемый по умолчанию и наиболее эффективный метод оптимизации — алгоритм Левенберга-Маркварда из MINPACK-1, реализованный в scipy.optimize.leastsq. Этот метод, безусловно, самый проверенный и лучший способ поддержки в lmfit, и большая часть этого документа предполагает, что этот алгоритм используется, если явно не указано. Важным моментом для многих научных исследований является то, что это только метод, который автоматически оценивает неопределенности и корреляции между установленными переменными из ковариационной матрицы, вычисленной во время подгонки.

Также поддерживаются несколько других подпрограмм оптимизации, в том числе простой спуск Nelder-Mead, метод Powell, методы COBYLA, Sequential Least Squares, реализованные в scipy.optimize.fmin и несколько других из scipy.optimize. В их собственной форме некоторые из этих методов устанавливают верхние или нижние границы переменных параметров или добавляют ограничения на установленные переменные. Используя объекты Parameter, lmfit разрешает ограничения и ограничения для всех этих методов и позволяет легко переключаться между методами без зависания целевой функции или набора параметров.

Наконец, поскольку подход, полученный из MINPACK-1 usin, ковариационная матрица для определения неопределенностей иногда подвергается сомнению (а иногда и по праву), lmfit поддерживает методы для поиска грубой силы доверительных интервалов и корреляций для наборов параметров.

Это версия пакета Python 3.

Зависимости:

  • python3

    интерактивный высокоуровневый объектно-ориентированный язык (версия python3 по умолчанию)

  • python3-numpy

    Быстрое создание массива на языке Python 3

  • python3-scipy

    научные инструменты для Python 3

  • python3-six

    Библиотека совместимости Python 2 и 3 (интерфейс Python 3)