You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Minimal invasive changes to the Factorization objects for 0.1.
All existing functionality is retained, with only a few renamings for clarity.
Replaces the *d routines with *fact routines:
lud ->lufact
chold -> cholfact
cholpd-> cholpfact
qrd ->qrfact
qrpd -> qrpfact
Replaces * and Ac_mul_B on QRDense objects:
qmulQR performs Q*A
qTmulQR performs Q'*A
Updates to exports, documentation, tests, and deprecations.
This is a self-contained commit that can be reverted if necessary
close#2062
Copy file name to clipboardexpand all lines: doc/stdlib/base.rst
+29-21
Original file line number
Diff line number
Diff line change
@@ -1860,57 +1860,65 @@ Linear algebra functions in Julia are largely implemented by calling functions f
1860
1860
1861
1861
Compute the LU factorization of ``A``, such that ``A[P,:] = L*U``.
1862
1862
1863
-
.. function:: lud(A) -> LUDense
1863
+
.. function:: lufact(A) -> LUDense
1864
1864
1865
-
Compute the LU factorization of ``A`` and return a ``LUDense`` object. ``factors(lud(A))`` returns the triangular matrices containing the factorization. The following functions are available for ``LUDense`` objects: ``size``, ``factors``, ``\``, ``inv``, ``det``.
1865
+
Compute the LU factorization of ``A`` and return a ``LUDense`` object. ``factors(lufact(A))`` returns the triangular matrices containing the factorization. The following functions are available for ``LUDense`` objects: ``size``, ``factors``, ``\``, ``inv``, ``det``.
1866
1866
1867
-
.. function:: lud!(A) -> LUDense
1867
+
.. function:: lufact!(A) -> LUDense
1868
1868
1869
-
``lud!`` is the same as ``lud`` but saves space by overwriting the input A, instead of creating a copy.
1869
+
``lufact!`` is the same as ``lufact`` but saves space by overwriting the input A, instead of creating a copy.
1870
1870
1871
1871
.. function:: chol(A, [LU]) -> F
1872
1872
1873
1873
Compute Cholesky factorization of a symmetric positive-definite matrix ``A`` and return the matrix ``F``. If ``LU`` is ``L`` (Lower), ``A = L*L'``. If ``LU`` is ``U`` (Upper), ``A = R'*R``.
1874
1874
1875
-
.. function:: chold(A, [LU]) -> CholeskyDense
1875
+
.. function:: cholfact(A, [LU]) -> CholeskyDense
1876
1876
1877
-
Compute the Cholesky factorization of a symmetric positive-definite matrix ``A`` and return a ``CholeskyDense`` object. ``LU`` may be 'L' for using the lower part or 'U' for the upper part. The default is to use 'U'. ``factors(chold(A))`` returns the triangular matrix containing the factorization. The following functions are available for ``CholeskyDense`` objects: ``size``, ``factors``, ``\``, ``inv``, ``det``. A ``LAPACK.PosDefException`` error is thrown in case the matrix is not positive definite.
1877
+
Compute the Cholesky factorization of a symmetric positive-definite matrix ``A`` and return a ``CholeskyDense`` object. ``LU`` may be 'L' for using the lower part or 'U' for the upper part. The default is to use 'U'. ``factors(cholfact(A))`` returns the triangular matrix containing the factorization. The following functions are available for ``CholeskyDense`` objects: ``size``, ``factors``, ``\``, ``inv``, ``det``. A ``LAPACK.PosDefException`` error is thrown in case the matrix is not positive definite.
1878
1878
1879
-
.. function: chold!(A, [LU]) -> CholeskyDense
1879
+
.. function: cholfact!(A, [LU]) -> CholeskyDense
1880
1880
1881
-
``chold!`` is the same as ``chold`` but saves space by overwriting the input A, instead of creating a copy.
1881
+
``cholfact!`` is the same as ``cholfact`` but saves space by overwriting the input A, instead of creating a copy.
Compute the pivoted Cholesky factorization of a symmetric positive semi-definite matrix ``A`` and return a ``CholeskyDensePivoted`` object. ``LU`` may be 'L' for using the lower part or 'U' for the upper part. The default is to use 'U'. ``factors(cholpd(A))`` returns the triangular matrix containing the factorization. The following functions are available for ``CholeskyDensePivoted`` objects: ``size``, ``factors``, ``\``, ``inv``, ``det``. A ``LAPACK.RankDeficientException`` error is thrown in case the matrix is rank deficient.
1885
+
Compute the pivoted Cholesky factorization of a symmetric positive semi-definite matrix ``A`` and return a ``CholeskyDensePivoted`` object. ``LU`` may be 'L' for using the lower part or 'U' for the upper part. The default is to use 'U'. ``factors(cholpfact(A))`` returns the triangular matrix containing the factorization. The following functions are available for ``CholeskyDensePivoted`` objects: ``size``, ``factors``, ``\``, ``inv``, ``det``. A ``LAPACK.RankDeficientException`` error is thrown in case the matrix is rank deficient.
``cholpd!`` is the same as ``cholpd`` but saves space by overwriting the input A, instead of creating a copy.
1889
+
``cholpfact!`` is the same as ``cholpfact`` but saves space by overwriting the input A, instead of creating a copy.
1890
1890
1891
1891
.. function:: qr(A) -> Q, R
1892
1892
1893
1893
Compute the QR factorization of ``A`` such that ``A = Q*R``. Also see ``qrd``.
1894
1894
1895
-
.. function:: qrd(A)
1895
+
.. function:: qrfact(A)
1896
1896
1897
-
Compute the QR factorization of ``A`` and return a ``QRDense`` object. ``factors(qrd(A))`` returns ``Q`` and ``R``. The following functions are available for ``QRDense`` objects: ``size``, ``factors``, ``*``, ``Ac_mul_B``, ``\``.
1897
+
Compute the QR factorization of ``A`` and return a ``QRDense`` object. ``factors(qrfact(A))`` returns ``Q`` and ``R``. The following functions are available for ``QRDense`` objects: ``size``, ``factors``, ``qmulQR``, ``qTmulQR``, ``\``.
1898
1898
1899
-
.. function:: qrd!(A)
1899
+
.. function:: qrfact!(A)
1900
1900
1901
-
``qrd!`` is the same as ``qrd`` but saves space by overwriting the input A, instead of creating a copy.
1901
+
``qrfact!`` is the same as ``qrfact`` but saves space by overwriting the input A, instead of creating a copy.
1902
1902
1903
1903
.. function:: qrp(A) -> Q, R, P
1904
1904
1905
-
Compute the QR factorization of ``A`` with pivoting, such that ``A*I[:,P] = Q*R``, where ``I`` is the identity matrix. Also see ``qrpd``.
1905
+
Compute the QR factorization of ``A`` with pivoting, such that ``A*I[:,P] = Q*R``, where ``I`` is the identity matrix. Also see ``qrpfact``.
1906
1906
1907
-
.. function:: qrpd(A) -> QRPivotedDense
1907
+
.. function:: qrpfact(A) -> QRPivotedDense
1908
1908
1909
-
Compute the QR factorization of ``A`` with pivoting and return a ``QRDensePivoted`` object. ``factors(qrpd(A))`` returns ``Q`` and ``R``. The following functions are available for ``QRDensePivoted`` objects: ``size``, ``factors``, ``*``, ``Ac_mul_B``, ``\``.
1909
+
Compute the QR factorization of ``A`` with pivoting and return a ``QRDensePivoted`` object. ``factors(qrpfact(A))`` returns ``Q`` and ``R``. The following functions are available for ``QRDensePivoted`` objects: ``size``, ``factors``, ``qmulQR``, ``qTmulQR``, ``\``.
1910
1910
1911
-
.. function:: qrpd!(A) -> QRPivotedDense
1911
+
.. function:: qrpfact!(A) -> QRPivotedDense
1912
1912
1913
-
``qrpd!`` is the same as ``qrpd`` but saves space by overwriting the input A, instead of creating a copy.
1913
+
``qrpfact!`` is the same as ``qrpfact`` but saves space by overwriting the input A, instead of creating a copy.
1914
+
1915
+
.. function:: qmulQR(QR, A)
1916
+
1917
+
Perform Q*A efficiently, where Q is a an orthogonal matrix defined as the product of k elementary reflectors from the QR decomposition.
1918
+
1919
+
.. function:: qTmulQR(QR, A)
1920
+
1921
+
Perform Q'*A efficiently, where Q is a an orthogonal matrix defined as the product of k elementary reflectors from the QR decomposition.
0 commit comments