Примечания к выпуску SciPy 1.14.0#

SciPy 1.14.0 — результат 3 месяцев напряженной работы. Он содержит множество новых функций, исправлений ошибок, улучшенное покрытие тестами и документацию. В этом выпуске произошло несколько устареваний и изменений API, которые описаны ниже. Всем пользователям рекомендуется обновиться до этой версии, так как в ней много исправлений ошибок и оптимизаций. Перед обновлением мы рекомендуем пользователям проверить, что их код не использует устаревшую функциональность SciPy (для этого запустите код с python -Wd и проверка на DeprecationWarning s). Наше внимание в разработке теперь переключится на выпуски исправлений ошибок в ветке 1.14.x и на добавление новых функций в основной ветке.

Для этого выпуска требуется Python 3.10+ и NumPy 1.23.5 или выше.

Для работы на PyPy требуется PyPy3 6.0+.

Основные моменты этого выпуска#

  • SciPy теперь поддерживает новую библиотеку Accelerate, представленную в macOS 13.3, и имеет сборки, скомпилированные с Accelerate для macOS >=14, что приводит к значительному повышению производительности для многих операций линейной алгебры.

  • Новый метод, cobyqa, была добавлена в scipy.optimize.minimize - это интерфейс для COBYQA (Constrained Optimization BY Quadratic Approximations), безызводного решателя оптимизации, разработанного для замены COBYLA, созданного кафедрой прикладной математики Гонконгского политехнического университета.

  • scipy.sparse.linalg.spsolve_triangular теперь более чем на порядок быстрее во многих случаях.

Новые возможности#

scipy.fft улучшения#

  • Новая функция, scipy.fft.prev_fast_len, был добавлен. Эта функция находит наибольший составной множитель из оснований БПФ, который меньше целевой длины. Она полезна для отбрасывания минимального количества выборок перед БПФ.

scipy.io улучшения#

  • wavfile теперь поддерживает чтение и запись wav файлы в формате RF64, позволяя обрабатывать файлы размером более 4 ГБ.

scipy.constants улучшения#

  • Добавлена экспериментальная поддержка стандарта Array API.

scipy.interpolate улучшения#

scipy.optimize улучшения#

  • scipy.optimize.HessianUpdateStrategy теперь также принимает квадратные массивы для init_scale.

  • Новый метод, cobyqa, была добавлена в scipy.optimize.minimize - это интерфейс для COBYQA (Constrained Optimization BY Quadratic Approximations), безызводного решателя оптимизации, разработанного для замены COBYLA, созданного кафедрой прикладной математики Гонконгского политехнического университета.

  • Есть некоторые улучшения производительности в scipy.optimize.differential_evolution.

  • scipy.optimize.approx_fprime теперь имеет линейную сложность по памяти.

scipy.signal улучшения#

  • scipy.signal.minimum_phase имеет новый аргумент half, позволяя предоставить фильтр той же длины, что и коэффициенты линейно-фазового КИХ-фильтра, и с таким же спектром амплитуд.

scipy.sparse улучшения#

  • Разреженные массивы теперь поддерживают одномерные формы в форматах COO, DOK и CSR. Это все форматы, для которых мы в настоящее время планируем поддержку одномерных форм. Другие форматы разреженных массивов вызывают исключение для одномерного ввода.

  • Методы разреженных массивов min/nanmin/argmin и аналоги для max теперь возвращают 1D массивы. Результаты по-прежнему являются разреженными массивами формата COO для min/nanmin и плотными np.ndarray для argmin.

  • Итерация по csr_array или csc_array дает 1D (CSC) массивы.

  • Объекты разреженных матриц и массивов улучшают свои repr и str вывод.

  • Добавлен специальный случай для обработки умножения dia_array скаляром, что позволяет избежать потенциально затратного преобразования в формат CSR.

  • scipy.sparse.csgraph.yen был добавлен, позволяя использовать алгоритм K-кратчайших путей Йена на ориентированном или неориентированном графе.

  • Сложение между разреженными массивами в формате DIA и матрицами теперь выполняется быстрее.

  • scipy.sparse.linalg.spsolve_triangular теперь более чем на порядок быстрее во многих случаях.

scipy.spatial улучшения#

  • Rotation поддерживает альтернативное соглашение о порядке компонентов кватерниона "скаляр-первый". Оно доступно через ключевой аргумент scalar_first of from_quat и as_quat методы.

  • Незначительные улучшения производительности для обращения Rotation объекты.

scipy.special улучшения#

  • Добавлен scipy.special.log_wright_bessel, для вычисления логарифма функции Бесселя Райта.

  • Относительная ошибка в scipy.special.hyp2f1 вычисления значительно улучшились.

  • Улучшено поведение boxcox, inv_boxcox, boxcox1p, и inv_boxcox1p предотвращая преждевременное переполнение.

scipy.stats улучшения#

  • Новая функция scipy.stats.power может использоваться для моделирования мощности критерия гипотезы относительно заданной альтернативы.

  • Распределение Ирвина-Холла (также известное как сумма равномерных) добавлено как scipy.stats.irwinhall.

  • Точные вычисления p-значения scipy.stats.mannwhitneyu значительно быстрее и используют меньше памяти.

  • scipy.stats.pearsonr теперь принимает n-мерные массивы и вычисляет статистику вдоль указанной axis.

  • scipy.stats.kstat, scipy.stats.kstatvar, и scipy.stats.bartlett быстрее выполняют вычисления вдоль оси большого n-мерного массива.

Поддержка стандарта Array API#

