numpy.polynomial#

Подпакет для эффективной работы с полиномами.

В документации этого подпакета "конечный степенной ряд", т.е. полином (также называемый просто "рядом"), представлен 1-мерным массивом numpy коэффициентов полинома, упорядоченных от младшего члена к старшему. Например, array([1,2,3]) представляет P_0 + 2*P_1 + 3*P_2, где P_n – это базовый полином n-го порядка, применимый к конкретному модулю, например, polynomial (который «оборачивает» «стандартный» базис) или chebyshevДля оптимальной производительности все операции с полиномами, включая вычисление значения в аргументе, реализованы как операции с коэффициентами. Дополнительную (специфичную для модуля) информацию можно найти в строке документации интересующего модуля.

Этот пакет предоставляет удобные классы для каждого из шести различных видов полиномов:

Name

Предоставляет

Polynomial

Степенные ряды

Chebyshev

Ряд Чебышёва

Legendre

Ряд Лежандра

Laguerre

Ряд Лагерра

Hermite

Ряд Эрмита

HermiteE

Ряд Эрмита-Эйлера

Эти удобные классы предоставляют согласованный интерфейс для создания, манипулирования и подгонки данных с полиномами разных базисов. Удобные классы являются предпочтительным интерфейсом для polynomial пакет, и доступны из numpy.polynomial пространстве имён. Это устраняет необходимость перехода к соответствующим подмодулям, например, np.polynomial.Polynomial или np.polynomial.Chebyshev вместо np.polynomial.polynomial.Polynomial или np.polynomial.chebyshev.Chebyshev, соответственно. Классы предоставляют более последовательный и лаконичный интерфейс, чем специфичные для типа функции, определенные в подмодулях для каждого типа полинома. Например, чтобы подогнать полином Чебышева степени 1 к данным, предоставленным массивами xdata и ydata, fit метод класса:

>>> from numpy.polynomial import Chebyshev
>>> xdata = [1, 2, 3, 4]
>>> ydata = [1, 4, 9, 16]
>>> c = Chebyshev.fit(xdata, ydata, deg=1)

предпочтительнее, чем chebyshev.chebfit функция из np.polynomial.chebyshev модуль:

>>> from numpy.polynomial.chebyshev import chebfit
>>> c = chebfit(xdata, ydata, deg=1)

См. Использование удобных классов для получения дополнительной информации.

Удобные классы#

чтобы указать, что это приватный подмодуль. Все публичные функции, экспортируемые им, должны быть доступны из Poly представляет любой из удобных классов (например, Polynomial, Chebyshev, Hermite, и т.д.) тогда как строчные p представляет собой экземпляр класса полинома.

Константы#

  • Poly.domain – Домен по умолчанию

  • Poly.window – Окно по умолчанию

  • Poly.basis_name – Строка, используемая для представления базиса

  • Poly.maxpower – Максимальное значение n такой, что p**n разрешено

Создание#

Методы создания экземпляров полиномов.

  • Poly.basis(degree) – Базовый полином заданной степени

  • Poly.identity()p где p(x) = x для всех x

  • Poly.fit(x, y, deg)p степени deg с коэффициентами, определенными методом наименьших квадратов для данных x, y

  • Poly.fromroots(roots)p с указанными корнями

  • p.copy() – Создать копию p

Преобразование#

Методы преобразования экземпляра полинома одного вида в другой.

  • p.cast(Poly) – Преобразовать p к экземпляру типа Poly

  • p.convert(Poly) – Преобразовать p к экземпляру типа Poly или сопоставлять между domain и window

Исчисление#

  • p.deriv() – Взять производную от p

  • p.integ() – Интегрировать p

Проверка#

  • Poly.has_samecoef(p1, p2) – Проверить, совпадают ли коэффициенты

  • Poly.has_samedomain(p1, p2) – Проверить, совпадают ли домены

  • Poly.has_sametype(p1, p2) – Проверка соответствия типов

  • Poly.has_samewindow(p1, p2) – Проверить, совпадают ли окна

Разное#

  • p.linspace() – Вернуть x, p(x) в равноотстоящих точках в domain

  • p.mapparms() – Возвращает параметры для линейного отображения между domain и window.

  • p.roots() – Возвращает корни p.

  • p.trim() – Удалить конечные коэффициенты.

  • p.cutdeg(degree) – Обрезать p до заданной степени

  • p.truncate(size) – Обрезать p до заданного размера

Конфигурация#

numpy.polynomial.set_default_printstyle(стиль)

Установить формат по умолчанию для строкового представления полиномов.