summaryrefslogtreecommitdiff
path: root/numpy/linalg
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request #11691 from charris/fix_matrix_power_regressionMatti Picus2018-08-082-61/+90
|\ | | | | BUG: Make matrix_power again work for object arrays.
| * BUG: Make matrix_power again work for object arrays.Charles Harris2018-08-082-61/+90
| | | | | | | | | | | | | | | | | | This fixes a regression introduced in #10985. Using matmul instead of dot lost the object type while adding the ability to deal with matrix stacks. This implements a partial fix by using dot for 2-D object arrays, but object array stacks cannot be handled. Closes #11635.
* | Merge pull request #11692 from charris/remove-duplicate-codeMatti Picus2018-08-081-5/+0
|\ \ | | | | | | MAINT: Remove duplicate code.
| * | MAINT: Remove duplicate code.Charles Harris2018-08-081-5/+0
| |/ | | | | | | | | The definition of `_complex_types_map` was repeated in the linalg.py file.
* | ENH: support for empty matrices in linalg.lstsqJeremy Chen2018-08-032-5/+35
|/
* ENH: handle empty matrices in qr decomposition (#11593)Jeremy Chen2018-07-312-19/+26
| | | Ensure LWORK and LDA respect the requirements of the lapack methods (zgeqrf, dgeqrf, zungqr, dorgqr)
* DOC: Use "real symmetric" rather than "symmetric" in ``eigh`` and ↵Juan Azcarreta2018-07-261-11/+16
| | | | | | | | ''eigvalsh" docs. (#11621) Change the documentation of inputs from "symmetric or Hermitian" to "real symmetric or complex Hermitian" for eigh and eigvalsh. [ci skip]
* MAINT: Move pytesttester outside of np.testing, to avoid creating ↵Eric Wieser2018-07-021-1/+1
| | | | | | | | unnecessary import dependencies pytesttester is used by every single subpackage, so making it depend on np.testing just creates cyclic dependencies that can lead to circular imports Relates to #11457
* ENH: Allow use of svd on empty arraysEric Wieser2018-06-273-17/+25
| | | | part of #8654
* HTTP -> HTTPS, and other linkrot fixesMike Toews2018-06-161-3/+3
|
* Merge pull request #10938 from eric-wieser/linalg-lstsq-ufuncMarten van Kerkwijk2018-05-282-9/+9
|\ | | | | MAINT: One step closer to vectorizing lstsq
| * MAINT: Always spell "get the last two dims" the same wayEric Wieser2018-04-211-4/+5
| |
| * MAINT: Prepare lstsq for vectorization, by using the last indices in shape, ↵Eric Wieser2018-04-211-4/+3
| | | | | | | | not the first
| * MAINT: Fix typoEric Wieser2018-04-211-1/+1
| |
* | TST: linalg: add regression test for gh-8577Pauli Virtanen2018-05-271-0/+36
| | | | | | | | | | Add regression test that checks for certain bugs where results from sdot change if certain libraries are imported first.
* | Merge branch 'master' into linalg-move-matrix-powerCharles Harris2018-05-142-284/+233
|\ \
| * \ Merge pull request #10975 from mhvk/linalg-matrix-tests-to-matrixlibCharles Harris2018-05-121-179/+232
| |\ \ | | | | | | | | MAINT: move linalg tests using matrix to matrixlib
| | * | MAINT: move linalg tests using matrix to matrixlibMarten van Kerkwijk2018-04-271-179/+232
| | | | | | | | | | | | | | | | | | | | This is in preparation for deprecation and eventual removal of the matrix class.
| * | | BUG: optimizing compilers can reorder call to npy_get_floatstatus (#11036)Matti Picus2018-05-091-106/+2
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * BUG: optimizing compilers can reorder call to npy_get_floatstatus * alternative fix for npy_get_floatstatus, npy_clear_floatstatus * unify test with pr #11043 * use barrier form of functions in place of PyUFunc_{get,clear}fperr * update doc, prevent segfault * MAINT: Do some rewrite on the 1.15.0 release notes. [ci skip]
* | | ENH: Allow stacks of matrices in matrix_power.Marten van Kerkwijk2018-04-292-67/+71
| | | | | | | | | | | | | | | Since linalg allows stacks of matrices generally, there is no reason not to allow it for matrix_power.
* | | MAINT: Move matrix_power to linalgMarten van Kerkwijk2018-04-291-3/+111
|/ / | | | | | | | | The docstring already assumed it was in linalg, and this ensures linalg becomes completely independent of matrixlib.
* | Merge pull request #10890 from eric-wieser/linalg-lstsq-ufuncMarten van Kerkwijk2018-04-202-29/+102
|\ \ | |/ | | MAINT: lstsq: compute residuals inside the ufunc
| * MAINT: compute residuals inside the ufuncEric Wieser2018-04-172-29/+102
| | | | | | | | | | | | This prevents an overly large output array being allocated. It also means the the residuals can be handled as a separate out argument in future.
* | Merge pull request #10775 from mdboom/return-errors-from-initEric Wieser2018-04-192-8/+9
|\ \ | | | | | | BUG: Return NULL from PyInit_* when exception is raised
| * | Return NULL from PyInit_* when exception is raisedMichael Droettboom2018-03-302-8/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I don't think this is documented anywhere, but I'm pretty sure module init functions should return NULL in order to communicate that an exception occurred during initialization (as is the standard Python/C API convention). It's clear from the CPython code [here](https://github.com/python/cpython/blob/master/Python/importdl.c#L162) that if you don't return NULL, the exception is swallowed and replaced with the message "initialization of %s raised unreported exception". Admittedly, this is only useful for people porting Numpy to new platforms where it is helpful to know where module initialization is failing, but it can't hurt.
* | | Merge pull request #10878 from mattip/devdocsRalf Gommers2018-04-161-1/+1
|\ \ \ | |_|/ |/| | DOC: rework documents and silence warnings during sphinx build
| * | update kwargs where neededmattip2018-04-111-1/+1
| | |
* | | MAINT: Move lstsq to umath_linalgEric Wieser2018-04-101-50/+14
| | | | | | | | | | | | | | | This does not yet enable any broadcasting, but makes doing so in future far easier.
* | | ENH: Add raw ufuncs to interface to gelsd functionsEric Wieser2018-04-101-8/+94
| | |
* | | ENH: Add wrapper functions to allocate workspacesEric Wieser2018-04-101-0/+308
| | |
* | | ENH: Add missing cgelsd and sgelsd routineslapack_lite code generator2018-04-104-36/+4798
|/ /
* | MAINT: Remove all uses of run_module_suite.Charles Harris2018-04-064-21/+4
| | | | | | | | | | That function is nose specific and has not worked since `__init__` files were added to the tests directories.
* | TST: Update modules `test` to PytestTester.Charles Harris2018-04-041-2/+3
| | | | | | | | | | | | | | | | Numpy can now be tested using the standard `python -c"import numpy; numpy.test()"` construct.
* | TST: Switch to using pytest markersCharles Harris2018-04-042-12/+15
| | | | | | | | | | | | | | | | | | | | | | Use standard pytest markers everywhere in the numpy tests. At this point there should be no nose dependency. However, nose is required to test the legacy decorators if so desired. At this point, numpy test cannot be run in the way with runtests, rather installed numpy can be tested with `pytest --pyargs numpy` as long as that is not run from the repo. Run it from the tools directory or some such.
* | MAINT: Remove "bench" from testing modules `__init__`s.Charles Harris2018-03-311-1/+0
|/ | | | | The "bench" testing with the old bench files is no longer supported. These days we use `runtests.py` and `asv`.
* MAINT: Misc small fixes. (#10722)Charles Harris2018-03-101-1/+1
| | | | | | | | | | * MAINT: Replace print statements for Python3. Updates tools/swig/test/testSuperTensor.py. * MAINT: Fix deprecated escaped characters for python 3.6+. Update numpy/linalg/lapack_lite/clapack_scrub.py.
* Merge pull request #10689 from freakboy3742/iOS-compatCharles Harris2018-03-081-0/+2
|\ | | | | BLD: Add configuration changes to allow cross platform builds for iOS.
| * BLD: Add configuration to allow cross platform builds for iOS.Russell Keith-Magee2018-03-041-0/+2
| | | | | | | | | | | | | | | | When building NumPy for iOS, you build on macOS, with compiler flags to target iOS or the iOS simulator. However, setup.py runs on macOS, so sys.platform == 'darwin', regardless of the platform being targetted. distutils provides an environment variable - _PYTHON_HOST_PLATFORM - to indicate when you are building for a different platform. This patches uses that variable to identify cross-platform builds and disable macOS specific features. The patch also renames an internal method in strfuncs to avoid a collision with a symbol in iOS's standard library, and includes math.h to avoid errors about undefined symbols.
* | MAINT: Hard tab and whitespace cleanup.Charles Harris2018-03-082-9/+9
|/
* BUG: Align type definition with generated lapack (#10477)xoviat2018-02-1611-819/+256
| | | | | | | | | | | | | | | | | | | | | | * Align type definitions * Regenerate sources * Replace BytesIO * Consolidate executables * Create directories on PY2 * Revise step name * Consolidate directory creation * Don't catch makedirs errors * Revise step name * Add header source
* MAINT: Small grammar fixes to documentation.Charles Harris2018-02-131-2/+2
| | | [ci skip]
* BUG: linalg: fix corner-case behavior of cond() + use SVD if possiblePauli Virtanen2018-02-122-31/+127
| | | | | | | | | | | | | Make np.linalg.cond(A, p) always use SVD for p=+-2 and not only p=None. Ensure inf is returned instead of nan when the condition number diverges for +/-2 norm. Ignore errors when inverting matrices for p = +-1, 'fro', +-inf, so that spurious LinAlgErrors are not raised. In those cases, report non-invertible matrices as having cond=inf. Add additional tests for cond().
* Revert "BUG: prevent the MSVC 14.1 compiler (Visual Studio 2017) from crashing"revert-10451-helping_MSVC_15.1Eric Wieser2018-01-221-2/+1
|
* prevent the MSVC 15.1 compiler from crashingBjoern Thiel2018-01-221-1/+2
|
* Merge pull request #10414 from charris/fix-sign-compare-linalgCharles Harris2018-01-201-29/+20
|\ | | | | MAINT: Fix sign-compare warnings in umath_linalg.
| * MAINT: Fix sign-compare warnings in umath_linalg.Charles Harris2018-01-161-29/+20
| | | | | | | | | | | | | | | | | | | | | | The sign-compare warning is enabled for python 3.5+ builds and the warnings have been causing wheel build failures on travis ci. The replacements here of `size_t` and `ptrdiff_t` by `npy_intp` should be safe given that the sizes of numpy arrays in bytes are specified by those types. A bigger problem is that most BLAS libraries are compiled with smaller integer types. I don't know where that is checked, or even if it is checked.
* | DOC: Record when axis was added to linalg.norm (#10426)Matheus Vieira Portela2018-01-181-0/+3
|/ | | | | Fixes #5727 The axis argument was introduced in #3387
* Merge pull request #10390 from eric-wieser/fix-10364Charles Harris2018-01-121-2/+4
|\ | | | | MAINT: Adjust type promotion in linalg.norm
| * BUG: Avoid unintentional promotion to `float`, and do ops in place for speedEric Wieser2018-01-111-1/+3
| | | | | | | | Fixes gh-10364, partly by adjusting the promise in the release notes
| * ENH: Preserve norm dtype for order 0Eric Wieser2018-01-101-1/+1
| |