Экспериментальный поддержка библиотек массивов, отличных от NumPy, была добавлена в существующие подпакеты в последних версиях SciPy. Пожалуйста, рассмотрите возможность тестирования этих функций, установив переменную окружения SCIPY_ARRAY_API=1 и предоставление массивов PyTorch, JAX или CuPy в качестве аргументов массива.

Начиная с версии 1.14.0, добавлена поддержка

Устаревшие функции#

  • scipy.stats.gstd, scipy.stats.chisquare, и scipy.stats.power_divergence устарела поддержка ввода маскированных массивов.

  • scipy.stats.linregress устарела поддержка указания обоих образцов в одном аргументе; x и y должны предоставляться как отдельные аргументы.

  • The conjtransp метод для scipy.sparse.dok_array и scipy.sparse.dok_matrix устарел и будет удален в SciPy 1.16.0.

  • Опция quadrature="trapz" в scipy.integrate.quad_vec был устаревшим в пользу quadrature="trapezoid" и будет удален в SciPy 1.16.0.

  • scipy.special.{comb,perm} устарела поддержка использования exact=True в сочетании с нецелочисленным N и/или k.

Обратно несовместимые изменения#

  • Многие scipy.stats функции теперь выдают стандартизированное предупреждение, когда входная выборка слишком мала (например, нулевого размера). Ранее эти функции могли вызывать ошибку, выдавать одно или несколько менее информативных предупреждений или не выдавать предупреждений. В большинстве случаев возвращаемые результаты не изменяются; почти во всех случаях правильный результат NaN.

Устаревшие устаревания#

Ведется работа по завершению давно устаревших функций. Следующие ранее устаревшие возможности затронуты:

  • Несколько ранее устаревших методов для разреженных массивов были удалены: asfptype, getrow, getcol, get_shape, getmaxprint, set_shape, getnnz, и getformat. Кроме того, .A и .H атрибуты были удалены.

  • scipy.integrate.{simps,trapz,cumtrapz} были удалены в пользу simpson, trapezoid, и cumulative_trapezoid.

  • The tol аргумент scipy.sparse.linalg.{bcg,bicstab,cg,cgs,gcrotmk, mres,lgmres,minres,qmr,tfqmr} был удален в пользу rtol. Кроме того, значение по умолчанию для atol для этих функций изменилось на 0.0.

  • The restrt аргумент scipy.sparse.linalg.gmres был удалён в пользу restart.

  • The initial_lexsort аргумент scipy.stats.kendalltau был удалён.

  • The cond и rcond аргументы scipy.linalg.pinv были удалены.

  • The even аргумент scipy.integrate.simpson был удален.

  • The turbo и eigvals аргументы из scipy.linalg.{eigh,eigvalsh} были удалены.

  • The legacy аргумент scipy.special.comb был удален.

  • The hz/nyq аргумент signal.{firls, firwin, firwin2, remez} был удалён.

  • Объекты, которые не были частью публичного интерфейса, но были доступны через устаревшие подмодули, были удалены.

  • float128, float96, и массивы объектов теперь вызывают ошибку в scipy.signal.medfilt и scipy.signal.order_filter.

  • scipy.interpolate.interp2d был заменен пустой заглушкой (которая будет полностью удалена в будущем).

  • Совпадая с изменениями в сигнатурах функций (например, удалением устаревшего ключевого слова), мы объявили устаревшим позиционное использование ключевых аргументов для затронутых функций, что теперь будет вызывать ошибку. Затронутые функции:

    • sparse.linalg.{bicg, bicgstab, cg, cgs, gcrotmk, gmres, lgmres, minres, qmr, tfqmr}

    • stats.kendalltau

    • linalg.pinv

    • integrate.simpson

    • linalg.{eigh,eigvalsh}

    • special.comb

    • signal.{firls, firwin, firwin2, remez}

Прочие изменения#

  • SciPy теперь использует C17 в качестве стандарта C для сборки вместо C99. Стандарт C++ остаётся C++17.

  • macOS Accelerate, который получил крупное обновление в macOS 13.3, теперь поддерживается. Это приводит к значительному улучшению производительности для операций линейной алгебры, а также к уменьшению размеров бинарных колес.

  • Кросс-компиляция должна быть более плавной, и QEMU или аналогичные инструменты больше не требуются для запуска кросс-интерпретатора.

  • Экспериментальная поддержка Array API для бэкенда JAX была добавлена в несколько частей SciPy.

Авторы#

  • Имя (коммиты)

  • h-vetinari (34)

  • Стивен Адамс (1) +

  • Max Aehle (1) +

  • Ataf Fazledin Ahamed (2) +

  • Luiz Eduardo Amaral (1) +

  • Trinh Quoc Anh (1) +

  • Miguel A. Batalla (7) +

  • Tim Beyer (1) +

  • Andrea Blengino (1) +

  • boatwrong (1)

  • Jake Bowhay (51)

  • Dietrich Brunn (2)

  • Евгений Буровский (177)

  • Тим Баттерс (7) +

  • CJ Carey (5)

  • Sean Cheah (46)

  • Lucas Colley (73)

  • Джузеппе "Пеппе" Диллилло (1) +

  • DWesl (2)

  • Питер Эндебак (5)

  • Kenji S Emerson (1) +

  • Jonas Eschle (1)

  • fancidev (2)

  • Энтони Фрейзер (1) +

  • Илан Голд (1) +

  • Ralf Gommers (125)

  • Рохит Госвами (28)

  • Ben Greiner (1) +

  • Лоренцо Гуальньера (1) +

  • Мэтт Хаберленд (260)

  • Shawn Hsu (1) +

  • Budjen Jovan (3) +

  • Jozsef Kutas (1)

  • Eric Larson (3)

  • Грегори Р. Ли (4)

  • Philip Loche (1) +

  • Christian Lorentzen (5)

  • Sijo Valayakkad Manikandan (2) +

  • marinelay (2) +

  • Николай Майоров (1)

  • Николас МакКиббен (2)

  • Melissa Weber Mendonça (7)

  • João Mendes (1) +

  • Zolatarev

  • Tomiță Militaru (2) +

  • Эндрю Нельсон (35)

  • Лисандрос Николау (1)

  • Ник О'Делл (5) +

  • Джейкоб Огл (1) +

  • Pearu Peterson (1)

  • Matti Picus (5)

  • Ilhan Polat (9)

  • pwcnorthrop (3) +

  • Бхарат Рагхунатхан (1)

  • Том М. Рагонно (2) +

  • Тайлер Редди (101)

  • Pamphile Roy (18)

  • Atsushi Sakai (9)

  • Даниэль Шмитц (5)

  • Julien Schueller (2) +

  • Dan Schult (13)

  • Tomer Sery (7)

  • Scott Shambaugh (4)

  • Tuhin Sharma (1) +

  • Sheila-nk (4)

  • Skylake (1) +

  • Альберт Степпи (215)

  • Kai Striega (6)

  • Zhibing Sun (2) +

  • Nimish Telang (1) +

  • toofooboo (1) +

  • tpl2go (1) +

  • Edgar Andrés Margffoy Tuay (44)

  • Andrew Valentine (1)

  • Valerix (1) +

  • Christian Veenhuis (1)

  • void (2) +

  • Уоррен Векессер (3)

  • Xuefeng Xu (1)

  • Рори Йорк (1)

  • Сяо Юань (1)

  • Ирвин Заид (35)

  • Эльмар Зандер (1) +

  • Zaikun ZHANG (1)

  • ਗਗਨਦੀਪ ਸਿੰਘ (Gagandeep Singh) (4) +

Всего 85 человек внесли вклад в этот выпуск. Люди со знаком "+" рядом с именами внесли патч впервые. Этот список имен генерируется автоматически и может быть не полностью полным.

Проблемы, закрытые для версии 1.14.0#

  • #5369: fsolve & root некорректный подсчет вызовов функции

  • #7203: несовместимость vtk с scipy.interpolate (и mvpoly.rbf)

  • Поддержка OpenMP: cho_factor и cho_solve не поддерживают матрицы формы (0,0)

  • #8083: special.hyp2f1 возвращает неверные значения, когда c-a-b является целым числом...

  • #8510: ValueError: не удалось создать intent(cache|hide)|optional array–...

  • #8848: `integrate.solve_ivp` пытается вычислить функцию с гораздо…

  • #8856: LinearNDInterpolator not thread safe

  • #9198: `solve_ivp` RK45 может вычислять функцию в моменты времени позже чем…

  • #9307: запрос функции: сделать `scipy.stats.pearsonr` принимающим 2-D массивы

  • #9459: BUG: linalg: lu и разложения не поддерживают (0, 1) или (0,…

  • #12515: scipy.linalg.pinvh выдает некорректные результаты

  • #14244: ValueError: При входе в DGESDD параметр номер 10 имел недопустимое…

  • #14389: `linalg.inv` не работает для массивов формы (0, 0)

  • #14806: ENH: Добавить распределения Ирвина-Холла (сумма равномерных) и Бейтса (среднее равномерных)...

  • #15722: DEP: special.comb: устаревание `exact=True` для нецелых чисел

  • #16131: BUG: spsolve_triangular значительно медленнее, чем spsolve

  • #16583: Объединение расширений в `stats._boost` в одно

  • #16748: Ни один из API `cython_*` не имеет тестов с использованием Cython

  • #16926: TEST/BUG: Нарушение допуска в test_solvers::test_solve_discrete_are

  • #17084: ENH: Экспорт удаленного компонента detrend()

  • #17341: BUG: `solve_ivp` вычисляет вне запрошенного интервала для…

  • #17559: ENH: _mannwhitneyu.py вычисление точной статистики MWU может…

  • #17658: Несогласованная поддержка пустых матриц в linalg

  • #19322: BUG: `rv_discrete.expect` выдает ошибку при дублировании позиций

  • #19348: BUG: stats.nct.pdf непоследовательное поведение при сравнении с MATLAB…

  • #19586: BUG: scipy.signal.group_delay некорректен для комплексных коэффициентов

  • #19598: BUG: Ошибка в `scipy.sparse.linalg.svds` для больших разреженных матриц…

  • #19649: ENH: as_quat() и from_quat() кажутся обратными x,y,z,w по сравнению с…

  • Пример того же: Предупреждения сборки от HiGHS

  • #19872: BUG: ошибка в расчёте p-значений в sp.stats.wilcoxon, когда…

  • #19905: DEP: удалить устаревшие импорты из приватизированных модулей

  • #19918: ENH: Добавление COBYQA в `scipy.optimize`?

  • #19921: BUG: Несогласованный вывод BenchGlobal по сравнению с BenchLeastSquares…

  • #19964: MAINT:BLD:special:Переработка механизмов _ufuncs и cython_special

  • #20124: BUG: stats.skewnorm.ppf возвращает неверные значения при умеренно…

  • #20128: BUG: `csr_array(int())` вызывает ошибки

  • #20208: BUG: Сбои тестов из-за `invalid value encountered in _beta_ppf`…

  • Дополнительные встроенные распределения (кроме: ENH: Экстраполяция Akima1DInterpolator

  • #20256: MAINT, BLD: предупреждения о видимости символов в статической библиотеке MacOS ARM…

  • #20277: Очень шумные сборки документации после интеграции jupyterlite-sphinx

  • #20296: CI: привязка jupyterlite-shpinx нарушает недавние сборки документации

  • #20324: MAINT, BUG (?): изменение типа возвращаемой статистики pearsonr

  • #20357: BUG: Использование памяти в функции griddata в версии 1.12

  • #20358: TST, MAINT: ошибка в TestGroupDelay::test_singular против…

  • #20377: ENH: sparse: Обновление метода __str__ для обработки 1D (и 2D лучше)

  • #20378: ENH: sparse: Обновление метода __repr__ для обработки 1D (и, возможно, улучшения 2D)

  • #20385: MAINT: очистка специальной версии hex

  • #20386: BUG: scipy.stats.kstest возвращает NaN, начиная с scipy 1.12

  • #20388: DOC: Переключатель версий не центрирован по вертикали на мобильных устройствах

  • #20394: BUG: ненужные вычисления в фильтрах iirpeak/iirnotch/iircomb…

  • #20399: BUG: scipy.special.logsumexp вызывает ValueError для нулевого размера…

  • #20419: BUG: nightly: .special.jv теперь преобразует входные данные float32 в float64

  • #20434: BUG: разреженный dia_array преобразуется в csr после умножения

  • #20455: BUG: signal.iirfilter: переполнение для целочисленного ввода

  • #20458: MAINT: дополнительные возможные улучшения, связанные с обновлениями версий

  • #20461: DOC: некоторые вероятные изменения в документации процесса выпуска

  • #20466: BUG: scipy.linalg.bandwidth возвращает некорректную верхнюю полосу пропускания

  • #20470: BUG: `TestNNLS.test_nnls_inner_loop_case1` не проходит с MKL

  • #20486: DEP: устареть и удалить оставшиеся использования связанного с оскорблениями 'trapz'

  • #20488: BUG: При передаче недопустимых границ `_minimize_neldermead` вызывает…

  • #20492: DOC: linalg.solve_discrete_lyapunov: неработающая ссылка

  • #20502: BUG: special.hyp2f1: локальный сбой теста

  • #20509: DOC: Уточнение поведения `sparse.csgraph.dijkstra` для `directed=False`

  • #20523: CI/BLD: Ночные сборки колес не работают для macOS x86_64

  • #20535: BUG: generate_f2py mod вызывается неправильным интерпретатором

  • #20540: BUG: pytest scipy/linalg/tests/test_extending.py падает с Cython…

  • #20551: DOC/DEV: четко документировать, какой код имеет активный репозиторий вышестоящего проекта

  • #20562: BUG: Неверный выбор скобки по умолчанию в _bracket_minimum.

  • #20564: TST: ошибка API массива stats для test_skew_constant_value[torch]…

  • #20584: BUG: `optimize.linprog` завершается ошибкой с типом `list` для `integrality`…

  • #20587: BLD: предупреждение от `scipy/special/special/gamma.h`

  • #20598: ENH: special: добавление логарифма wright_bessel

  • #20603: DOC: документирование перехода со списка рассылки на discourse

  • #20614: DOC: оптимизатор dual_annealing не передаёт границы минимизатору…

  • #20618: ОШИБКА: scipy 'minimize' с method='trust-constr' с равенством...

  • #20620: DOC: Предлагаемое улучшение руководства по переходу на interp2d

  • #20641: BUG: stats: Two new XSLOW test failures

  • #20661: MAINT, TST: ошибка в test_axis_nan_policy_decorated_positional_args…

  • #20662: DOC: отсутствие пробела в сообщении об ошибке, вызванном cont2discrete()

  • #20674: DOC: Опечатка в имени автора в ссылке signal.ellipap

  • #20683: DOC: опечатка в ValueError, вызванном signal.iirdesign

  • #20691: ENH: Повторное внедрение поддержки Apple Accelerate

  • #20697: BUG: special: алгоритмическая ошибка в `ratevl` в `cephes/polevl.h`

  • #20755: BUG: stats: Два новых сбоя тестов

  • #20768: BUG: optimize.minimize: сборка мусора в `lbfgs`

  • #20783: BUG: Сбой сборки на PyPy3.10 7.3.16: `error: ‘Py_Initialize’…

  • #20797: BUG: special.hyp1f1: сломан для комплексного аргумента

  • #20802: MAINT, TST: pytest-fail-slow и локальные параллельные запуски/вариабельность

  • #20840: BUG: первая общая библиотека в scipy не может быть использована MSVC

  • #20850: DOC: stats.bootstrap: улучшить документацию многомерного…

  • #20852: BUG: Библиотека не загружена: @rpath/libgfortran.5.dylib для scipy…

  • #20860: BUG/BLD: scipy-1.13.1 не собирается с msvc

  • #20901: BUG: `zsh: abort python` after `scipy.linalg.sqrtm` on empty…

  • #20911: TST: TestEig.test_singular не проходит допуск с общим BLAS…

  • #20921: DOC: stats: неверные строки документации классов `*Result`

  • #20938: TST: нарушения допусков с SciPy 1.14.0rc1 на linux-{aarch64,ppc64le}

  • #20943: TST: сбои тестов на Windows с SciPy 1.14.0rc1

Pull requests для 1.14.0#

  • #13534: ENH: Добавить больше методов инициализации для HessianUpdateStrategy

  • #15321: ENH: fft: добавление `prev_fast_len` в дополнение к `next_fast_len`

  • #17348: BUG: integrate: сделать `select_initial_step` учитывающим интеграцию…

  • #17924: ENH: sparse.linalg: ускорение `spsolve_triangular`

  • #18926: УЛУЧШЕНИЕ: Перенести symiirorder1/2, cspline2d, qspline2d и spline_filter…

  • #19561: ENH: stats.power: добавить функцию для моделирования мощности теста гипотез

  • #19627: FIX: правильный расчет group_delay для комплексных коэффициентов передаточных функций

  • #19673: DEP: signal: вызвать ошибку при использовании medfilt и order_filter с…

  • #19706: ENH: Добавление half=True в аргументы minimum_phase

  • #19816: BLD: Добавлена поддержка Accelerate для macOS 13.3+

  • #19900: MAINT/TST: fft: удалить пропуски xp бэкенда, протестировать `fftfreq` `device`

  • #19904: MAINT: удалить случайные импорты из приватных модулей

  • #19923: ENH: stats.mannwhitneyu: замена точного вычисления p-значения

  • #19954: MAINT: Перевод функции wright_bessel на C++

  • #19960: DOC: Добавить примеры к `scipy.interpolate.spalde`

  • #19994: ENH: добавление cobyqa в scipy.optimize.

  • #20073: ENH: special: исправление преждевременного переполнения в `boxcox`

  • #20079: ENH: io: Чтение и запись wav-файлов размером > 4 ГБ

  • #20085: ENH: типы массивов: добавить поддержку JAX

  • #20089: ENH: Перевести комплекснозначную hyp2f1 на C++ и внести улучшения

  • #20127: ENH/TST: Рефакторинг refguide-check, версия 3

  • #20137: ENH: stats.pearsonr: добавить поддержку аргумента `axis`

  • #20187: ENH: sparse.csgraph: K-кратчайшие пути Йена

  • #20199: DOC/DEV/MAINT: обновить руководство для разработчиков ядра

  • #20202: DOC: Реорганизация содержимого раздела руководства пользователя stats

  • #20255: TST: linalg: повторно включить тесты gges[float32]

  • #20257: BUG: предотвратить утечку файлового дескриптора в `openblas_support.py`…

  • #20260: ENH: Начало переработки механизма ufunc

  • #20265: ENH: optimize: квалифицировать аргументы массивов Cython как const

  • #20269: REL: установка версии на 1.14.0dev0

  • #20273: MAINT/DEV: обеспечить минимальную версию `ruff`

  • #20275: MAINT/DEV: добавить автоисправление в `dev.py lint`

  • #20278: DEP: integrate: удалить simps,trapz,cumtrapz

  • #20281: BUG: optimize: исправление значений `nfev`

  • #20283: DEP: sparse: устаревание метода conjtransp() для dok_array/matrix...

  • #20284: ENH: stats.pearsonr: добавление поддержки array API

  • #20289: DOC: Закрепить Jupyterlite Sphinx, чтобы избежать шумных сборок документации

  • #20292: ENH: stats.moment: добавить поддержку array API

  • #20295: БАГ: linalg: поддержка пустых массивов

  • Примечание: когда остатки предсказаний имеют нулевое среднее,: BUG: linalg: использовать SYEV вместо SYEVR для pinvh

  • #20298: DOC: linalg: упомянуть, что eigenvalues_only=True/False может изменить…

  • #20304: ENH: interpolate: разрешить экстраполяцию Акимы

  • #20310: MAINT: Закрепить jupyterlite-sphinx на версии >=0.13.1

  • #20315: DOC: добавить документацию по отладке проблем, связанных с линейной алгеброй

  • #20317: MAINT/DEV: переименовать `skip_if_array_api` в `skip_xp_backends`

  • #20320: ENH: Обобщённые универсальные функции в special

  • #20321: BUG: Исправление для scipy.special seterr, geterr, errstate

  • #20325: MAINT: Улучшение производительности ndimage.binary_erosion

  • #20326: MAINT: Заменить использование np.prod

  • #20328: DOC: исправление небольшой опечатки в odds_ratio

  • #20329: MAINT: обновление `array_api_compat` до v1.5.1

  • #20331: MAINT: Исправление ошибки Cythonize в optimize с const view

  • #20335: TST: linalg: отмена xfails для QZ и DARE

  • #20342: BLD: linalg: исправление зависимостей пересборки для файлов .pyf.src

  • #20354: MAINT: открепление pytest для колес

  • #20355: TST: signal: bump tolerance for new `signal.group_delay` test

  • #20356: BLD: обновить зависимость сборки numpy в pyproject.toml для numpy…

  • #20367: STY: всегда `import numpy as np`

  • #20373: MAINT: отказаться от Python 3.9 и NumPy 1.22.x

  • #20380: MAINT: перенос заметок о выпуске 1.13.0

  • #20382: MAINT: lint: принудительное использование псевдонима `numpy as np`

  • #20384: ENH:special:Переписать cdflib на C

  • #20390: MAINT:Перевести весь cephes на C++

  • #20393: ОБСЛ/СБОР: Удалить `stats._boost` и добавить связанные с распределением…

  • #20397: ENH: поддержка порядка компонентов кватерниона scalar-first в Rotation

  • #20403: ENH: special: добавление ufuncs для amos

  • #20404: ОШИБКА: interpolate: исправление высокого использования памяти для 2 классов

  • #20405: BUG: Исправить пару ошибок в Amos и Cephes yv, которые маскировали друг друга...

  • #20413: MAINT: Включить npyrandom вместо использования статической библиотеки

  • #20416: ENH: optimize._chandrupatla: разрешить бесконечное значение функции в…

  • #20417: ENH: Сделать cython_special фактическим кодом, а не автогенерированным

  • #20418: BUG: signal: исправления усиления фильтров `iir{peak,notch,comb}`

  • #20420: DOC: stats: ускорение очень медленных примеров `bootstrap`

  • #20421: Добавлены перегрузки float32 для функций amos

  • #20422: TST: Тестирование импорта Cython API

  • #20424: MAINT:special: Добавить лицензию к cdflib и удалить старый pxd файл

  • #20425: MAINT: Исправить видимость значка DOI в README

  • #20426: DOC: добавлены подсказки по отладке проблем с linalg с помощью gdb

  • #20427: DOC: ускорение некоторых примеров

  • #20438: ENH: Перевод `sph_harm` Cython->C++, добавление `sph_harm_all`…

  • #20441: BLD: Установка cython_special.pxd

  • #20443: MAINT: sparse: Обновить сообщение EfficiencyWarning для отражения array/matrix

  • #20445: ENH: sparse: специальный случай DIA * скаляр

  • #20446: MAINT: удалить повторяющиеся опечатки в словах

  • #20450: BLD: избегать установки переменной окружения в файле meson.build

  • #20453: DOC: special: добавить примеры для pdtrc, pdtri, pdtrik

  • #20454: ДОК: Обновить план инструментария (1/N)

  • #20456: BUG: signal.iirfilter: избежать переполнения целых чисел

  • #20457: ENH: Добавление `scipy.special._ufuncs._iv_ratio`

  • #20460: DOC: Удаление лишних цветов CSS и настроек

  • #20462: DOC: обновить readme ссылкой на новый форум

  • #20463: MAINT: Рефакторинг генерации уфункций специальных функций и консолидация…

  • #20465: MAINT: special: исправить предупреждение компилятора о неиспользуемой переменной

  • #20467: MAINT: stats._contains_nan: исправление ошибки при наличии -inf и inf в…

  • #20468: TST: stats: пометить тесты как медленные/очень медленные

  • #20469: MAINT/CI: Удалить тестирование документации из refguide-check

  • #20477: BLD: обеспечить, чтобы все статические библиотеки использовали скрытую видимость

  • #20478: CI/MAINT: Увеличить минимальные требуемые версии компиляторов до GCC…

  • #20480: CI: провалить медленные тесты

  • #20481: ENH: stats: Добавлено распределение Ирвина-Холла

  • #20482: CI: стандартизировать названия задач

  • #20483: ENH: special: перевести `sph_bessel` на C++, рефакторить `cyl_bessel`

  • #20487: TST: настроить другие очень медленные тесты

  • #20490: BUG: sparse: вызывать ошибку для классов массивов, документировать/тестировать старые…

  • #20494: BUG: _qmc.py::_random_oa_lhs создаёт коррелированные выборки

  • #20495: BUG: удаление аргумента ключевого слова из ValueError в SciPy.optimize

  • #20497: DEP: interpolate: заменить interp2d на заглушку

  • #20498: DEP: переключить sparse методы на только ключевые аргументы; удалить tol/restrt аргументы

  • #20499: DEP: выполнить устаревания API разреженных массивов

  • #20500: DOC: Обновление неработающей ссылки в `Scipy.linalg._solvers.py`:…

  • #20501: MAINT: optimize._chandrupatla: уменьшить xatol

  • #20503: MAINT: spatial: Исправлена аннотация типа `query_ball_point`

  • #20508: DOC: Исправление устаревшего стиля предупреждений

  • #20510: BLD: Ускорение сборок для macOS 14+

  • #20511: BUG: Исправлено возбуждение ValueError для массива нулевого размера в SciPy.special.logsumexp

  • #20515: BLD: по умолчанию использовать C17 вместо C99

  • #20522: TST: Пропустить или исправить некоторые падающие тесты в определенных сборках macOS

  • #20526: BLD: изменить нижнюю границу для Clang/LLVM с 14.0 на 12.0

  • #20529: MAINT: удаление повторяющихся опечаток «is»

  • #20534: BUG: Исправлено некорректное значение upper_band для scipy.linalg.bandwidth

  • #20536: CI: Проверить, включен ли Python.h первым в файле

  • #20538: TST: _lib: удалить избыточный тест для отсутствующего `stacklevel`

  • #20541: ENH: stats.skew: добавить поддержку array-API

  • #20542: BLD: Сборки Accelerate не должны определять `NO_APPEND_FORTRAN`

  • #20545: ENH: stats.ttest_1samp: добавить поддержку array-API

  • #20546: DOC: использование более корректных и инклюзивных местоимений

  • #20547: DOC: stats.linregress: разделить документацию stats/mstats

  • #20548: TST: Пропуск тестов Cython для редактируемых установок

  • #20550: DEP: stats: переключение kendalltau на использование только ключевых аргументов, удаление initial_lexsort…

  • #20554: DEP: integrate: переключить simpson на только ключевые аргументы, удалить even kwarg

  • #20556: DOC: обновления процесса выпуска

  • #20559: DOC/DEV: добавление страницы core-dev о вендорном коде

  • #20560: DEP: linalg: удаление turbo / eigvals kwargs из linalg.{eigh,eigvalsh}…

  • #20563: BUG: Исправить неверный выбор скобки по умолчанию в _bracket_minimum

  • #20565: DEP: linalg: удалить параметры cond / rcond из linalg.pinv и…

  • #20568: DOC: изменить doctest для approx_fprime

  • #20572: MAINT: включение Tempita в `scipy/_build_utils`

  • #20575: TST: stats.skew: assert_equal -> xp_assert_equal, где уместно

  • #20577: DEV: добавить проверку юникода в pre-commit-hook

  • #20578: DEP: signal: удалить nyq / Hz kwargs в firwin* и перейти на…

  • #20582: MAINT: optimize.isotonic_regression: удаление ненужных копий

  • #20583: TST: stats.rv_continuous.fit: настройка наборов XSLOW/XFAIL/skip для тестов подгонки

  • #20585: CI/BLD: использовать wheel scipy-openblas при сборке

  • #20588: DEP: special: удалить устаревший аргумент из special.comb и переключить…

  • #20590: Отмена "ENH: Использовать `highspy` в `linprog`"

  • #20593: ENH: constants: добавить поддержку array api

  • #20595: ENH: `stats.circ___`: добавить поддержку array-API

  • #20597: ENH: stats.skewtest: добавление поддержки array-API

  • #20600: TYP: обновить поддерживаемую версию Mypy с 1.0.0 до 1.10.0

  • #20604: ENH: stats.monte_carlo_test: добавить поддержку array API

  • #20612: BLD: исправить использование нестандартного интерпретатора, улучшить обработку f2py

  • #20615: ENH: stats: Реализовать _isf для burr12

  • #20616: DOC: integrate: удалить ссылки на устаревшие и унаследованные функции

  • #20619: ENH: spatial: сериализовать параллельные вызовы QHull

  • #20621: TYP: добавить аннотации типов в `scipy/_lib/_array_api.py`

  • #20625: TST: добавить dtype-зависимый rtol по умолчанию в xp_assert_close

  • #20627: MAINT: special: Удалить неиспользуемую переменную function_calls в kolmogorov.h

  • #20628: TST: integrate.tanhsinh: сделать тестовый случай XSLOW

  • #20630: ENH: optimize._jacobian: использовать _differentiate для вычисления точных…

  • #20631: ENH: stats.sem: добавление поддержки array-API

  • #20634: ENH: stats: добавлена поддержка array-API для kstat/kstatvar

  • #20637: MAINT: Исправить сломанные ссылки в модуле `datasets._fetchers`

  • #20640: TST: настроить тест нового API массивов, медленные тесты

  • #20642: TST: stats.ttest_1samp: исправить медленный тест

  • #20643: MAINT: обновление boost для исправления `skewnorm.ppf`

  • #20645: ENH: optimize.approx_fprime: избегать квадратичного использования памяти

  • #20646: ENH: special: добавить `log_wright_bessel`

  • #20647: ENH: stats.variation: добавление поддержки array-API

  • #20649: MAINT: sparse: переформатирование str и repr для разреженных массивов, исправление…

  • #20651: ENH: stats.kstat/kstatvar: добавление нативной поддержки для `axis`

  • #20656: ENH: Микрооптимизации для методов spatial.transform.Rotation

  • #20657: MAINT: удаление неиспользуемой переменной в special

  • #20658: ENH: stats.kurtosis: добавлена поддержка array API

  • #20663: MAINT: stats.kruskal: исправление поведения без аргументов с SCIPY_ARRAY_API=1

  • #20664: Исправить опечатку в cont2discrete

  • #20665: trust-constr делает источник сообщения об ошибке более понятным, когда...

  • #20667: ENH: stats.describe: добавить поддержку array API

  • #20673: ENH: stats.entropy, special.{entr, rel_entr}: добавить поддержку array API

  • #20675: DOC: Исправлена опечатка в signal.ellipap

  • #20676: MAINT: уточнение документации dual_annealing-minimizer_kwargs. Закрывает…

  • #20677: TST: настройки test__differential_evolution для скорости

  • #20679: MAINT: special.wright_bessel: добавление комментария о справочном тексте

  • #20684: MAINT: Исправление отсутствия пробелов в signal.iirdesign, согласованность интервалов…

  • #20685: MAINT: Добавление корректной обработки недопустимых начальных скобок для поэлементных…

  • #20689: ENH: optimize._chandrupatla: добавление поддержки array API

  • #20694: MAINT: stats: сделать так, чтобы функции редукции выдавали согласованное предупреждение…

  • #20696: MAINT: stats.gstd: возвращать результат вместо вызова исключения

  • #20698: DEV/BLD: добавить флаг –with-accelerate в `dev.py build`

  • #20705: MAINT: Добавление недостающих пробелов

  • #20711: MAINT: очистка версий numpy: исправление issue #20458

  • #20712: ENH/BLD: Добавление тегов установки для `tests`

  • #20715: ENH: stats.kurtosistest: добавить поддержку array API

  • #20716: DEP: integrate.quad_vec: устаревание `quadrature=”trapz”`

  • #20722: ENH: sparse: Ускорить `_add_sparse` для формата DIA

  • #20726: DOC: stats.{circmean, circvar, circstd}: улучшить точность/ясность

  • #20730: BUG: special: исправить алгоритмическую ошибку в `ratevl` в `cephes/polevl.h`

  • #20732: BUG: interpolate: предотвращение ошибки сегментации при некорректных граничных условиях

  • #20734: BUG: stats.ttest_1samp: исправить использование `keepdims`

  • #20736: ENH: stats.normaltest/jarque_bera: добавлена поддержка array-API

  • #20737: TST, MAINT: запуск тестов API массивов optimize и исправление `chandrupatla`

  • #20738: DOC: sparse.csgraph.dijkstra: добавление предупреждения для `directed=False`…

  • #20741: MAINT: optimize: еще одно исключение fail_slow для COBYQA

  • #20744: MAINT: использование PyTorch 2.3 в CI, исправление ошибок CuPy, больше аннотаций типов…

  • #20745: BUG: Исправить некорректные скобки в cephes hyperg.h

  • #20746: DOC: stats: обновить формулы, данные для kstat/kstatvar, чтобы отразить...

  • #20748: TST: увеличение допуска для решения локальной проблемы `test_axis_nan_policy`…

  • #20750: ENH: некоторые микрооптимизации для differential_evolution

  • #20751: ENH: stats.bartlett: добавление нативной поддержки `axis` и Array API

  • #20753: ENH: stats.chisquare/power_divergence: добавлена поддержка array API

  • #20756: TST: stats: рефакторинг тестов на нормальность

  • #20764: TST: stats.fit: устранение сбоев в медленных тестах

  • #20765: MAINT: stats.wilcoxon: сделать `method=’exact’` симметричным при наличии связей

  • #20769: MAINT: stats: переместить тесты `multiscale_graphcorr` для экономии времени

  • #20770: MAINT: optimize: удалить циклическую ссылку в `ScalarFunction`

  • #20775: MAINT: перенос релизных заметок 1.13.1

  • #20777: ENH: stats: сквозная поддержка array-API для тестов на нормальность

  • #20778: DOC: signal: Улучшения документации функции `detrend`

  • #20780: DEP: special.comb: устаревание `exact=True` для нецелочисленных входных данных

  • #20781: TST: stats: удаление накладных расходов array_namespace в вызовах _get_pvalue

  • #20782: ENH: stats: сквозная поддержка array-API для NHST с хи-квадрат…

  • #20784: DOC: примечания к выпуску SciPy 1.14.0

  • #20787: DOC: interpolate: упоминание видов по умолчанию в переходе interp2d…

  • #20788: ENH: optimize: улучшение производительности `cobyqa` за счёт снижения накладных расходов…

  • #20789: DEP: stats.linregress: устаревает использование с одним аргументом

  • #20790: BUG: special: remove redundant `Py_Initialize`

  • #20791: TST: optimize: исправить падающие тесты для `_bracket_minimum`

  • #20792: BUG: sparse: Исправление различия формы argmin/max между осями 0/1. И…

  • #20795: MAINT: исправить предупреждения о `noexcept` и `except *` в Cython…

  • #20796: BLD: optimize: подавление предупреждений сборки, поступающих от HiGHS

  • #20798: MAINT: special: исправить инициализацию numpy, избежать предупреждений сборки

  • #20799: DOC: ndimage: улучшить строки документации морфологии в градациях серого

  • #20804: MAINT: удаление pytest-fail-slow из pyproject.toml

  • #20805: BUG: special: Восстановить отсутствующую строку кода в функции cchg().

  • #20807: TST: stats.nbinom: настроить тест кругового обхода cdf-ppf

  • #20812: DOC: расширить страницу "сборка воспроизводимых бинарных файлов"

  • #20815: DOC: integrate: пользовательские функции odeint не должны изменять y.

  • #20819: REV: откат случайного обновления `cobyqa` в gh-17924

  • #20820: BLD: Исправление предупреждения из ``scipy/special/special/gamma.h``

  • #20828: DEP: устаревание псевдонима trapz для распределения `stats.trapezoid`

  • #20831: MAINT: версионные ограничения/подготовка к 1.14.0rc1

  • #20838: DOC: sparse: добавления к заметкам о выпуске 1.14.0

  • #20839: REL: установить 1.14.0rc2 как невыпущенный

  • #20841: DOC: добавить ссылку на сайт cobyqa

  • #20851: DOC: добавление ссылки на сайт cobyqa (#20841)

  • #20858: MAINT: `stats.bootstrap`: выдать `FutureWarning` о вещании

  • #20870: BLD: тестирование работы delocate путем удаления исходной библиотеки [сборка wheel]

  • #20881: DOC: переход со списка рассылки на форум

  • #20890: DOC: Написание заголовков справочника API моноширинным шрифтом

  • #20909: DEP: special.perm: устаревание нецелых `N` и `k` с…

  • #20914: TST: linalg: увеличение допуска в `TestEig::test_singular`

  • #20919: BLD: optimize: использовать скрытую видимость для статических библиотек HiGHS

  • #20920: MAINT: special: исправление сборки msvc с использованием `new` и `delete`…

  • #20923: DOC: обновление doctests для соответствия scipy-doctests==1.2.0

  • #20927: MAINT: адаптация к изменению в scipy-doctests

  • #20933: MAINT: обратные порты для 1.14.0rc2

  • #20936: DOC: `array_api.rst`: обновление функций 1.14 с Array API…

  • #20937: BUG/BLD: special: Обеспечить общий доступ к символам в `sf_error_state`…

  • #20945: TST: устранить нарушения допусков с SciPy 1.14.0rc1 на linux-{aarch64,ppc64le}

  • #20952: TST: ослабить допуск в test_x0_working для прохождения с альтернативными…

  • #20953: ТЕСТ: ослабление допуска в test_krandinit для прохождения с…

  • #20961: TST: усилить тест test_nnls_inner_loop_case1

  • #20970: REL: установить 1.14.0 rc3 как невыпущенный

  • #20973: TST:sparse.linalg: Пропуск теста из-за чувствительности к численным…

  • #20979: STY: `_lib._util`: устранена новая ошибка mypy в main