From 83ef1905e8f6416debcd5534983283dc28bdd49a Mon Sep 17 00:00:00 2001 From: Jason Christopherson Date: Mon, 12 Aug 2024 07:52:43 -0500 Subject: [PATCH] Update documentation --- docs/Doxyfile | 2 +- docs/html/annotated.html | 2 +- docs/html/blas_8f90_source.html | 2 +- docs/html/classes.html | 2 +- .../dir_68267d1309a1af8e8297ef4c3efbcdba.html | 2 +- .../dir_d44c64559bbebec7f509842c48db8b23.html | 2 +- docs/html/files.html | 2 +- docs/html/functions.html | 2 +- docs/html/functions_func.html | 2 +- docs/html/functions_vars.html | 2 +- docs/html/globals.html | 2 +- docs/html/globals_func.html | 2 +- docs/html/graph_legend.html | 2 +- docs/html/index.html | 2 +- docs/html/interfaceblas_1_1ddot-members.html | 2 +- docs/html/interfaceblas_1_1ddot.html | 2 +- docs/html/interfaceblas_1_1dgbmv-members.html | 2 +- docs/html/interfaceblas_1_1dgbmv.html | 2 +- docs/html/interfaceblas_1_1dgemm-members.html | 2 +- docs/html/interfaceblas_1_1dgemm.html | 2 +- docs/html/interfaceblas_1_1dgemv-members.html | 2 +- docs/html/interfaceblas_1_1dgemv.html | 2 +- docs/html/interfaceblas_1_1dscal-members.html | 2 +- docs/html/interfaceblas_1_1dscal.html | 2 +- docs/html/interfaceblas_1_1dtrsm-members.html | 2 +- docs/html/interfaceblas_1_1dtrsm.html | 2 +- docs/html/interfaceblas_1_1dtrsv-members.html | 2 +- docs/html/interfaceblas_1_1dtrsv.html | 2 +- .../html/interfaceblas_1_1zdscal-members.html | 2 +- docs/html/interfaceblas_1_1zdscal.html | 2 +- docs/html/interfaceblas_1_1zgbmv-members.html | 2 +- docs/html/interfaceblas_1_1zgbmv.html | 2 +- docs/html/interfaceblas_1_1zgemm-members.html | 2 +- docs/html/interfaceblas_1_1zgemm.html | 2 +- docs/html/interfaceblas_1_1zgemv-members.html | 2 +- docs/html/interfaceblas_1_1zgemv.html | 2 +- docs/html/interfaceblas_1_1zscal-members.html | 2 +- docs/html/interfaceblas_1_1zscal.html | 2 +- docs/html/interfaceblas_1_1ztrsm-members.html | 2 +- docs/html/interfaceblas_1_1ztrsm.html | 2 +- docs/html/interfaceblas_1_1ztrsv-members.html | 2 +- docs/html/interfaceblas_1_1ztrsv.html | 2 +- .../interfacelapack_1_1dgeev-members.html | 2 +- docs/html/interfacelapack_1_1dgeev.html | 2 +- .../interfacelapack_1_1dgelqf-members.html | 2 +- docs/html/interfacelapack_1_1dgelqf.html | 2 +- .../interfacelapack_1_1dgels-members.html | 2 +- docs/html/interfacelapack_1_1dgels.html | 2 +- .../interfacelapack_1_1dgelss-members.html | 2 +- docs/html/interfacelapack_1_1dgelss.html | 2 +- .../interfacelapack_1_1dgelsy-members.html | 2 +- docs/html/interfacelapack_1_1dgelsy.html | 2 +- .../interfacelapack_1_1dgeqp3-members.html | 2 +- docs/html/interfacelapack_1_1dgeqp3.html | 2 +- .../interfacelapack_1_1dgeqrf-members.html | 2 +- docs/html/interfacelapack_1_1dgeqrf.html | 2 +- .../interfacelapack_1_1dgesvd-members.html | 2 +- docs/html/interfacelapack_1_1dgesvd.html | 2 +- .../interfacelapack_1_1dgetrf-members.html | 2 +- docs/html/interfacelapack_1_1dgetrf.html | 2 +- .../interfacelapack_1_1dgetri-members.html | 2 +- docs/html/interfacelapack_1_1dgetri.html | 2 +- .../interfacelapack_1_1dgetrs-members.html | 2 +- docs/html/interfacelapack_1_1dgetrs.html | 2 +- .../interfacelapack_1_1dggev-members.html | 2 +- docs/html/interfacelapack_1_1dggev.html | 2 +- .../interfacelapack_1_1dlaic1-members.html | 2 +- docs/html/interfacelapack_1_1dlaic1.html | 2 +- .../interfacelapack_1_1dlamch-members.html | 2 +- docs/html/interfacelapack_1_1dlamch.html | 2 +- .../interfacelapack_1_1dlaset-members.html | 2 +- docs/html/interfacelapack_1_1dlaset.html | 2 +- .../interfacelapack_1_1dlasrt-members.html | 2 +- docs/html/interfacelapack_1_1dlasrt.html | 2 +- .../interfacelapack_1_1dorglq-members.html | 2 +- docs/html/interfacelapack_1_1dorglq.html | 2 +- .../interfacelapack_1_1dorgqr-members.html | 2 +- docs/html/interfacelapack_1_1dorgqr.html | 2 +- .../interfacelapack_1_1dormlq-members.html | 2 +- docs/html/interfacelapack_1_1dormlq.html | 2 +- .../interfacelapack_1_1dormqr-members.html | 2 +- docs/html/interfacelapack_1_1dormqr.html | 2 +- .../interfacelapack_1_1dormrz-members.html | 2 +- docs/html/interfacelapack_1_1dormrz.html | 2 +- .../interfacelapack_1_1dpotrf-members.html | 2 +- docs/html/interfacelapack_1_1dpotrf.html | 2 +- .../interfacelapack_1_1dpotrs-members.html | 2 +- docs/html/interfacelapack_1_1dpotrs.html | 2 +- .../interfacelapack_1_1dsyev-members.html | 2 +- docs/html/interfacelapack_1_1dsyev.html | 2 +- .../interfacelapack_1_1dtzrzf-members.html | 2 +- docs/html/interfacelapack_1_1dtzrzf.html | 2 +- .../interfacelapack_1_1zgeev-members.html | 2 +- docs/html/interfacelapack_1_1zgeev.html | 2 +- .../interfacelapack_1_1zgelqf-members.html | 2 +- docs/html/interfacelapack_1_1zgelqf.html | 2 +- .../interfacelapack_1_1zgels-members.html | 2 +- docs/html/interfacelapack_1_1zgels.html | 2 +- .../interfacelapack_1_1zgelss-members.html | 2 +- docs/html/interfacelapack_1_1zgelss.html | 2 +- .../interfacelapack_1_1zgelsy-members.html | 2 +- docs/html/interfacelapack_1_1zgelsy.html | 2 +- .../interfacelapack_1_1zgeqp3-members.html | 2 +- docs/html/interfacelapack_1_1zgeqp3.html | 2 +- .../interfacelapack_1_1zgeqrf-members.html | 2 +- docs/html/interfacelapack_1_1zgeqrf.html | 2 +- .../interfacelapack_1_1zgesvd-members.html | 2 +- docs/html/interfacelapack_1_1zgesvd.html | 2 +- .../interfacelapack_1_1zgetrf-members.html | 2 +- docs/html/interfacelapack_1_1zgetrf.html | 2 +- .../interfacelapack_1_1zgetri-members.html | 2 +- docs/html/interfacelapack_1_1zgetri.html | 2 +- .../interfacelapack_1_1zgetrs-members.html | 2 +- docs/html/interfacelapack_1_1zgetrs.html | 2 +- .../interfacelapack_1_1zlaic1-members.html | 2 +- docs/html/interfacelapack_1_1zlaic1.html | 2 +- .../interfacelapack_1_1zpotrf-members.html | 2 +- docs/html/interfacelapack_1_1zpotrf.html | 2 +- .../interfacelapack_1_1zpotrs-members.html | 2 +- docs/html/interfacelapack_1_1zpotrs.html | 2 +- .../interfacelapack_1_1ztzrzf-members.html | 2 +- docs/html/interfacelapack_1_1ztzrzf.html | 2 +- .../interfacelapack_1_1zunglq-members.html | 2 +- docs/html/interfacelapack_1_1zunglq.html | 2 +- .../interfacelapack_1_1zungqr-members.html | 2 +- docs/html/interfacelapack_1_1zungqr.html | 2 +- .../interfacelapack_1_1zunmlq-members.html | 2 +- docs/html/interfacelapack_1_1zunmlq.html | 2 +- .../interfacelapack_1_1zunmqr-members.html | 2 +- docs/html/interfacelapack_1_1zunmqr.html | 2 +- .../interfacelapack_1_1zunmrz-members.html | 2 +- docs/html/interfacelapack_1_1zunmrz.html | 2 +- ...nalg_1_1band__diag__mtx__mult-members.html | 2 +- ...erfacelinalg_1_1band__diag__mtx__mult.html | 4 +- ...facelinalg_1_1band__mtx__mult-members.html | 2 +- .../interfacelinalg_1_1band__mtx__mult.html | 4 +- ...g_1_1band__mtx__to__full__mtx-members.html | 2 +- ...acelinalg_1_1band__mtx__to__full__mtx.html | 4 +- ...celinalg_1_1banded__to__dense-members.html | 2 +- .../interfacelinalg_1_1banded__to__dense.html | 4 +- ...acelinalg_1_1cholesky__factor-members.html | 2 +- .../interfacelinalg_1_1cholesky__factor.html | 2 +- ..._1_1cholesky__rank1__downdate-members.html | 2 +- ...celinalg_1_1cholesky__rank1__downdate.html | 2 +- ...lg_1_1cholesky__rank1__update-members.html | 2 +- ...facelinalg_1_1cholesky__rank1__update.html | 2 +- ...celinalg_1_1dense__to__banded-members.html | 2 +- .../interfacelinalg_1_1dense__to__banded.html | 4 +- docs/html/interfacelinalg_1_1det-members.html | 2 +- docs/html/interfacelinalg_1_1det.html | 2 +- ...facelinalg_1_1diag__mtx__mult-members.html | 2 +- .../interfacelinalg_1_1diag__mtx__mult.html | 4 +- .../interfacelinalg_1_1eigen-members.html | 2 +- docs/html/interfacelinalg_1_1eigen.html | 2 +- ...celinalg_1_1extract__diagonal-members.html | 2 +- .../interfacelinalg_1_1extract__diagonal.html | 4 +- .../interfacelinalg_1_1form__lq-members.html | 2 +- docs/html/interfacelinalg_1_1form__lq.html | 8 +- .../interfacelinalg_1_1form__lu-members.html | 2 +- docs/html/interfacelinalg_1_1form__lu.html | 4 +- .../interfacelinalg_1_1form__qr-members.html | 2 +- docs/html/interfacelinalg_1_1form__qr.html | 6 +- ...interfacelinalg_1_1lq__factor-members.html | 2 +- docs/html/interfacelinalg_1_1lq__factor.html | 8 +- ...interfacelinalg_1_1lu__factor-members.html | 2 +- docs/html/interfacelinalg_1_1lu__factor.html | 2 +- .../interfacelinalg_1_1matmul-members.html | 2 +- docs/html/interfacelinalg_1_1matmul.html | 4 +- ...terfacelinalg_1_1mtx__inverse-members.html | 2 +- .../html/interfacelinalg_1_1mtx__inverse.html | 4 +- .../interfacelinalg_1_1mtx__mult-members.html | 2 +- docs/html/interfacelinalg_1_1mtx__mult.html | 2 +- ...erfacelinalg_1_1mtx__pinverse-members.html | 2 +- .../interfacelinalg_1_1mtx__pinverse.html | 4 +- .../interfacelinalg_1_1mtx__rank-members.html | 2 +- docs/html/interfacelinalg_1_1mtx__rank.html | 2 +- .../interfacelinalg_1_1mult__lq-members.html | 2 +- docs/html/interfacelinalg_1_1mult__lq.html | 8 +- .../interfacelinalg_1_1mult__qr-members.html | 2 +- docs/html/interfacelinalg_1_1mult__qr.html | 2 +- .../interfacelinalg_1_1mult__rz-members.html | 2 +- docs/html/interfacelinalg_1_1mult__rz.html | 2 +- ...rfacelinalg_1_1nonzero__count-members.html | 2 +- .../interfacelinalg_1_1nonzero__count.html | 4 +- ...facelinalg_1_1operator_07-_08-members.html | 2 +- .../interfacelinalg_1_1operator_07-_08.html | 4 +- ...celinalg_1_1operator_07_09_08-members.html | 2 +- .../interfacelinalg_1_1operator_07_09_08.html | 4 +- ...acelinalg_1_1operator_07_2_08-members.html | 2 +- .../interfacelinalg_1_1operator_07_2_08.html | 4 +- ...acelinalg_1_1operator_07_5_08-members.html | 2 +- .../interfacelinalg_1_1operator_07_5_08.html | 4 +- ...rfacelinalg_1_1pgmres__solver-members.html | 2 +- .../interfacelinalg_1_1pgmres__solver.html | 4 +- ...interfacelinalg_1_1qr__factor-members.html | 2 +- docs/html/interfacelinalg_1_1qr__factor.html | 2 +- ...celinalg_1_1qr__rank1__update-members.html | 2 +- .../interfacelinalg_1_1qr__rank1__update.html | 2 +- ...erfacelinalg_1_1rank1__update-members.html | 2 +- .../interfacelinalg_1_1rank1__update.html | 2 +- ...elinalg_1_1recip__mult__array-members.html | 2 +- ...interfacelinalg_1_1recip__mult__array.html | 2 +- ...interfacelinalg_1_1rz__factor-members.html | 2 +- docs/html/interfacelinalg_1_1rz__factor.html | 2 +- .../html/interfacelinalg_1_1size-members.html | 2 +- docs/html/interfacelinalg_1_1size.html | 4 +- ...facelinalg_1_1solve__cholesky-members.html | 2 +- .../interfacelinalg_1_1solve__cholesky.html | 2 +- ...nalg_1_1solve__least__squares-members.html | 2 +- ...erfacelinalg_1_1solve__least__squares.html | 2 +- ..._1solve__least__squares__full-members.html | 2 +- ...linalg_1_1solve__least__squares__full.html | 2 +- ...1_1solve__least__squares__svd-members.html | 2 +- ...elinalg_1_1solve__least__squares__svd.html | 2 +- .../interfacelinalg_1_1solve__lq-members.html | 2 +- docs/html/interfacelinalg_1_1solve__lq.html | 8 +- .../interfacelinalg_1_1solve__lu-members.html | 2 +- docs/html/interfacelinalg_1_1solve__lu.html | 2 +- .../interfacelinalg_1_1solve__qr-members.html | 2 +- docs/html/interfacelinalg_1_1solve__qr.html | 2 +- ..._1_1solve__triangular__system-members.html | 2 +- ...celinalg_1_1solve__triangular__system.html | 4 +- .../html/interfacelinalg_1_1sort-members.html | 4 +- docs/html/interfacelinalg_1_1sort.html | 8 +- ...nalg_1_1sparse__direct__solve-members.html | 2 +- ...erfacelinalg_1_1sparse__direct__solve.html | 4 +- docs/html/interfacelinalg_1_1svd-members.html | 2 +- docs/html/interfacelinalg_1_1svd.html | 4 +- .../html/interfacelinalg_1_1swap-members.html | 2 +- docs/html/interfacelinalg_1_1swap.html | 2 +- .../interfacelinalg_1_1trace-members.html | 2 +- docs/html/interfacelinalg_1_1trace.html | 2 +- .../interfacelinalg_1_1transpose-members.html | 2 +- docs/html/interfacelinalg_1_1transpose.html | 4 +- ...rfacelinalg_1_1tri__mtx__mult-members.html | 2 +- .../interfacelinalg_1_1tri__mtx__mult.html | 2 +- .../interfaceqrupdate_1_1dch1dn-members.html | 2 +- docs/html/interfaceqrupdate_1_1dch1dn.html | 2 +- .../interfaceqrupdate_1_1dch1up-members.html | 2 +- docs/html/interfaceqrupdate_1_1dch1up.html | 2 +- .../interfaceqrupdate_1_1dqr1up-members.html | 2 +- docs/html/interfaceqrupdate_1_1dqr1up.html | 2 +- .../interfaceqrupdate_1_1zch1dn-members.html | 2 +- docs/html/interfaceqrupdate_1_1zch1dn.html | 2 +- .../interfaceqrupdate_1_1zch1up-members.html | 2 +- docs/html/interfaceqrupdate_1_1zch1up.html | 2 +- .../interfaceqrupdate_1_1zqr1up-members.html | 2 +- docs/html/interfaceqrupdate_1_1zqr1up.html | 2 +- .../interfacesparskit_1_1amub-members.html | 2 +- docs/html/interfacesparskit_1_1amub.html | 2 +- .../interfacesparskit_1_1aplb-members.html | 2 +- docs/html/interfacesparskit_1_1aplb.html | 2 +- .../interfacesparskit_1_1aplsb-members.html | 2 +- docs/html/interfacesparskit_1_1aplsb.html | 2 +- .../interfacesparskit_1_1bndcsr-members.html | 2 +- docs/html/interfacesparskit_1_1bndcsr.html | 2 +- .../interfacesparskit_1_1clncsr-members.html | 2 +- docs/html/interfacesparskit_1_1clncsr.html | 2 +- .../interfacesparskit_1_1coocsr-members.html | 2 +- docs/html/interfacesparskit_1_1coocsr.html | 2 +- .../interfacesparskit_1_1csort-members.html | 2 +- docs/html/interfacesparskit_1_1csort.html | 2 +- .../interfacesparskit_1_1csrcsc2-members.html | 2 +- docs/html/interfacesparskit_1_1csrcsc2.html | 2 +- .../interfacesparskit_1_1csrmsr-members.html | 2 +- docs/html/interfacesparskit_1_1csrmsr.html | 2 +- .../interfacesparskit_1_1getdia-members.html | 2 +- docs/html/interfacesparskit_1_1getdia.html | 2 +- .../interfacesparskit_1_1getelm-members.html | 2 +- docs/html/interfacesparskit_1_1getelm.html | 2 +- .../interfacesparskit_1_1ilud-members.html | 2 +- docs/html/interfacesparskit_1_1ilud.html | 2 +- .../interfacesparskit_1_1iludp-members.html | 2 +- docs/html/interfacesparskit_1_1iludp.html | 2 +- .../interfacesparskit_1_1ilut-members.html | 2 +- docs/html/interfacesparskit_1_1ilut.html | 2 +- .../interfacesparskit_1_1ilutp-members.html | 2 +- docs/html/interfacesparskit_1_1ilutp.html | 2 +- .../interfacesparskit_1_1lusol-members.html | 2 +- docs/html/interfacesparskit_1_1lusol.html | 2 +- .../interfacesparskit_1_1msrcsr-members.html | 2 +- docs/html/interfacesparskit_1_1msrcsr.html | 2 +- .../interfacesparskit_1_1pgmres-members.html | 2 +- docs/html/interfacesparskit_1_1pgmres.html | 2 +- docs/html/lapack_8f90_source.html | 2 +- docs/html/linalg_8f90_source.html | 2929 +++++++++-------- docs/html/linalg_8h.html | 2 +- docs/html/linalg_8h_source.html | 2 +- docs/html/linalg__basic_8f90_source.html | 2 +- docs/html/linalg__eigen_8f90_source.html | 2 +- docs/html/linalg__factor_8f90_source.html | 2 +- docs/html/linalg__solve_8f90_source.html | 2 +- docs/html/linalg__sorting_8f90_source.html | 815 +++-- docs/html/linalg__sparse_8f90_source.html | 2 +- docs/html/namespaceblas.html | 2 +- docs/html/namespacelinalg.html | 2 +- docs/html/namespacemembers.html | 2 +- docs/html/namespacemembers_vars.html | 2 +- docs/html/namespaceqrupdate.html | 2 +- docs/html/namespaces.html | 2 +- docs/html/namespacesparskit.html | 2 +- docs/html/qrupdate_8f90_source.html | 2 +- docs/html/sparskit_8f90_source.html | 2 +- .../structlinalg_1_1csr__matrix-members.html | 2 +- docs/html/structlinalg_1_1csr__matrix.html | 2 +- .../structlinalg_1_1msr__matrix-members.html | 2 +- docs/html/structlinalg_1_1msr__matrix.html | 2 +- 307 files changed, 2352 insertions(+), 2082 deletions(-) diff --git a/docs/Doxyfile b/docs/Doxyfile index 1d9cbcd..61ce03e 100644 --- a/docs/Doxyfile +++ b/docs/Doxyfile @@ -48,7 +48,7 @@ PROJECT_NAME = linalg # could be handy for archiving the generated documentation or if some version # control system is used. -PROJECT_NUMBER = 1.8.1 +PROJECT_NUMBER = 1.8.2 # Using the PROJECT_BRIEF tag one can provide an optional one line description # for a project that appears at the top of each page and should give viewer a diff --git a/docs/html/annotated.html b/docs/html/annotated.html index fa27af1..7bb65dc 100644 --- a/docs/html/annotated.html +++ b/docs/html/annotated.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/blas_8f90_source.html b/docs/html/blas_8f90_source.html index 1d46039..7f41046 100644 --- a/docs/html/blas_8f90_source.html +++ b/docs/html/blas_8f90_source.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/classes.html b/docs/html/classes.html index 947f470..9798183 100644 --- a/docs/html/classes.html +++ b/docs/html/classes.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/dir_68267d1309a1af8e8297ef4c3efbcdba.html b/docs/html/dir_68267d1309a1af8e8297ef4c3efbcdba.html index f01909c..88373c4 100644 --- a/docs/html/dir_68267d1309a1af8e8297ef4c3efbcdba.html +++ b/docs/html/dir_68267d1309a1af8e8297ef4c3efbcdba.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/dir_d44c64559bbebec7f509842c48db8b23.html b/docs/html/dir_d44c64559bbebec7f509842c48db8b23.html index 75b9927..857fd83 100644 --- a/docs/html/dir_d44c64559bbebec7f509842c48db8b23.html +++ b/docs/html/dir_d44c64559bbebec7f509842c48db8b23.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/files.html b/docs/html/files.html index 3052ecf..6cb7d56 100644 --- a/docs/html/files.html +++ b/docs/html/files.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/functions.html b/docs/html/functions.html index d09c25c..22c49c7 100644 --- a/docs/html/functions.html +++ b/docs/html/functions.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/functions_func.html b/docs/html/functions_func.html index a3b9200..02b00c1 100644 --- a/docs/html/functions_func.html +++ b/docs/html/functions_func.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/functions_vars.html b/docs/html/functions_vars.html index 656999f..7b21ef2 100644 --- a/docs/html/functions_vars.html +++ b/docs/html/functions_vars.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/globals.html b/docs/html/globals.html index 1e863c2..e84aa9c 100644 --- a/docs/html/globals.html +++ b/docs/html/globals.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/globals_func.html b/docs/html/globals_func.html index d9d2394..77ecec3 100644 --- a/docs/html/globals_func.html +++ b/docs/html/globals_func.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/graph_legend.html b/docs/html/graph_legend.html index 7d98bfd..09bf4dd 100644 --- a/docs/html/graph_legend.html +++ b/docs/html/graph_legend.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/index.html b/docs/html/index.html index cf9c60f..777dea1 100644 --- a/docs/html/index.html +++ b/docs/html/index.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfaceblas_1_1ddot-members.html b/docs/html/interfaceblas_1_1ddot-members.html index 116f7e2..da17859 100644 --- a/docs/html/interfaceblas_1_1ddot-members.html +++ b/docs/html/interfaceblas_1_1ddot-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfaceblas_1_1ddot.html b/docs/html/interfaceblas_1_1ddot.html index 41faa34..c65a58f 100644 --- a/docs/html/interfaceblas_1_1ddot.html +++ b/docs/html/interfaceblas_1_1ddot.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfaceblas_1_1dgbmv-members.html b/docs/html/interfaceblas_1_1dgbmv-members.html index 97288ab..e7a26aa 100644 --- a/docs/html/interfaceblas_1_1dgbmv-members.html +++ b/docs/html/interfaceblas_1_1dgbmv-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfaceblas_1_1dgbmv.html b/docs/html/interfaceblas_1_1dgbmv.html index 827de5a..5cd45e6 100644 --- a/docs/html/interfaceblas_1_1dgbmv.html +++ b/docs/html/interfaceblas_1_1dgbmv.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfaceblas_1_1dgemm-members.html b/docs/html/interfaceblas_1_1dgemm-members.html index 958ae59..392e309 100644 --- a/docs/html/interfaceblas_1_1dgemm-members.html +++ b/docs/html/interfaceblas_1_1dgemm-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfaceblas_1_1dgemm.html b/docs/html/interfaceblas_1_1dgemm.html index 161a13d..e6611c4 100644 --- a/docs/html/interfaceblas_1_1dgemm.html +++ b/docs/html/interfaceblas_1_1dgemm.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfaceblas_1_1dgemv-members.html b/docs/html/interfaceblas_1_1dgemv-members.html index 1233059..bbaa930 100644 --- a/docs/html/interfaceblas_1_1dgemv-members.html +++ b/docs/html/interfaceblas_1_1dgemv-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfaceblas_1_1dgemv.html b/docs/html/interfaceblas_1_1dgemv.html index 3e83786..c2befc5 100644 --- a/docs/html/interfaceblas_1_1dgemv.html +++ b/docs/html/interfaceblas_1_1dgemv.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfaceblas_1_1dscal-members.html b/docs/html/interfaceblas_1_1dscal-members.html index 3e52d24..18f5747 100644 --- a/docs/html/interfaceblas_1_1dscal-members.html +++ b/docs/html/interfaceblas_1_1dscal-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfaceblas_1_1dscal.html b/docs/html/interfaceblas_1_1dscal.html index 9a8a892..3349e7b 100644 --- a/docs/html/interfaceblas_1_1dscal.html +++ b/docs/html/interfaceblas_1_1dscal.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfaceblas_1_1dtrsm-members.html b/docs/html/interfaceblas_1_1dtrsm-members.html index bbc0405..e95b65a 100644 --- a/docs/html/interfaceblas_1_1dtrsm-members.html +++ b/docs/html/interfaceblas_1_1dtrsm-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfaceblas_1_1dtrsm.html b/docs/html/interfaceblas_1_1dtrsm.html index cfff8a9..0c943d6 100644 --- a/docs/html/interfaceblas_1_1dtrsm.html +++ b/docs/html/interfaceblas_1_1dtrsm.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfaceblas_1_1dtrsv-members.html b/docs/html/interfaceblas_1_1dtrsv-members.html index 5088b45..854b58b 100644 --- a/docs/html/interfaceblas_1_1dtrsv-members.html +++ b/docs/html/interfaceblas_1_1dtrsv-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfaceblas_1_1dtrsv.html b/docs/html/interfaceblas_1_1dtrsv.html index 2a7ab1d..088ca91 100644 --- a/docs/html/interfaceblas_1_1dtrsv.html +++ b/docs/html/interfaceblas_1_1dtrsv.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfaceblas_1_1zdscal-members.html b/docs/html/interfaceblas_1_1zdscal-members.html index 002968d..5c83ff8 100644 --- a/docs/html/interfaceblas_1_1zdscal-members.html +++ b/docs/html/interfaceblas_1_1zdscal-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfaceblas_1_1zdscal.html b/docs/html/interfaceblas_1_1zdscal.html index 22164e7..81f32d6 100644 --- a/docs/html/interfaceblas_1_1zdscal.html +++ b/docs/html/interfaceblas_1_1zdscal.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfaceblas_1_1zgbmv-members.html b/docs/html/interfaceblas_1_1zgbmv-members.html index 518050c..a001b7f 100644 --- a/docs/html/interfaceblas_1_1zgbmv-members.html +++ b/docs/html/interfaceblas_1_1zgbmv-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfaceblas_1_1zgbmv.html b/docs/html/interfaceblas_1_1zgbmv.html index da35602..1da46f9 100644 --- a/docs/html/interfaceblas_1_1zgbmv.html +++ b/docs/html/interfaceblas_1_1zgbmv.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfaceblas_1_1zgemm-members.html b/docs/html/interfaceblas_1_1zgemm-members.html index b945126..23cebd0 100644 --- a/docs/html/interfaceblas_1_1zgemm-members.html +++ b/docs/html/interfaceblas_1_1zgemm-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfaceblas_1_1zgemm.html b/docs/html/interfaceblas_1_1zgemm.html index dfcaad0..20d1fb0 100644 --- a/docs/html/interfaceblas_1_1zgemm.html +++ b/docs/html/interfaceblas_1_1zgemm.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfaceblas_1_1zgemv-members.html b/docs/html/interfaceblas_1_1zgemv-members.html index 3222171..7d820ac 100644 --- a/docs/html/interfaceblas_1_1zgemv-members.html +++ b/docs/html/interfaceblas_1_1zgemv-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfaceblas_1_1zgemv.html b/docs/html/interfaceblas_1_1zgemv.html index 3afd036..7ea4d3b 100644 --- a/docs/html/interfaceblas_1_1zgemv.html +++ b/docs/html/interfaceblas_1_1zgemv.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfaceblas_1_1zscal-members.html b/docs/html/interfaceblas_1_1zscal-members.html index 709e4bb..df84ac4 100644 --- a/docs/html/interfaceblas_1_1zscal-members.html +++ b/docs/html/interfaceblas_1_1zscal-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfaceblas_1_1zscal.html b/docs/html/interfaceblas_1_1zscal.html index 144dbd9..302ef26 100644 --- a/docs/html/interfaceblas_1_1zscal.html +++ b/docs/html/interfaceblas_1_1zscal.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfaceblas_1_1ztrsm-members.html b/docs/html/interfaceblas_1_1ztrsm-members.html index a03d28a..027248d 100644 --- a/docs/html/interfaceblas_1_1ztrsm-members.html +++ b/docs/html/interfaceblas_1_1ztrsm-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfaceblas_1_1ztrsm.html b/docs/html/interfaceblas_1_1ztrsm.html index 8625766..59f4649 100644 --- a/docs/html/interfaceblas_1_1ztrsm.html +++ b/docs/html/interfaceblas_1_1ztrsm.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfaceblas_1_1ztrsv-members.html b/docs/html/interfaceblas_1_1ztrsv-members.html index c832378..309d56c 100644 --- a/docs/html/interfaceblas_1_1ztrsv-members.html +++ b/docs/html/interfaceblas_1_1ztrsv-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfaceblas_1_1ztrsv.html b/docs/html/interfaceblas_1_1ztrsv.html index 3876b44..247fa13 100644 --- a/docs/html/interfaceblas_1_1ztrsv.html +++ b/docs/html/interfaceblas_1_1ztrsv.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dgeev-members.html b/docs/html/interfacelapack_1_1dgeev-members.html index 1cba3d7..dbb9d54 100644 --- a/docs/html/interfacelapack_1_1dgeev-members.html +++ b/docs/html/interfacelapack_1_1dgeev-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dgeev.html b/docs/html/interfacelapack_1_1dgeev.html index e92ca4f..a7927d7 100644 --- a/docs/html/interfacelapack_1_1dgeev.html +++ b/docs/html/interfacelapack_1_1dgeev.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dgelqf-members.html b/docs/html/interfacelapack_1_1dgelqf-members.html index d7966a7..cab11e8 100644 --- a/docs/html/interfacelapack_1_1dgelqf-members.html +++ b/docs/html/interfacelapack_1_1dgelqf-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dgelqf.html b/docs/html/interfacelapack_1_1dgelqf.html index 2fa9b01..d80cc2f 100644 --- a/docs/html/interfacelapack_1_1dgelqf.html +++ b/docs/html/interfacelapack_1_1dgelqf.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dgels-members.html b/docs/html/interfacelapack_1_1dgels-members.html index ed5cb2d..45138a4 100644 --- a/docs/html/interfacelapack_1_1dgels-members.html +++ b/docs/html/interfacelapack_1_1dgels-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dgels.html b/docs/html/interfacelapack_1_1dgels.html index ba6932c..e1ce611 100644 --- a/docs/html/interfacelapack_1_1dgels.html +++ b/docs/html/interfacelapack_1_1dgels.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dgelss-members.html b/docs/html/interfacelapack_1_1dgelss-members.html index c802636..ab02184 100644 --- a/docs/html/interfacelapack_1_1dgelss-members.html +++ b/docs/html/interfacelapack_1_1dgelss-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dgelss.html b/docs/html/interfacelapack_1_1dgelss.html index fc21210..1261b15 100644 --- a/docs/html/interfacelapack_1_1dgelss.html +++ b/docs/html/interfacelapack_1_1dgelss.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dgelsy-members.html b/docs/html/interfacelapack_1_1dgelsy-members.html index eb8fff0..003c861 100644 --- a/docs/html/interfacelapack_1_1dgelsy-members.html +++ b/docs/html/interfacelapack_1_1dgelsy-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dgelsy.html b/docs/html/interfacelapack_1_1dgelsy.html index ee66752..af13d1b 100644 --- a/docs/html/interfacelapack_1_1dgelsy.html +++ b/docs/html/interfacelapack_1_1dgelsy.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dgeqp3-members.html b/docs/html/interfacelapack_1_1dgeqp3-members.html index d789287..d3959dd 100644 --- a/docs/html/interfacelapack_1_1dgeqp3-members.html +++ b/docs/html/interfacelapack_1_1dgeqp3-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dgeqp3.html b/docs/html/interfacelapack_1_1dgeqp3.html index 2984da1..b5c7ebf 100644 --- a/docs/html/interfacelapack_1_1dgeqp3.html +++ b/docs/html/interfacelapack_1_1dgeqp3.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dgeqrf-members.html b/docs/html/interfacelapack_1_1dgeqrf-members.html index 1d36ebf..ea47bd9 100644 --- a/docs/html/interfacelapack_1_1dgeqrf-members.html +++ b/docs/html/interfacelapack_1_1dgeqrf-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dgeqrf.html b/docs/html/interfacelapack_1_1dgeqrf.html index 8c795e4..a6c335f 100644 --- a/docs/html/interfacelapack_1_1dgeqrf.html +++ b/docs/html/interfacelapack_1_1dgeqrf.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dgesvd-members.html b/docs/html/interfacelapack_1_1dgesvd-members.html index 486e1b8..17f3a9c 100644 --- a/docs/html/interfacelapack_1_1dgesvd-members.html +++ b/docs/html/interfacelapack_1_1dgesvd-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dgesvd.html b/docs/html/interfacelapack_1_1dgesvd.html index cb04c84..35feb64 100644 --- a/docs/html/interfacelapack_1_1dgesvd.html +++ b/docs/html/interfacelapack_1_1dgesvd.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dgetrf-members.html b/docs/html/interfacelapack_1_1dgetrf-members.html index 408a739..19f54e7 100644 --- a/docs/html/interfacelapack_1_1dgetrf-members.html +++ b/docs/html/interfacelapack_1_1dgetrf-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dgetrf.html b/docs/html/interfacelapack_1_1dgetrf.html index 9d459c8..63b7fdd 100644 --- a/docs/html/interfacelapack_1_1dgetrf.html +++ b/docs/html/interfacelapack_1_1dgetrf.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dgetri-members.html b/docs/html/interfacelapack_1_1dgetri-members.html index d12c24c..ad29c6a 100644 --- a/docs/html/interfacelapack_1_1dgetri-members.html +++ b/docs/html/interfacelapack_1_1dgetri-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dgetri.html b/docs/html/interfacelapack_1_1dgetri.html index ab91f05..2059153 100644 --- a/docs/html/interfacelapack_1_1dgetri.html +++ b/docs/html/interfacelapack_1_1dgetri.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dgetrs-members.html b/docs/html/interfacelapack_1_1dgetrs-members.html index 540d14b..a7da4be 100644 --- a/docs/html/interfacelapack_1_1dgetrs-members.html +++ b/docs/html/interfacelapack_1_1dgetrs-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dgetrs.html b/docs/html/interfacelapack_1_1dgetrs.html index 9181095..59af6b0 100644 --- a/docs/html/interfacelapack_1_1dgetrs.html +++ b/docs/html/interfacelapack_1_1dgetrs.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dggev-members.html b/docs/html/interfacelapack_1_1dggev-members.html index 9b0bfb2..c059fe1 100644 --- a/docs/html/interfacelapack_1_1dggev-members.html +++ b/docs/html/interfacelapack_1_1dggev-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dggev.html b/docs/html/interfacelapack_1_1dggev.html index e982101..a7060b3 100644 --- a/docs/html/interfacelapack_1_1dggev.html +++ b/docs/html/interfacelapack_1_1dggev.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dlaic1-members.html b/docs/html/interfacelapack_1_1dlaic1-members.html index c5ebb0c..933711b 100644 --- a/docs/html/interfacelapack_1_1dlaic1-members.html +++ b/docs/html/interfacelapack_1_1dlaic1-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dlaic1.html b/docs/html/interfacelapack_1_1dlaic1.html index 837295a..e3d8f9a 100644 --- a/docs/html/interfacelapack_1_1dlaic1.html +++ b/docs/html/interfacelapack_1_1dlaic1.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dlamch-members.html b/docs/html/interfacelapack_1_1dlamch-members.html index a0a4fed..efc56e7 100644 --- a/docs/html/interfacelapack_1_1dlamch-members.html +++ b/docs/html/interfacelapack_1_1dlamch-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dlamch.html b/docs/html/interfacelapack_1_1dlamch.html index f595f1d..665b9f0 100644 --- a/docs/html/interfacelapack_1_1dlamch.html +++ b/docs/html/interfacelapack_1_1dlamch.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dlaset-members.html b/docs/html/interfacelapack_1_1dlaset-members.html index a9168da..fd9ad10 100644 --- a/docs/html/interfacelapack_1_1dlaset-members.html +++ b/docs/html/interfacelapack_1_1dlaset-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dlaset.html b/docs/html/interfacelapack_1_1dlaset.html index 7bf1ed9..f64e6ad 100644 --- a/docs/html/interfacelapack_1_1dlaset.html +++ b/docs/html/interfacelapack_1_1dlaset.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dlasrt-members.html b/docs/html/interfacelapack_1_1dlasrt-members.html index 8d49c69..eb3a1e0 100644 --- a/docs/html/interfacelapack_1_1dlasrt-members.html +++ b/docs/html/interfacelapack_1_1dlasrt-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dlasrt.html b/docs/html/interfacelapack_1_1dlasrt.html index bcb977b..b45e072 100644 --- a/docs/html/interfacelapack_1_1dlasrt.html +++ b/docs/html/interfacelapack_1_1dlasrt.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dorglq-members.html b/docs/html/interfacelapack_1_1dorglq-members.html index 938f44a..c5afbfb 100644 --- a/docs/html/interfacelapack_1_1dorglq-members.html +++ b/docs/html/interfacelapack_1_1dorglq-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dorglq.html b/docs/html/interfacelapack_1_1dorglq.html index ec05f4e..0b67379 100644 --- a/docs/html/interfacelapack_1_1dorglq.html +++ b/docs/html/interfacelapack_1_1dorglq.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dorgqr-members.html b/docs/html/interfacelapack_1_1dorgqr-members.html index bf6246f..09a372f 100644 --- a/docs/html/interfacelapack_1_1dorgqr-members.html +++ b/docs/html/interfacelapack_1_1dorgqr-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dorgqr.html b/docs/html/interfacelapack_1_1dorgqr.html index 7eee8c4..e43cab0 100644 --- a/docs/html/interfacelapack_1_1dorgqr.html +++ b/docs/html/interfacelapack_1_1dorgqr.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dormlq-members.html b/docs/html/interfacelapack_1_1dormlq-members.html index 5f3a0e4..af4ad83 100644 --- a/docs/html/interfacelapack_1_1dormlq-members.html +++ b/docs/html/interfacelapack_1_1dormlq-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dormlq.html b/docs/html/interfacelapack_1_1dormlq.html index 337ecf2..fff7003 100644 --- a/docs/html/interfacelapack_1_1dormlq.html +++ b/docs/html/interfacelapack_1_1dormlq.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dormqr-members.html b/docs/html/interfacelapack_1_1dormqr-members.html index 1ba72c5..ad5a5fe 100644 --- a/docs/html/interfacelapack_1_1dormqr-members.html +++ b/docs/html/interfacelapack_1_1dormqr-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dormqr.html b/docs/html/interfacelapack_1_1dormqr.html index 4a78beb..534f3a6 100644 --- a/docs/html/interfacelapack_1_1dormqr.html +++ b/docs/html/interfacelapack_1_1dormqr.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dormrz-members.html b/docs/html/interfacelapack_1_1dormrz-members.html index 9f509bc..cab7450 100644 --- a/docs/html/interfacelapack_1_1dormrz-members.html +++ b/docs/html/interfacelapack_1_1dormrz-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dormrz.html b/docs/html/interfacelapack_1_1dormrz.html index 338a254..12b3c76 100644 --- a/docs/html/interfacelapack_1_1dormrz.html +++ b/docs/html/interfacelapack_1_1dormrz.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dpotrf-members.html b/docs/html/interfacelapack_1_1dpotrf-members.html index 3988de7..55f9ab7 100644 --- a/docs/html/interfacelapack_1_1dpotrf-members.html +++ b/docs/html/interfacelapack_1_1dpotrf-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dpotrf.html b/docs/html/interfacelapack_1_1dpotrf.html index df3e23b..ff59346 100644 --- a/docs/html/interfacelapack_1_1dpotrf.html +++ b/docs/html/interfacelapack_1_1dpotrf.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dpotrs-members.html b/docs/html/interfacelapack_1_1dpotrs-members.html index 50ea378..c37482a 100644 --- a/docs/html/interfacelapack_1_1dpotrs-members.html +++ b/docs/html/interfacelapack_1_1dpotrs-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dpotrs.html b/docs/html/interfacelapack_1_1dpotrs.html index 12f2648..ec2ef9e 100644 --- a/docs/html/interfacelapack_1_1dpotrs.html +++ b/docs/html/interfacelapack_1_1dpotrs.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dsyev-members.html b/docs/html/interfacelapack_1_1dsyev-members.html index 8028a0b..064a605 100644 --- a/docs/html/interfacelapack_1_1dsyev-members.html +++ b/docs/html/interfacelapack_1_1dsyev-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dsyev.html b/docs/html/interfacelapack_1_1dsyev.html index b3d3d3c..2e6bccc 100644 --- a/docs/html/interfacelapack_1_1dsyev.html +++ b/docs/html/interfacelapack_1_1dsyev.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dtzrzf-members.html b/docs/html/interfacelapack_1_1dtzrzf-members.html index 1be93b3..1d5a0ef 100644 --- a/docs/html/interfacelapack_1_1dtzrzf-members.html +++ b/docs/html/interfacelapack_1_1dtzrzf-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1dtzrzf.html b/docs/html/interfacelapack_1_1dtzrzf.html index 367cdc7..ee9343e 100644 --- a/docs/html/interfacelapack_1_1dtzrzf.html +++ b/docs/html/interfacelapack_1_1dtzrzf.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1zgeev-members.html b/docs/html/interfacelapack_1_1zgeev-members.html index 385771c..fef687a 100644 --- a/docs/html/interfacelapack_1_1zgeev-members.html +++ b/docs/html/interfacelapack_1_1zgeev-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1zgeev.html b/docs/html/interfacelapack_1_1zgeev.html index 693607d..a5cd146 100644 --- a/docs/html/interfacelapack_1_1zgeev.html +++ b/docs/html/interfacelapack_1_1zgeev.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1zgelqf-members.html b/docs/html/interfacelapack_1_1zgelqf-members.html index a6ca65d..ac195c9 100644 --- a/docs/html/interfacelapack_1_1zgelqf-members.html +++ b/docs/html/interfacelapack_1_1zgelqf-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1zgelqf.html b/docs/html/interfacelapack_1_1zgelqf.html index a3e6470..4fb5a04 100644 --- a/docs/html/interfacelapack_1_1zgelqf.html +++ b/docs/html/interfacelapack_1_1zgelqf.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1zgels-members.html b/docs/html/interfacelapack_1_1zgels-members.html index f174688..c2dc0c7 100644 --- a/docs/html/interfacelapack_1_1zgels-members.html +++ b/docs/html/interfacelapack_1_1zgels-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1zgels.html b/docs/html/interfacelapack_1_1zgels.html index 0e3fe74..c03600e 100644 --- a/docs/html/interfacelapack_1_1zgels.html +++ b/docs/html/interfacelapack_1_1zgels.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1zgelss-members.html b/docs/html/interfacelapack_1_1zgelss-members.html index c07860b..09f5235 100644 --- a/docs/html/interfacelapack_1_1zgelss-members.html +++ b/docs/html/interfacelapack_1_1zgelss-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1zgelss.html b/docs/html/interfacelapack_1_1zgelss.html index c1291d0..1dba28c 100644 --- a/docs/html/interfacelapack_1_1zgelss.html +++ b/docs/html/interfacelapack_1_1zgelss.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1zgelsy-members.html b/docs/html/interfacelapack_1_1zgelsy-members.html index f96f6ff..2f480b8 100644 --- a/docs/html/interfacelapack_1_1zgelsy-members.html +++ b/docs/html/interfacelapack_1_1zgelsy-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1zgelsy.html b/docs/html/interfacelapack_1_1zgelsy.html index cc0f018..599c839 100644 --- a/docs/html/interfacelapack_1_1zgelsy.html +++ b/docs/html/interfacelapack_1_1zgelsy.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1zgeqp3-members.html b/docs/html/interfacelapack_1_1zgeqp3-members.html index 010a546..abbd430 100644 --- a/docs/html/interfacelapack_1_1zgeqp3-members.html +++ b/docs/html/interfacelapack_1_1zgeqp3-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1zgeqp3.html b/docs/html/interfacelapack_1_1zgeqp3.html index e1d055a..70e2e97 100644 --- a/docs/html/interfacelapack_1_1zgeqp3.html +++ b/docs/html/interfacelapack_1_1zgeqp3.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1zgeqrf-members.html b/docs/html/interfacelapack_1_1zgeqrf-members.html index 6765059..83ad065 100644 --- a/docs/html/interfacelapack_1_1zgeqrf-members.html +++ b/docs/html/interfacelapack_1_1zgeqrf-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1zgeqrf.html b/docs/html/interfacelapack_1_1zgeqrf.html index a417dea..b72b63e 100644 --- a/docs/html/interfacelapack_1_1zgeqrf.html +++ b/docs/html/interfacelapack_1_1zgeqrf.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1zgesvd-members.html b/docs/html/interfacelapack_1_1zgesvd-members.html index 8d39c82..b83c222 100644 --- a/docs/html/interfacelapack_1_1zgesvd-members.html +++ b/docs/html/interfacelapack_1_1zgesvd-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1zgesvd.html b/docs/html/interfacelapack_1_1zgesvd.html index b307a25..e0955a6 100644 --- a/docs/html/interfacelapack_1_1zgesvd.html +++ b/docs/html/interfacelapack_1_1zgesvd.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1zgetrf-members.html b/docs/html/interfacelapack_1_1zgetrf-members.html index 98416ca..3ddd10c 100644 --- a/docs/html/interfacelapack_1_1zgetrf-members.html +++ b/docs/html/interfacelapack_1_1zgetrf-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1zgetrf.html b/docs/html/interfacelapack_1_1zgetrf.html index b53982f..2318db8 100644 --- a/docs/html/interfacelapack_1_1zgetrf.html +++ b/docs/html/interfacelapack_1_1zgetrf.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1zgetri-members.html b/docs/html/interfacelapack_1_1zgetri-members.html index 5140030..fd7fc9c 100644 --- a/docs/html/interfacelapack_1_1zgetri-members.html +++ b/docs/html/interfacelapack_1_1zgetri-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1zgetri.html b/docs/html/interfacelapack_1_1zgetri.html index 8bd1564..14f9763 100644 --- a/docs/html/interfacelapack_1_1zgetri.html +++ b/docs/html/interfacelapack_1_1zgetri.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1zgetrs-members.html b/docs/html/interfacelapack_1_1zgetrs-members.html index da316bd..c115881 100644 --- a/docs/html/interfacelapack_1_1zgetrs-members.html +++ b/docs/html/interfacelapack_1_1zgetrs-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1zgetrs.html b/docs/html/interfacelapack_1_1zgetrs.html index 34b02a1..43cc9ab 100644 --- a/docs/html/interfacelapack_1_1zgetrs.html +++ b/docs/html/interfacelapack_1_1zgetrs.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1zlaic1-members.html b/docs/html/interfacelapack_1_1zlaic1-members.html index eb9e351..b88b743 100644 --- a/docs/html/interfacelapack_1_1zlaic1-members.html +++ b/docs/html/interfacelapack_1_1zlaic1-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1zlaic1.html b/docs/html/interfacelapack_1_1zlaic1.html index e1e5a97..d5ca9ea 100644 --- a/docs/html/interfacelapack_1_1zlaic1.html +++ b/docs/html/interfacelapack_1_1zlaic1.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1zpotrf-members.html b/docs/html/interfacelapack_1_1zpotrf-members.html index a2e8ba8..248e2d0 100644 --- a/docs/html/interfacelapack_1_1zpotrf-members.html +++ b/docs/html/interfacelapack_1_1zpotrf-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1zpotrf.html b/docs/html/interfacelapack_1_1zpotrf.html index c82441f..f597bef 100644 --- a/docs/html/interfacelapack_1_1zpotrf.html +++ b/docs/html/interfacelapack_1_1zpotrf.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1zpotrs-members.html b/docs/html/interfacelapack_1_1zpotrs-members.html index ad850e7..1072789 100644 --- a/docs/html/interfacelapack_1_1zpotrs-members.html +++ b/docs/html/interfacelapack_1_1zpotrs-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1zpotrs.html b/docs/html/interfacelapack_1_1zpotrs.html index 5b12472..7d979c0 100644 --- a/docs/html/interfacelapack_1_1zpotrs.html +++ b/docs/html/interfacelapack_1_1zpotrs.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1ztzrzf-members.html b/docs/html/interfacelapack_1_1ztzrzf-members.html index fd4c48a..2529302 100644 --- a/docs/html/interfacelapack_1_1ztzrzf-members.html +++ b/docs/html/interfacelapack_1_1ztzrzf-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1ztzrzf.html b/docs/html/interfacelapack_1_1ztzrzf.html index 91061e5..4de1be1 100644 --- a/docs/html/interfacelapack_1_1ztzrzf.html +++ b/docs/html/interfacelapack_1_1ztzrzf.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1zunglq-members.html b/docs/html/interfacelapack_1_1zunglq-members.html index b1fd1d9..8a1ab0b 100644 --- a/docs/html/interfacelapack_1_1zunglq-members.html +++ b/docs/html/interfacelapack_1_1zunglq-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1zunglq.html b/docs/html/interfacelapack_1_1zunglq.html index fc59305..aa21e6f 100644 --- a/docs/html/interfacelapack_1_1zunglq.html +++ b/docs/html/interfacelapack_1_1zunglq.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1zungqr-members.html b/docs/html/interfacelapack_1_1zungqr-members.html index 994445f..9658fad 100644 --- a/docs/html/interfacelapack_1_1zungqr-members.html +++ b/docs/html/interfacelapack_1_1zungqr-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1zungqr.html b/docs/html/interfacelapack_1_1zungqr.html index 0808a7b..2a233b3 100644 --- a/docs/html/interfacelapack_1_1zungqr.html +++ b/docs/html/interfacelapack_1_1zungqr.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1zunmlq-members.html b/docs/html/interfacelapack_1_1zunmlq-members.html index 795d8a5..3018e60 100644 --- a/docs/html/interfacelapack_1_1zunmlq-members.html +++ b/docs/html/interfacelapack_1_1zunmlq-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1zunmlq.html b/docs/html/interfacelapack_1_1zunmlq.html index 66e02f6..ecf06c8 100644 --- a/docs/html/interfacelapack_1_1zunmlq.html +++ b/docs/html/interfacelapack_1_1zunmlq.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1zunmqr-members.html b/docs/html/interfacelapack_1_1zunmqr-members.html index aba3430..474f5bb 100644 --- a/docs/html/interfacelapack_1_1zunmqr-members.html +++ b/docs/html/interfacelapack_1_1zunmqr-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1zunmqr.html b/docs/html/interfacelapack_1_1zunmqr.html index 7841171..eb117a7 100644 --- a/docs/html/interfacelapack_1_1zunmqr.html +++ b/docs/html/interfacelapack_1_1zunmqr.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1zunmrz-members.html b/docs/html/interfacelapack_1_1zunmrz-members.html index d51558e..f7282fc 100644 --- a/docs/html/interfacelapack_1_1zunmrz-members.html +++ b/docs/html/interfacelapack_1_1zunmrz-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelapack_1_1zunmrz.html b/docs/html/interfacelapack_1_1zunmrz.html index eb2a590..a453ff2 100644 --- a/docs/html/interfacelapack_1_1zunmrz.html +++ b/docs/html/interfacelapack_1_1zunmrz.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1band__diag__mtx__mult-members.html b/docs/html/interfacelinalg_1_1band__diag__mtx__mult-members.html index 5762e86..42827af 100644 --- a/docs/html/interfacelinalg_1_1band__diag__mtx__mult-members.html +++ b/docs/html/interfacelinalg_1_1band__diag__mtx__mult-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1band__diag__mtx__mult.html b/docs/html/interfacelinalg_1_1band__diag__mtx__mult.html index 4d65dbf..011b1b9 100644 --- a/docs/html/interfacelinalg_1_1band__diag__mtx__mult.html +++ b/docs/html/interfacelinalg_1_1band__diag__mtx__mult.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
@@ -166,7 +166,7 @@ -

Definition at line 4133 of file linalg.f90.

+

Definition at line 4135 of file linalg.f90.


The documentation for this interface was generated from the following file: diff --git a/docs/html/interfacelinalg_1_1band__mtx__mult-members.html b/docs/html/interfacelinalg_1_1band__mtx__mult-members.html index a8a1ead..3e07576 100644 --- a/docs/html/interfacelinalg_1_1band__mtx__mult-members.html +++ b/docs/html/interfacelinalg_1_1band__mtx__mult-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1band__mtx__mult.html b/docs/html/interfacelinalg_1_1band__mtx__mult.html index 68102cf..06fe3ce 100644 --- a/docs/html/interfacelinalg_1_1band__mtx__mult.html +++ b/docs/html/interfacelinalg_1_1band__mtx__mult.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
@@ -191,7 +191,7 @@ -

Definition at line 4028 of file linalg.f90.

+

Definition at line 4030 of file linalg.f90.


The documentation for this interface was generated from the following file: diff --git a/docs/html/interfacelinalg_1_1band__mtx__to__full__mtx-members.html b/docs/html/interfacelinalg_1_1band__mtx__to__full__mtx-members.html index b93d499..74b1854 100644 --- a/docs/html/interfacelinalg_1_1band__mtx__to__full__mtx-members.html +++ b/docs/html/interfacelinalg_1_1band__mtx__to__full__mtx-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1band__mtx__to__full__mtx.html b/docs/html/interfacelinalg_1_1band__mtx__to__full__mtx.html index 427360c..7f41ae2 100644 --- a/docs/html/interfacelinalg_1_1band__mtx__to__full__mtx.html +++ b/docs/html/interfacelinalg_1_1band__mtx__to__full__mtx.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
@@ -151,7 +151,7 @@ -

Definition at line 4070 of file linalg.f90.

+

Definition at line 4072 of file linalg.f90.


The documentation for this interface was generated from the following file: diff --git a/docs/html/interfacelinalg_1_1banded__to__dense-members.html b/docs/html/interfacelinalg_1_1banded__to__dense-members.html index 7baf1bc..41428f6 100644 --- a/docs/html/interfacelinalg_1_1banded__to__dense-members.html +++ b/docs/html/interfacelinalg_1_1banded__to__dense-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1banded__to__dense.html b/docs/html/interfacelinalg_1_1banded__to__dense.html index d079004..6eb1857 100644 --- a/docs/html/interfacelinalg_1_1banded__to__dense.html +++ b/docs/html/interfacelinalg_1_1banded__to__dense.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
@@ -140,7 +140,7 @@ -

Definition at line 4161 of file linalg.f90.

+

Definition at line 4163 of file linalg.f90.


The documentation for this interface was generated from the following file: diff --git a/docs/html/interfacelinalg_1_1cholesky__factor-members.html b/docs/html/interfacelinalg_1_1cholesky__factor-members.html index c1e7045..095c3de 100644 --- a/docs/html/interfacelinalg_1_1cholesky__factor-members.html +++ b/docs/html/interfacelinalg_1_1cholesky__factor-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1cholesky__factor.html b/docs/html/interfacelinalg_1_1cholesky__factor.html index 3ca9256..f01c55e 100644 --- a/docs/html/interfacelinalg_1_1cholesky__factor.html +++ b/docs/html/interfacelinalg_1_1cholesky__factor.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1cholesky__rank1__downdate-members.html b/docs/html/interfacelinalg_1_1cholesky__rank1__downdate-members.html index 4bcbced..b988ec5 100644 --- a/docs/html/interfacelinalg_1_1cholesky__rank1__downdate-members.html +++ b/docs/html/interfacelinalg_1_1cholesky__rank1__downdate-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1cholesky__rank1__downdate.html b/docs/html/interfacelinalg_1_1cholesky__rank1__downdate.html index c6ee65b..d71038f 100644 --- a/docs/html/interfacelinalg_1_1cholesky__rank1__downdate.html +++ b/docs/html/interfacelinalg_1_1cholesky__rank1__downdate.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1cholesky__rank1__update-members.html b/docs/html/interfacelinalg_1_1cholesky__rank1__update-members.html index 32d6554..d7425a4 100644 --- a/docs/html/interfacelinalg_1_1cholesky__rank1__update-members.html +++ b/docs/html/interfacelinalg_1_1cholesky__rank1__update-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1cholesky__rank1__update.html b/docs/html/interfacelinalg_1_1cholesky__rank1__update.html index dbf58d3..7cb720a 100644 --- a/docs/html/interfacelinalg_1_1cholesky__rank1__update.html +++ b/docs/html/interfacelinalg_1_1cholesky__rank1__update.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1dense__to__banded-members.html b/docs/html/interfacelinalg_1_1dense__to__banded-members.html index c593a8f..807f6b4 100644 --- a/docs/html/interfacelinalg_1_1dense__to__banded-members.html +++ b/docs/html/interfacelinalg_1_1dense__to__banded-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1dense__to__banded.html b/docs/html/interfacelinalg_1_1dense__to__banded.html index 95d27b6..05fc69b 100644 --- a/docs/html/interfacelinalg_1_1dense__to__banded.html +++ b/docs/html/interfacelinalg_1_1dense__to__banded.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
@@ -138,7 +138,7 @@ -

Definition at line 4186 of file linalg.f90.

+

Definition at line 4188 of file linalg.f90.


The documentation for this interface was generated from the following file: diff --git a/docs/html/interfacelinalg_1_1det-members.html b/docs/html/interfacelinalg_1_1det-members.html index e3eb1da..b5cc84c 100644 --- a/docs/html/interfacelinalg_1_1det-members.html +++ b/docs/html/interfacelinalg_1_1det-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1det.html b/docs/html/interfacelinalg_1_1det.html index a107a30..fe80299 100644 --- a/docs/html/interfacelinalg_1_1det.html +++ b/docs/html/interfacelinalg_1_1det.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1diag__mtx__mult-members.html b/docs/html/interfacelinalg_1_1diag__mtx__mult-members.html index cff4498..8defde4 100644 --- a/docs/html/interfacelinalg_1_1diag__mtx__mult-members.html +++ b/docs/html/interfacelinalg_1_1diag__mtx__mult-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1diag__mtx__mult.html b/docs/html/interfacelinalg_1_1diag__mtx__mult.html index c92f470..837113c 100644 --- a/docs/html/interfacelinalg_1_1diag__mtx__mult.html +++ b/docs/html/interfacelinalg_1_1diag__mtx__mult.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
@@ -243,7 +243,7 @@
end do
end program
Multiplies a diagonal matrix with another matrix or array.
Definition linalg.f90:553
-
Performs sparse matrix multiplication C = A * B.
Definition linalg.f90:5369
+
Performs sparse matrix multiplication C = A * B.
Definition linalg.f90:5382
Computes the singular value decomposition of a matrix A. The SVD is defined as: , where is an M-by-M...
Definition linalg.f90:2182
Provides a set of common linear algebra routines.
Definition linalg.f90:145
The above program produces the following output.
U =
diff --git a/docs/html/interfacelinalg_1_1eigen-members.html b/docs/html/interfacelinalg_1_1eigen-members.html index c793b88..b9cefd9 100644 --- a/docs/html/interfacelinalg_1_1eigen-members.html +++ b/docs/html/interfacelinalg_1_1eigen-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1eigen.html b/docs/html/interfacelinalg_1_1eigen.html index 420295d..89e8454 100644 --- a/docs/html/interfacelinalg_1_1eigen.html +++ b/docs/html/interfacelinalg_1_1eigen.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1extract__diagonal-members.html b/docs/html/interfacelinalg_1_1extract__diagonal-members.html index d854841..b9a26b0 100644 --- a/docs/html/interfacelinalg_1_1extract__diagonal-members.html +++ b/docs/html/interfacelinalg_1_1extract__diagonal-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1extract__diagonal.html b/docs/html/interfacelinalg_1_1extract__diagonal.html index 42ed4a7..c6eefc5 100644 --- a/docs/html/interfacelinalg_1_1extract__diagonal.html +++ b/docs/html/interfacelinalg_1_1extract__diagonal.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
@@ -139,7 +139,7 @@ -

Definition at line 4208 of file linalg.f90.

+

Definition at line 4210 of file linalg.f90.


The documentation for this interface was generated from the following file: diff --git a/docs/html/interfacelinalg_1_1form__lq-members.html b/docs/html/interfacelinalg_1_1form__lq-members.html index 99cee5f..8284b06 100644 --- a/docs/html/interfacelinalg_1_1form__lq-members.html +++ b/docs/html/interfacelinalg_1_1form__lq-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1form__lq.html b/docs/html/interfacelinalg_1_1form__lq.html index e6c7438..a5248e6 100644 --- a/docs/html/interfacelinalg_1_1form__lq.html +++ b/docs/html/interfacelinalg_1_1form__lq.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
@@ -193,8 +193,8 @@
print '(A)', "LQ Solution: X = "
print '(F8.4)', (x(i), i = 1, size(x))
end program
-
Forms the orthogonal matrix Q from the elementary reflectors returned by the LQ factorization algorit...
Definition linalg.f90:3682
-
Computes the LQ factorization of an M-by-N matrix.
Definition linalg.f90:3568
+
Forms the orthogonal matrix Q from the elementary reflectors returned by the LQ factorization algorit...
Definition linalg.f90:3684
+
Computes the LQ factorization of an M-by-N matrix.
Definition linalg.f90:3570
Performs the matrix operation: .
Definition linalg.f90:361
Solves a triangular system of equations.
Definition linalg.f90:2316
Provides a set of common linear algebra routines.
Definition linalg.f90:145
@@ -208,7 +208,7 @@ -

Definition at line 3682 of file linalg.f90.

+

Definition at line 3684 of file linalg.f90.


The documentation for this interface was generated from the following file: diff --git a/docs/html/interfacelinalg_1_1form__lu-members.html b/docs/html/interfacelinalg_1_1form__lu-members.html index 3be4b87..535ae25 100644 --- a/docs/html/interfacelinalg_1_1form__lu-members.html +++ b/docs/html/interfacelinalg_1_1form__lu-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1form__lu.html b/docs/html/interfacelinalg_1_1form__lu.html index e26e3c6..ebc2a2d 100644 --- a/docs/html/interfacelinalg_1_1form__lu.html +++ b/docs/html/interfacelinalg_1_1form__lu.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
@@ -218,7 +218,7 @@
end program
Extracts the L and U matrices from the condensed [L\U] storage format used by the lu_factor.
Definition linalg.f90:967
Computes the LU factorization of an M-by-N matrix.
Definition linalg.f90:844
-
Performs sparse matrix multiplication C = A * B.
Definition linalg.f90:5369
+
Performs sparse matrix multiplication C = A * B.
Definition linalg.f90:5382
Solves a triangular system of equations.
Definition linalg.f90:2316
Provides a set of common linear algebra routines.
Definition linalg.f90:145
The above program produces the following output.
LU Solution: X =
diff --git a/docs/html/interfacelinalg_1_1form__qr-members.html b/docs/html/interfacelinalg_1_1form__qr-members.html index 8d180c6..3078aed 100644 --- a/docs/html/interfacelinalg_1_1form__qr-members.html +++ b/docs/html/interfacelinalg_1_1form__qr-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1form__qr.html b/docs/html/interfacelinalg_1_1form__qr.html index 194ff07..312313d 100644 --- a/docs/html/interfacelinalg_1_1form__qr.html +++ b/docs/html/interfacelinalg_1_1form__qr.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
@@ -222,10 +222,10 @@
! the column pivoting operations.
end program
Forms the full M-by-M orthogonal matrix Q from the elementary reflectors returned by the base QR fact...
Definition linalg.f90:1281
-
Performs sparse matrix multiplication C = A * B.
Definition linalg.f90:5369
+
Performs sparse matrix multiplication C = A * B.
Definition linalg.f90:5382
Computes the QR factorization of an M-by-N matrix.
Definition linalg.f90:1121
Solves a triangular system of equations.
Definition linalg.f90:2316
-
Provides the transpose of a sparse matrix.
Definition linalg.f90:5455
+
Provides the transpose of a sparse matrix.
Definition linalg.f90:5468
Provides a set of common linear algebra routines.
Definition linalg.f90:145
The above program produces the following output.
QR Solution: X =
0.3333
diff --git a/docs/html/interfacelinalg_1_1lq__factor-members.html b/docs/html/interfacelinalg_1_1lq__factor-members.html index dd15d34..9407920 100644 --- a/docs/html/interfacelinalg_1_1lq__factor-members.html +++ b/docs/html/interfacelinalg_1_1lq__factor-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1lq__factor.html b/docs/html/interfacelinalg_1_1lq__factor.html index 9a1c7cb..cb9a5ac 100644 --- a/docs/html/interfacelinalg_1_1lq__factor.html +++ b/docs/html/interfacelinalg_1_1lq__factor.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
@@ -192,8 +192,8 @@
print '(A)', "LQ Solution: X = "
print '(F8.4)', (x(i), i = 1, size(x))
end program
-
Forms the orthogonal matrix Q from the elementary reflectors returned by the LQ factorization algorit...
Definition linalg.f90:3682
-
Computes the LQ factorization of an M-by-N matrix.
Definition linalg.f90:3568
+
Forms the orthogonal matrix Q from the elementary reflectors returned by the LQ factorization algorit...
Definition linalg.f90:3684
+
Computes the LQ factorization of an M-by-N matrix.
Definition linalg.f90:3570
Performs the matrix operation: .
Definition linalg.f90:361
Solves a triangular system of equations.
Definition linalg.f90:2316
Provides a set of common linear algebra routines.
Definition linalg.f90:145
@@ -207,7 +207,7 @@ -

Definition at line 3568 of file linalg.f90.

+

Definition at line 3570 of file linalg.f90.


The documentation for this interface was generated from the following file: diff --git a/docs/html/interfacelinalg_1_1lu__factor-members.html b/docs/html/interfacelinalg_1_1lu__factor-members.html index 779d86c..3558772 100644 --- a/docs/html/interfacelinalg_1_1lu__factor-members.html +++ b/docs/html/interfacelinalg_1_1lu__factor-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1lu__factor.html b/docs/html/interfacelinalg_1_1lu__factor.html index bee6736..700277e 100644 --- a/docs/html/interfacelinalg_1_1lu__factor.html +++ b/docs/html/interfacelinalg_1_1lu__factor.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1matmul-members.html b/docs/html/interfacelinalg_1_1matmul-members.html index 2420923..6b701c4 100644 --- a/docs/html/interfacelinalg_1_1matmul-members.html +++ b/docs/html/interfacelinalg_1_1matmul-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1matmul.html b/docs/html/interfacelinalg_1_1matmul.html index 6b2d018..8c8a05e 100644 --- a/docs/html/interfacelinalg_1_1matmul.html +++ b/docs/html/interfacelinalg_1_1matmul.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
@@ -141,7 +141,7 @@
Returns
The M-element array C.
-

Definition at line 5369 of file linalg.f90.

+

Definition at line 5382 of file linalg.f90.


The documentation for this interface was generated from the following file: diff --git a/docs/html/interfacelinalg_1_1mtx__inverse-members.html b/docs/html/interfacelinalg_1_1mtx__inverse-members.html index 9441418..4410fda 100644 --- a/docs/html/interfacelinalg_1_1mtx__inverse-members.html +++ b/docs/html/interfacelinalg_1_1mtx__inverse-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1mtx__inverse.html b/docs/html/interfacelinalg_1_1mtx__inverse.html index 235930c..3303b14 100644 --- a/docs/html/interfacelinalg_1_1mtx__inverse.html +++ b/docs/html/interfacelinalg_1_1mtx__inverse.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
@@ -180,7 +180,7 @@
print *, c(i,:)
end do
end program
-
Performs sparse matrix multiplication C = A * B.
Definition linalg.f90:5369
+
Performs sparse matrix multiplication C = A * B.
Definition linalg.f90:5382
Computes the inverse of a square matrix.
Definition linalg.f90:3051
Provides a set of common linear algebra routines.
Definition linalg.f90:145
The above program produces the following output.
Inverse:
diff --git a/docs/html/interfacelinalg_1_1mtx__mult-members.html b/docs/html/interfacelinalg_1_1mtx__mult-members.html index cdaa12e..41747a5 100644 --- a/docs/html/interfacelinalg_1_1mtx__mult-members.html +++ b/docs/html/interfacelinalg_1_1mtx__mult-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1mtx__mult.html b/docs/html/interfacelinalg_1_1mtx__mult.html index bedb4b0..387bc1e 100644 --- a/docs/html/interfacelinalg_1_1mtx__mult.html +++ b/docs/html/interfacelinalg_1_1mtx__mult.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1mtx__pinverse-members.html b/docs/html/interfacelinalg_1_1mtx__pinverse-members.html index 1ea5456..9c40fc0 100644 --- a/docs/html/interfacelinalg_1_1mtx__pinverse-members.html +++ b/docs/html/interfacelinalg_1_1mtx__pinverse-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1mtx__pinverse.html b/docs/html/interfacelinalg_1_1mtx__pinverse.html index 360e311..fc041b6 100644 --- a/docs/html/interfacelinalg_1_1mtx__pinverse.html +++ b/docs/html/interfacelinalg_1_1mtx__pinverse.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
@@ -184,7 +184,7 @@
print *, c(i,:)
end do
end program
-
Performs sparse matrix multiplication C = A * B.
Definition linalg.f90:5369
+
Performs sparse matrix multiplication C = A * B.
Definition linalg.f90:5382
Computes the Moore-Penrose pseudo-inverse of a M-by-N matrix using the singular value decomposition o...
Definition linalg.f90:3157
Provides a set of common linear algebra routines.
Definition linalg.f90:145
The above program produces the following output.
Inverse:
diff --git a/docs/html/interfacelinalg_1_1mtx__rank-members.html b/docs/html/interfacelinalg_1_1mtx__rank-members.html index 9e8770f..c049107 100644 --- a/docs/html/interfacelinalg_1_1mtx__rank-members.html +++ b/docs/html/interfacelinalg_1_1mtx__rank-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1mtx__rank.html b/docs/html/interfacelinalg_1_1mtx__rank.html index 22918a4..847df5e 100644 --- a/docs/html/interfacelinalg_1_1mtx__rank.html +++ b/docs/html/interfacelinalg_1_1mtx__rank.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1mult__lq-members.html b/docs/html/interfacelinalg_1_1mult__lq-members.html index 6a73dec..1f0301d 100644 --- a/docs/html/interfacelinalg_1_1mult__lq-members.html +++ b/docs/html/interfacelinalg_1_1mult__lq-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1mult__lq.html b/docs/html/interfacelinalg_1_1mult__lq.html index 3d5dc74..42d7408 100644 --- a/docs/html/interfacelinalg_1_1mult__lq.html +++ b/docs/html/interfacelinalg_1_1mult__lq.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
@@ -217,8 +217,8 @@
print '(A)', "LQ Solution: X = "
print '(F8.4)', (b(i), i = 1, size(b))
end program
-
Computes the LQ factorization of an M-by-N matrix.
Definition linalg.f90:3568
-
Multiplies a general matrix by the orthogonal matrix Q from a LQ factorization.
Definition linalg.f90:3831
+
Computes the LQ factorization of an M-by-N matrix.
Definition linalg.f90:3570
+
Multiplies a general matrix by the orthogonal matrix Q from a LQ factorization.
Definition linalg.f90:3833
Solves a triangular system of equations.
Definition linalg.f90:2316
Provides a set of common linear algebra routines.
Definition linalg.f90:145
The above program produces the following output.
LQ Solution: X =
@@ -231,7 +231,7 @@ -

Definition at line 3831 of file linalg.f90.

+

Definition at line 3833 of file linalg.f90.


The documentation for this interface was generated from the following file: diff --git a/docs/html/interfacelinalg_1_1mult__qr-members.html b/docs/html/interfacelinalg_1_1mult__qr-members.html index 98676b4..c5c4106 100644 --- a/docs/html/interfacelinalg_1_1mult__qr-members.html +++ b/docs/html/interfacelinalg_1_1mult__qr-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1mult__qr.html b/docs/html/interfacelinalg_1_1mult__qr.html index d1ec6c2..e41bcbf 100644 --- a/docs/html/interfacelinalg_1_1mult__qr.html +++ b/docs/html/interfacelinalg_1_1mult__qr.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1mult__rz-members.html b/docs/html/interfacelinalg_1_1mult__rz-members.html index 480b934..cea2393 100644 --- a/docs/html/interfacelinalg_1_1mult__rz-members.html +++ b/docs/html/interfacelinalg_1_1mult__rz-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1mult__rz.html b/docs/html/interfacelinalg_1_1mult__rz.html index 6242128..40b5e14 100644 --- a/docs/html/interfacelinalg_1_1mult__rz.html +++ b/docs/html/interfacelinalg_1_1mult__rz.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1nonzero__count-members.html b/docs/html/interfacelinalg_1_1nonzero__count-members.html index 5d164cf..3bc3953 100644 --- a/docs/html/interfacelinalg_1_1nonzero__count-members.html +++ b/docs/html/interfacelinalg_1_1nonzero__count-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1nonzero__count.html b/docs/html/interfacelinalg_1_1nonzero__count.html index 059a048..cb26949 100644 --- a/docs/html/interfacelinalg_1_1nonzero__count.html +++ b/docs/html/interfacelinalg_1_1nonzero__count.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
@@ -131,7 +131,7 @@
Returns
The number of non-zero elements in the sparse matrix.
-

Definition at line 5325 of file linalg.f90.

+

Definition at line 5338 of file linalg.f90.


The documentation for this interface was generated from the following file: diff --git a/docs/html/interfacelinalg_1_1operator_07-_08-members.html b/docs/html/interfacelinalg_1_1operator_07-_08-members.html index 7dc8444..cb1f980 100644 --- a/docs/html/interfacelinalg_1_1operator_07-_08-members.html +++ b/docs/html/interfacelinalg_1_1operator_07-_08-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1operator_07-_08.html b/docs/html/interfacelinalg_1_1operator_07-_08.html index be4180a..214c03d 100644 --- a/docs/html/interfacelinalg_1_1operator_07-_08.html +++ b/docs/html/interfacelinalg_1_1operator_07-_08.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
@@ -128,7 +128,7 @@
Returns
The resulting matrix.
-

Definition at line 5400 of file linalg.f90.

+

Definition at line 5413 of file linalg.f90.


The documentation for this interface was generated from the following file: diff --git a/docs/html/interfacelinalg_1_1operator_07_09_08-members.html b/docs/html/interfacelinalg_1_1operator_07_09_08-members.html index ead5dd4..840d0e5 100644 --- a/docs/html/interfacelinalg_1_1operator_07_09_08-members.html +++ b/docs/html/interfacelinalg_1_1operator_07_09_08-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1operator_07_09_08.html b/docs/html/interfacelinalg_1_1operator_07_09_08.html index 0883422..3c53757 100644 --- a/docs/html/interfacelinalg_1_1operator_07_09_08.html +++ b/docs/html/interfacelinalg_1_1operator_07_09_08.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
@@ -128,7 +128,7 @@
Returns
The resulting matrix.
-

Definition at line 5385 of file linalg.f90.

+

Definition at line 5398 of file linalg.f90.


The documentation for this interface was generated from the following file: diff --git a/docs/html/interfacelinalg_1_1operator_07_2_08-members.html b/docs/html/interfacelinalg_1_1operator_07_2_08-members.html index d1a809c..adcd3fe 100644 --- a/docs/html/interfacelinalg_1_1operator_07_2_08-members.html +++ b/docs/html/interfacelinalg_1_1operator_07_2_08-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1operator_07_2_08.html b/docs/html/interfacelinalg_1_1operator_07_2_08.html index 6255637..d02de3c 100644 --- a/docs/html/interfacelinalg_1_1operator_07_2_08.html +++ b/docs/html/interfacelinalg_1_1operator_07_2_08.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
@@ -128,7 +128,7 @@
Returns
The resulting matrix.
-

Definition at line 5432 of file linalg.f90.

+

Definition at line 5445 of file linalg.f90.


The documentation for this interface was generated from the following file: diff --git a/docs/html/interfacelinalg_1_1operator_07_5_08-members.html b/docs/html/interfacelinalg_1_1operator_07_5_08-members.html index 93c3e35..51118db 100644 --- a/docs/html/interfacelinalg_1_1operator_07_5_08-members.html +++ b/docs/html/interfacelinalg_1_1operator_07_5_08-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1operator_07_5_08.html b/docs/html/interfacelinalg_1_1operator_07_5_08.html index 896ca36..8983e61 100644 --- a/docs/html/interfacelinalg_1_1operator_07_5_08.html +++ b/docs/html/interfacelinalg_1_1operator_07_5_08.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
@@ -132,7 +132,7 @@
Returns
The resulting matrix.
-

Definition at line 5416 of file linalg.f90.

+

Definition at line 5429 of file linalg.f90.


The documentation for this interface was generated from the following file: diff --git a/docs/html/interfacelinalg_1_1pgmres__solver-members.html b/docs/html/interfacelinalg_1_1pgmres__solver-members.html index 7e32ecd..4e1ec25 100644 --- a/docs/html/interfacelinalg_1_1pgmres__solver-members.html +++ b/docs/html/interfacelinalg_1_1pgmres__solver-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1pgmres__solver.html b/docs/html/interfacelinalg_1_1pgmres__solver.html index 0b0da4a..b73d669 100644 --- a/docs/html/interfacelinalg_1_1pgmres__solver.html +++ b/docs/html/interfacelinalg_1_1pgmres__solver.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
@@ -149,7 +149,7 @@ -

Definition at line 5533 of file linalg.f90.

+

Definition at line 5546 of file linalg.f90.


The documentation for this interface was generated from the following file: diff --git a/docs/html/interfacelinalg_1_1qr__factor-members.html b/docs/html/interfacelinalg_1_1qr__factor-members.html index 3db2f20..1ea01c6 100644 --- a/docs/html/interfacelinalg_1_1qr__factor-members.html +++ b/docs/html/interfacelinalg_1_1qr__factor-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1qr__factor.html b/docs/html/interfacelinalg_1_1qr__factor.html index 9563da6..5c7dbce 100644 --- a/docs/html/interfacelinalg_1_1qr__factor.html +++ b/docs/html/interfacelinalg_1_1qr__factor.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1qr__rank1__update-members.html b/docs/html/interfacelinalg_1_1qr__rank1__update-members.html index 5cca24c..d524613 100644 --- a/docs/html/interfacelinalg_1_1qr__rank1__update-members.html +++ b/docs/html/interfacelinalg_1_1qr__rank1__update-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1qr__rank1__update.html b/docs/html/interfacelinalg_1_1qr__rank1__update.html index 60d0472..b03970a 100644 --- a/docs/html/interfacelinalg_1_1qr__rank1__update.html +++ b/docs/html/interfacelinalg_1_1qr__rank1__update.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1rank1__update-members.html b/docs/html/interfacelinalg_1_1rank1__update-members.html index e01f506..62d0ef2 100644 --- a/docs/html/interfacelinalg_1_1rank1__update-members.html +++ b/docs/html/interfacelinalg_1_1rank1__update-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1rank1__update.html b/docs/html/interfacelinalg_1_1rank1__update.html index 8f7b53a..9dd2b24 100644 --- a/docs/html/interfacelinalg_1_1rank1__update.html +++ b/docs/html/interfacelinalg_1_1rank1__update.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1recip__mult__array-members.html b/docs/html/interfacelinalg_1_1recip__mult__array-members.html index 64bd711..32e2f92 100644 --- a/docs/html/interfacelinalg_1_1recip__mult__array-members.html +++ b/docs/html/interfacelinalg_1_1recip__mult__array-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1recip__mult__array.html b/docs/html/interfacelinalg_1_1recip__mult__array.html index efea3e4..cbc2eb0 100644 --- a/docs/html/interfacelinalg_1_1recip__mult__array.html +++ b/docs/html/interfacelinalg_1_1recip__mult__array.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1rz__factor-members.html b/docs/html/interfacelinalg_1_1rz__factor-members.html index eaaaaad..bb0c062 100644 --- a/docs/html/interfacelinalg_1_1rz__factor-members.html +++ b/docs/html/interfacelinalg_1_1rz__factor-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1rz__factor.html b/docs/html/interfacelinalg_1_1rz__factor.html index 7e91532..85876ae 100644 --- a/docs/html/interfacelinalg_1_1rz__factor.html +++ b/docs/html/interfacelinalg_1_1rz__factor.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1size-members.html b/docs/html/interfacelinalg_1_1size-members.html index b37b14d..b996e1f 100644 --- a/docs/html/interfacelinalg_1_1size-members.html +++ b/docs/html/interfacelinalg_1_1size-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1size.html b/docs/html/interfacelinalg_1_1size.html index b41924a..f87878c 100644 --- a/docs/html/interfacelinalg_1_1size.html +++ b/docs/html/interfacelinalg_1_1size.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
@@ -132,7 +132,7 @@
Returns
The size of the requested dimension.
-

Definition at line 5343 of file linalg.f90.

+

Definition at line 5356 of file linalg.f90.


The documentation for this interface was generated from the following file: diff --git a/docs/html/interfacelinalg_1_1solve__cholesky-members.html b/docs/html/interfacelinalg_1_1solve__cholesky-members.html index 0a7619c..0e5d16b 100644 --- a/docs/html/interfacelinalg_1_1solve__cholesky-members.html +++ b/docs/html/interfacelinalg_1_1solve__cholesky-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1solve__cholesky.html b/docs/html/interfacelinalg_1_1solve__cholesky.html index 44dda9d..66aa017 100644 --- a/docs/html/interfacelinalg_1_1solve__cholesky.html +++ b/docs/html/interfacelinalg_1_1solve__cholesky.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1solve__least__squares-members.html b/docs/html/interfacelinalg_1_1solve__least__squares-members.html index 80deb7d..937e896 100644 --- a/docs/html/interfacelinalg_1_1solve__least__squares-members.html +++ b/docs/html/interfacelinalg_1_1solve__least__squares-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1solve__least__squares.html b/docs/html/interfacelinalg_1_1solve__least__squares.html index 92fe28b..100a553 100644 --- a/docs/html/interfacelinalg_1_1solve__least__squares.html +++ b/docs/html/interfacelinalg_1_1solve__least__squares.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1solve__least__squares__full-members.html b/docs/html/interfacelinalg_1_1solve__least__squares__full-members.html index e13f75c..afcfb55 100644 --- a/docs/html/interfacelinalg_1_1solve__least__squares__full-members.html +++ b/docs/html/interfacelinalg_1_1solve__least__squares__full-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1solve__least__squares__full.html b/docs/html/interfacelinalg_1_1solve__least__squares__full.html index 93329d7..f61db6f 100644 --- a/docs/html/interfacelinalg_1_1solve__least__squares__full.html +++ b/docs/html/interfacelinalg_1_1solve__least__squares__full.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1solve__least__squares__svd-members.html b/docs/html/interfacelinalg_1_1solve__least__squares__svd-members.html index 133a543..ac334ba 100644 --- a/docs/html/interfacelinalg_1_1solve__least__squares__svd-members.html +++ b/docs/html/interfacelinalg_1_1solve__least__squares__svd-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1solve__least__squares__svd.html b/docs/html/interfacelinalg_1_1solve__least__squares__svd.html index 8ec8d78..27f50db 100644 --- a/docs/html/interfacelinalg_1_1solve__least__squares__svd.html +++ b/docs/html/interfacelinalg_1_1solve__least__squares__svd.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1solve__lq-members.html b/docs/html/interfacelinalg_1_1solve__lq-members.html index bf713e6..0a0fd27 100644 --- a/docs/html/interfacelinalg_1_1solve__lq-members.html +++ b/docs/html/interfacelinalg_1_1solve__lq-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1solve__lq.html b/docs/html/interfacelinalg_1_1solve__lq.html index fecde01..e7f9c2b 100644 --- a/docs/html/interfacelinalg_1_1solve__lq.html +++ b/docs/html/interfacelinalg_1_1solve__lq.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
@@ -184,8 +184,8 @@
print '(A)', "LQ Solution: X = "
print '(F8.4)', (b(i), i = 1, size(b))
end program
-
Computes the LQ factorization of an M-by-N matrix.
Definition linalg.f90:3568
-
Solves a system of M LQ-factored equations of N unknowns. N must be greater than or equal to M.
Definition linalg.f90:3926
+
Computes the LQ factorization of an M-by-N matrix.
Definition linalg.f90:3570
+
Solves a system of M LQ-factored equations of N unknowns. N must be greater than or equal to M.
Definition linalg.f90:3928
Provides a set of common linear algebra routines.
Definition linalg.f90:145
The above program produces the following output.
QR Solution: X =
0.3333
@@ -197,7 +197,7 @@ -

Definition at line 3926 of file linalg.f90.

+

Definition at line 3928 of file linalg.f90.


The documentation for this interface was generated from the following file: diff --git a/docs/html/interfacelinalg_1_1solve__lu-members.html b/docs/html/interfacelinalg_1_1solve__lu-members.html index 9c11052..f1b4f7c 100644 --- a/docs/html/interfacelinalg_1_1solve__lu-members.html +++ b/docs/html/interfacelinalg_1_1solve__lu-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1solve__lu.html b/docs/html/interfacelinalg_1_1solve__lu.html index 30ce77a..5eac9d7 100644 --- a/docs/html/interfacelinalg_1_1solve__lu.html +++ b/docs/html/interfacelinalg_1_1solve__lu.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1solve__qr-members.html b/docs/html/interfacelinalg_1_1solve__qr-members.html index 9396604..6a01f5b 100644 --- a/docs/html/interfacelinalg_1_1solve__qr-members.html +++ b/docs/html/interfacelinalg_1_1solve__qr-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1solve__qr.html b/docs/html/interfacelinalg_1_1solve__qr.html index 6211b2c..ad3e459 100644 --- a/docs/html/interfacelinalg_1_1solve__qr.html +++ b/docs/html/interfacelinalg_1_1solve__qr.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1solve__triangular__system-members.html b/docs/html/interfacelinalg_1_1solve__triangular__system-members.html index 7dd2a19..461e90e 100644 --- a/docs/html/interfacelinalg_1_1solve__triangular__system-members.html +++ b/docs/html/interfacelinalg_1_1solve__triangular__system-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1solve__triangular__system.html b/docs/html/interfacelinalg_1_1solve__triangular__system.html index 3f2f9f2..d440a17 100644 --- a/docs/html/interfacelinalg_1_1solve__triangular__system.html +++ b/docs/html/interfacelinalg_1_1solve__triangular__system.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
@@ -215,7 +215,7 @@
end program
Extracts the L and U matrices from the condensed [L\U] storage format used by the lu_factor.
Definition linalg.f90:967
Computes the LU factorization of an M-by-N matrix.
Definition linalg.f90:844
-
Performs sparse matrix multiplication C = A * B.
Definition linalg.f90:5369
+
Performs sparse matrix multiplication C = A * B.
Definition linalg.f90:5382
Solves a triangular system of equations.
Definition linalg.f90:2316
Provides a set of common linear algebra routines.
Definition linalg.f90:145
The above program produces the following output.
LU Solution: X =
diff --git a/docs/html/interfacelinalg_1_1sort-members.html b/docs/html/interfacelinalg_1_1sort-members.html index 2c57502..c42057f 100644 --- a/docs/html/interfacelinalg_1_1sort-members.html +++ b/docs/html/interfacelinalg_1_1sort-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
@@ -111,6 +111,8 @@ sort_dbl_array_ind (defined in linalg::sort)linalg::sort sort_eigen_cmplx (defined in linalg::sort)linalg::sort sort_eigen_dbl (defined in linalg::sort)linalg::sort + sort_int32_array (defined in linalg::sort)linalg::sort + sort_int32_array_ind (defined in linalg::sort)linalg::sort
diff --git a/docs/html/interfacelinalg_1_1sort.html b/docs/html/interfacelinalg_1_1sort.html index 49e0175..f050215 100644 --- a/docs/html/interfacelinalg_1_1sort.html +++ b/docs/html/interfacelinalg_1_1sort.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
@@ -129,6 +129,12 @@  sort_eigen_dbl   +sort_int32_array +  +sort_int32_array_ind

Detailed Description

Sorts an array.

diff --git a/docs/html/interfacelinalg_1_1sparse__direct__solve-members.html b/docs/html/interfacelinalg_1_1sparse__direct__solve-members.html index 0aef577..b504066 100644 --- a/docs/html/interfacelinalg_1_1sparse__direct__solve-members.html +++ b/docs/html/interfacelinalg_1_1sparse__direct__solve-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1sparse__direct__solve.html b/docs/html/interfacelinalg_1_1sparse__direct__solve.html index 1dfe54c..5f3d0f9 100644 --- a/docs/html/interfacelinalg_1_1sparse__direct__solve.html +++ b/docs/html/interfacelinalg_1_1sparse__direct__solve.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
@@ -136,7 +136,7 @@ -

Definition at line 5483 of file linalg.f90.

+

Definition at line 5496 of file linalg.f90.


The documentation for this interface was generated from the following file: diff --git a/docs/html/interfacelinalg_1_1svd-members.html b/docs/html/interfacelinalg_1_1svd-members.html index 8146b74..51bc59c 100644 --- a/docs/html/interfacelinalg_1_1svd-members.html +++ b/docs/html/interfacelinalg_1_1svd-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1svd.html b/docs/html/interfacelinalg_1_1svd.html index 3d6a8b6..7a234a2 100644 --- a/docs/html/interfacelinalg_1_1svd.html +++ b/docs/html/interfacelinalg_1_1svd.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
@@ -189,7 +189,7 @@
end do
end program
Multiplies a diagonal matrix with another matrix or array.
Definition linalg.f90:553
-
Performs sparse matrix multiplication C = A * B.
Definition linalg.f90:5369
+
Performs sparse matrix multiplication C = A * B.
Definition linalg.f90:5382
Computes the singular value decomposition of a matrix A. The SVD is defined as: , where is an M-by-M...
Definition linalg.f90:2182
Provides a set of common linear algebra routines.
Definition linalg.f90:145
The above program produces the following output.
U =
diff --git a/docs/html/interfacelinalg_1_1swap-members.html b/docs/html/interfacelinalg_1_1swap-members.html index bedd1d6..2e81892 100644 --- a/docs/html/interfacelinalg_1_1swap-members.html +++ b/docs/html/interfacelinalg_1_1swap-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1swap.html b/docs/html/interfacelinalg_1_1swap.html index 79af913..c14a69a 100644 --- a/docs/html/interfacelinalg_1_1swap.html +++ b/docs/html/interfacelinalg_1_1swap.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1trace-members.html b/docs/html/interfacelinalg_1_1trace-members.html index 47a5aad..06adeee 100644 --- a/docs/html/interfacelinalg_1_1trace-members.html +++ b/docs/html/interfacelinalg_1_1trace-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1trace.html b/docs/html/interfacelinalg_1_1trace.html index 8b79df8..63b2314 100644 --- a/docs/html/interfacelinalg_1_1trace.html +++ b/docs/html/interfacelinalg_1_1trace.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1transpose-members.html b/docs/html/interfacelinalg_1_1transpose-members.html index 0bf8b04..f19637b 100644 --- a/docs/html/interfacelinalg_1_1transpose-members.html +++ b/docs/html/interfacelinalg_1_1transpose-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1transpose.html b/docs/html/interfacelinalg_1_1transpose.html index 24d273c..78f4b65 100644 --- a/docs/html/interfacelinalg_1_1transpose.html +++ b/docs/html/interfacelinalg_1_1transpose.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
@@ -127,7 +127,7 @@
Returns
The resulting matrix.
-

Definition at line 5455 of file linalg.f90.

+

Definition at line 5468 of file linalg.f90.


The documentation for this interface was generated from the following file: diff --git a/docs/html/interfacelinalg_1_1tri__mtx__mult-members.html b/docs/html/interfacelinalg_1_1tri__mtx__mult-members.html index 0834b00..316273c 100644 --- a/docs/html/interfacelinalg_1_1tri__mtx__mult-members.html +++ b/docs/html/interfacelinalg_1_1tri__mtx__mult-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacelinalg_1_1tri__mtx__mult.html b/docs/html/interfacelinalg_1_1tri__mtx__mult.html index 7e7d9dd..b95f110 100644 --- a/docs/html/interfacelinalg_1_1tri__mtx__mult.html +++ b/docs/html/interfacelinalg_1_1tri__mtx__mult.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfaceqrupdate_1_1dch1dn-members.html b/docs/html/interfaceqrupdate_1_1dch1dn-members.html index c29e081..54ad092 100644 --- a/docs/html/interfaceqrupdate_1_1dch1dn-members.html +++ b/docs/html/interfaceqrupdate_1_1dch1dn-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfaceqrupdate_1_1dch1dn.html b/docs/html/interfaceqrupdate_1_1dch1dn.html index 1f35c05..bf24cbe 100644 --- a/docs/html/interfaceqrupdate_1_1dch1dn.html +++ b/docs/html/interfaceqrupdate_1_1dch1dn.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfaceqrupdate_1_1dch1up-members.html b/docs/html/interfaceqrupdate_1_1dch1up-members.html index 7dbd062..e073e20 100644 --- a/docs/html/interfaceqrupdate_1_1dch1up-members.html +++ b/docs/html/interfaceqrupdate_1_1dch1up-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfaceqrupdate_1_1dch1up.html b/docs/html/interfaceqrupdate_1_1dch1up.html index bb1d30a..2b2cc88 100644 --- a/docs/html/interfaceqrupdate_1_1dch1up.html +++ b/docs/html/interfaceqrupdate_1_1dch1up.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfaceqrupdate_1_1dqr1up-members.html b/docs/html/interfaceqrupdate_1_1dqr1up-members.html index 0f24bd4..65c4dcc 100644 --- a/docs/html/interfaceqrupdate_1_1dqr1up-members.html +++ b/docs/html/interfaceqrupdate_1_1dqr1up-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfaceqrupdate_1_1dqr1up.html b/docs/html/interfaceqrupdate_1_1dqr1up.html index e4dd548..7393092 100644 --- a/docs/html/interfaceqrupdate_1_1dqr1up.html +++ b/docs/html/interfaceqrupdate_1_1dqr1up.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfaceqrupdate_1_1zch1dn-members.html b/docs/html/interfaceqrupdate_1_1zch1dn-members.html index a58603b..caab89f 100644 --- a/docs/html/interfaceqrupdate_1_1zch1dn-members.html +++ b/docs/html/interfaceqrupdate_1_1zch1dn-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfaceqrupdate_1_1zch1dn.html b/docs/html/interfaceqrupdate_1_1zch1dn.html index 698535f..ecc10bb 100644 --- a/docs/html/interfaceqrupdate_1_1zch1dn.html +++ b/docs/html/interfaceqrupdate_1_1zch1dn.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfaceqrupdate_1_1zch1up-members.html b/docs/html/interfaceqrupdate_1_1zch1up-members.html index 0841840..a538cb0 100644 --- a/docs/html/interfaceqrupdate_1_1zch1up-members.html +++ b/docs/html/interfaceqrupdate_1_1zch1up-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfaceqrupdate_1_1zch1up.html b/docs/html/interfaceqrupdate_1_1zch1up.html index 2525575..20d95ba 100644 --- a/docs/html/interfaceqrupdate_1_1zch1up.html +++ b/docs/html/interfaceqrupdate_1_1zch1up.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfaceqrupdate_1_1zqr1up-members.html b/docs/html/interfaceqrupdate_1_1zqr1up-members.html index 94bd38c..ef410c9 100644 --- a/docs/html/interfaceqrupdate_1_1zqr1up-members.html +++ b/docs/html/interfaceqrupdate_1_1zqr1up-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfaceqrupdate_1_1zqr1up.html b/docs/html/interfaceqrupdate_1_1zqr1up.html index 5af1f62..a15bff6 100644 --- a/docs/html/interfaceqrupdate_1_1zqr1up.html +++ b/docs/html/interfaceqrupdate_1_1zqr1up.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacesparskit_1_1amub-members.html b/docs/html/interfacesparskit_1_1amub-members.html index 38a6e0f..624d4e5 100644 --- a/docs/html/interfacesparskit_1_1amub-members.html +++ b/docs/html/interfacesparskit_1_1amub-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacesparskit_1_1amub.html b/docs/html/interfacesparskit_1_1amub.html index 06a9dce..c031b94 100644 --- a/docs/html/interfacesparskit_1_1amub.html +++ b/docs/html/interfacesparskit_1_1amub.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacesparskit_1_1aplb-members.html b/docs/html/interfacesparskit_1_1aplb-members.html index edf50f9..76985dc 100644 --- a/docs/html/interfacesparskit_1_1aplb-members.html +++ b/docs/html/interfacesparskit_1_1aplb-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacesparskit_1_1aplb.html b/docs/html/interfacesparskit_1_1aplb.html index 53b37df..55d02af 100644 --- a/docs/html/interfacesparskit_1_1aplb.html +++ b/docs/html/interfacesparskit_1_1aplb.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacesparskit_1_1aplsb-members.html b/docs/html/interfacesparskit_1_1aplsb-members.html index c32c2b2..009b005 100644 --- a/docs/html/interfacesparskit_1_1aplsb-members.html +++ b/docs/html/interfacesparskit_1_1aplsb-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacesparskit_1_1aplsb.html b/docs/html/interfacesparskit_1_1aplsb.html index 1d118c3..3f5e61f 100644 --- a/docs/html/interfacesparskit_1_1aplsb.html +++ b/docs/html/interfacesparskit_1_1aplsb.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacesparskit_1_1bndcsr-members.html b/docs/html/interfacesparskit_1_1bndcsr-members.html index e3a7add..c7ade77 100644 --- a/docs/html/interfacesparskit_1_1bndcsr-members.html +++ b/docs/html/interfacesparskit_1_1bndcsr-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacesparskit_1_1bndcsr.html b/docs/html/interfacesparskit_1_1bndcsr.html index 624c564..6728b2d 100644 --- a/docs/html/interfacesparskit_1_1bndcsr.html +++ b/docs/html/interfacesparskit_1_1bndcsr.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacesparskit_1_1clncsr-members.html b/docs/html/interfacesparskit_1_1clncsr-members.html index 8685074..80c45fb 100644 --- a/docs/html/interfacesparskit_1_1clncsr-members.html +++ b/docs/html/interfacesparskit_1_1clncsr-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacesparskit_1_1clncsr.html b/docs/html/interfacesparskit_1_1clncsr.html index 0764d82..c2a43b1 100644 --- a/docs/html/interfacesparskit_1_1clncsr.html +++ b/docs/html/interfacesparskit_1_1clncsr.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacesparskit_1_1coocsr-members.html b/docs/html/interfacesparskit_1_1coocsr-members.html index 5e85093..a50f7d1 100644 --- a/docs/html/interfacesparskit_1_1coocsr-members.html +++ b/docs/html/interfacesparskit_1_1coocsr-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacesparskit_1_1coocsr.html b/docs/html/interfacesparskit_1_1coocsr.html index acf9b66..725e9c1 100644 --- a/docs/html/interfacesparskit_1_1coocsr.html +++ b/docs/html/interfacesparskit_1_1coocsr.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacesparskit_1_1csort-members.html b/docs/html/interfacesparskit_1_1csort-members.html index 926fa2b..3ac0c89 100644 --- a/docs/html/interfacesparskit_1_1csort-members.html +++ b/docs/html/interfacesparskit_1_1csort-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacesparskit_1_1csort.html b/docs/html/interfacesparskit_1_1csort.html index 69c2021..1e855f3 100644 --- a/docs/html/interfacesparskit_1_1csort.html +++ b/docs/html/interfacesparskit_1_1csort.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacesparskit_1_1csrcsc2-members.html b/docs/html/interfacesparskit_1_1csrcsc2-members.html index 2ffcbf5..e106d74 100644 --- a/docs/html/interfacesparskit_1_1csrcsc2-members.html +++ b/docs/html/interfacesparskit_1_1csrcsc2-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacesparskit_1_1csrcsc2.html b/docs/html/interfacesparskit_1_1csrcsc2.html index d999201..761d840 100644 --- a/docs/html/interfacesparskit_1_1csrcsc2.html +++ b/docs/html/interfacesparskit_1_1csrcsc2.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacesparskit_1_1csrmsr-members.html b/docs/html/interfacesparskit_1_1csrmsr-members.html index d9e5e6d..9099ceb 100644 --- a/docs/html/interfacesparskit_1_1csrmsr-members.html +++ b/docs/html/interfacesparskit_1_1csrmsr-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacesparskit_1_1csrmsr.html b/docs/html/interfacesparskit_1_1csrmsr.html index c6dd996..e807c82 100644 --- a/docs/html/interfacesparskit_1_1csrmsr.html +++ b/docs/html/interfacesparskit_1_1csrmsr.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacesparskit_1_1getdia-members.html b/docs/html/interfacesparskit_1_1getdia-members.html index 6de6dac..3f9473e 100644 --- a/docs/html/interfacesparskit_1_1getdia-members.html +++ b/docs/html/interfacesparskit_1_1getdia-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacesparskit_1_1getdia.html b/docs/html/interfacesparskit_1_1getdia.html index 92270ba..0fdaef1 100644 --- a/docs/html/interfacesparskit_1_1getdia.html +++ b/docs/html/interfacesparskit_1_1getdia.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacesparskit_1_1getelm-members.html b/docs/html/interfacesparskit_1_1getelm-members.html index 7156b78..1a64dc4 100644 --- a/docs/html/interfacesparskit_1_1getelm-members.html +++ b/docs/html/interfacesparskit_1_1getelm-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacesparskit_1_1getelm.html b/docs/html/interfacesparskit_1_1getelm.html index b9a3646..409d9d7 100644 --- a/docs/html/interfacesparskit_1_1getelm.html +++ b/docs/html/interfacesparskit_1_1getelm.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacesparskit_1_1ilud-members.html b/docs/html/interfacesparskit_1_1ilud-members.html index 63d70ea..76419ae 100644 --- a/docs/html/interfacesparskit_1_1ilud-members.html +++ b/docs/html/interfacesparskit_1_1ilud-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacesparskit_1_1ilud.html b/docs/html/interfacesparskit_1_1ilud.html index 603fef5..d33ab9a 100644 --- a/docs/html/interfacesparskit_1_1ilud.html +++ b/docs/html/interfacesparskit_1_1ilud.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacesparskit_1_1iludp-members.html b/docs/html/interfacesparskit_1_1iludp-members.html index 26d7537..136eeab 100644 --- a/docs/html/interfacesparskit_1_1iludp-members.html +++ b/docs/html/interfacesparskit_1_1iludp-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacesparskit_1_1iludp.html b/docs/html/interfacesparskit_1_1iludp.html index 5e1759d..5edf702 100644 --- a/docs/html/interfacesparskit_1_1iludp.html +++ b/docs/html/interfacesparskit_1_1iludp.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacesparskit_1_1ilut-members.html b/docs/html/interfacesparskit_1_1ilut-members.html index 081726e..4ee35f9 100644 --- a/docs/html/interfacesparskit_1_1ilut-members.html +++ b/docs/html/interfacesparskit_1_1ilut-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacesparskit_1_1ilut.html b/docs/html/interfacesparskit_1_1ilut.html index c4391f8..dc5fe1d 100644 --- a/docs/html/interfacesparskit_1_1ilut.html +++ b/docs/html/interfacesparskit_1_1ilut.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacesparskit_1_1ilutp-members.html b/docs/html/interfacesparskit_1_1ilutp-members.html index 597a8dc..6bda9ac 100644 --- a/docs/html/interfacesparskit_1_1ilutp-members.html +++ b/docs/html/interfacesparskit_1_1ilutp-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacesparskit_1_1ilutp.html b/docs/html/interfacesparskit_1_1ilutp.html index dbf7eea..721b00a 100644 --- a/docs/html/interfacesparskit_1_1ilutp.html +++ b/docs/html/interfacesparskit_1_1ilutp.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacesparskit_1_1lusol-members.html b/docs/html/interfacesparskit_1_1lusol-members.html index acca052..83e1fe8 100644 --- a/docs/html/interfacesparskit_1_1lusol-members.html +++ b/docs/html/interfacesparskit_1_1lusol-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacesparskit_1_1lusol.html b/docs/html/interfacesparskit_1_1lusol.html index 1f5b32b..8081f3e 100644 --- a/docs/html/interfacesparskit_1_1lusol.html +++ b/docs/html/interfacesparskit_1_1lusol.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacesparskit_1_1msrcsr-members.html b/docs/html/interfacesparskit_1_1msrcsr-members.html index c72d4d9..a79a0eb 100644 --- a/docs/html/interfacesparskit_1_1msrcsr-members.html +++ b/docs/html/interfacesparskit_1_1msrcsr-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacesparskit_1_1msrcsr.html b/docs/html/interfacesparskit_1_1msrcsr.html index d253ef2..d04d1c8 100644 --- a/docs/html/interfacesparskit_1_1msrcsr.html +++ b/docs/html/interfacesparskit_1_1msrcsr.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacesparskit_1_1pgmres-members.html b/docs/html/interfacesparskit_1_1pgmres-members.html index fb958fc..ef4bf14 100644 --- a/docs/html/interfacesparskit_1_1pgmres-members.html +++ b/docs/html/interfacesparskit_1_1pgmres-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/interfacesparskit_1_1pgmres.html b/docs/html/interfacesparskit_1_1pgmres.html index 14ea410..eb3fb09 100644 --- a/docs/html/interfacesparskit_1_1pgmres.html +++ b/docs/html/interfacesparskit_1_1pgmres.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/lapack_8f90_source.html b/docs/html/lapack_8f90_source.html index 13ce677..3590f4e 100644 --- a/docs/html/lapack_8f90_source.html +++ b/docs/html/lapack_8f90_source.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/linalg_8f90_source.html b/docs/html/linalg_8f90_source.html index 771d236..9b1ba21 100644 --- a/docs/html/linalg_8f90_source.html +++ b/docs/html/linalg_8f90_source.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
@@ -535,1504 +535,1517 @@
3458 module procedure :: sort_cmplx_array_ind
3459 module procedure :: sort_eigen_cmplx
3460 module procedure :: sort_eigen_dbl
+
3461 module procedure :: sort_int32_array
+
3462 module procedure :: sort_int32_array_ind
-
3461end interface
-
3462
-
-
3568interface lq_factor
-
3569 module procedure :: lq_factor_no_pivot
-
3570 module procedure :: lq_factor_no_pivot_cmplx
+
3463end interface
+
3464
+
+
3570interface lq_factor
+
3571 module procedure :: lq_factor_no_pivot
+
3572 module procedure :: lq_factor_no_pivot_cmplx
-
3571end interface
-
3572
-
-
3682interface form_lq
-
3683 module procedure :: form_lq_no_pivot
-
3684 module procedure :: form_lq_no_pivot_cmplx
+
3573end interface
+
3574
+
+
3684interface form_lq
+
3685 module procedure :: form_lq_no_pivot
+
3686 module procedure :: form_lq_no_pivot_cmplx
-
3685end interface
-
3686
-
-
3831interface mult_lq
-
3832 module procedure :: mult_lq_mtx
-
3833 module procedure :: mult_lq_mtx_cmplx
-
3834 module procedure :: mult_lq_vec
-
3835 module procedure :: mult_lq_vec_cmplx
+
3687end interface
+
3688
+
+
3833interface mult_lq
+
3834 module procedure :: mult_lq_mtx
+
3835 module procedure :: mult_lq_mtx_cmplx
+
3836 module procedure :: mult_lq_vec
+
3837 module procedure :: mult_lq_vec_cmplx
-
3836end interface
-
3837
-
-
3926interface solve_lq
-
3927 module procedure :: solve_lq_mtx
-
3928 module procedure :: solve_lq_mtx_cmplx
-
3929 module procedure :: solve_lq_vec
-
3930 module procedure :: solve_lq_vec_cmplx
+
3838end interface
+
3839
+
+
3928interface solve_lq
+
3929 module procedure :: solve_lq_mtx
+
3930 module procedure :: solve_lq_mtx_cmplx
+
3931 module procedure :: solve_lq_vec
+
3932 module procedure :: solve_lq_vec_cmplx
-
3931end interface
-
3932
-
3933! ------------------------------------------------------------------------------
-
- -
4029 module procedure :: band_mtx_vec_mult_dbl
-
4030 module procedure :: band_mtx_vec_mult_cmplx
+
3933end interface
+
3934
+
3935! ------------------------------------------------------------------------------
+
+ +
4031 module procedure :: band_mtx_vec_mult_dbl
+
4032 module procedure :: band_mtx_vec_mult_cmplx
-
4031end interface
-
4032
-
- -
4071 module procedure :: band_to_full_mtx_dbl
-
4072 module procedure :: band_to_full_mtx_cmplx
+
4033end interface
+
4034
+
+ +
4073 module procedure :: band_to_full_mtx_dbl
+
4074 module procedure :: band_to_full_mtx_cmplx
-
4073end interface
-
4074
-
- -
4134 module procedure :: band_diag_mtx_mult_dbl
-
4135 module procedure :: band_diag_mtx_mult_cmplx
+
4075end interface
+
4076
+
+ +
4136 module procedure :: band_diag_mtx_mult_dbl
+
4137 module procedure :: band_diag_mtx_mult_cmplx
-
4136end interface
-
4137
-
- -
4162 module procedure :: banded_to_dense_dbl
-
4163 module procedure :: banded_to_dense_cmplx
+
4138end interface
+
4139
+
+ +
4164 module procedure :: banded_to_dense_dbl
+
4165 module procedure :: banded_to_dense_cmplx
-
4164end interface
-
4165
-
- -
4187 module procedure :: dense_to_banded_dbl
-
4188 module procedure :: dense_to_banded_cmplx
+
4166end interface
+
4167
+
+ +
4189 module procedure :: dense_to_banded_dbl
+
4190 module procedure :: dense_to_banded_cmplx
-
4189end interface
-
4190
-
- -
4209 module procedure :: extract_diagonal_dbl
-
4210 module procedure :: extract_diagonal_cmplx
-
4211 module procedure :: extract_diagonal_csr
+
4191end interface
+
4192
+
+ +
4211 module procedure :: extract_diagonal_dbl
+
4212 module procedure :: extract_diagonal_cmplx
+
4213 module procedure :: extract_diagonal_csr
-
4212end interface
-
4213
-
4214! ******************************************************************************
-
4215! LINALG_BASIC.F90
-
4216! ------------------------------------------------------------------------------
-
4217interface
-
4218 module subroutine mtx_mult_mtx(transa, transb, alpha, a, b, beta, c, err)
-
4219 logical, intent(in) :: transa, transb
-
4220 real(real64), intent(in) :: alpha, beta
-
4221 real(real64), intent(in), dimension(:,:) :: a, b
-
4222 real(real64), intent(inout), dimension(:,:) :: c
-
4223 class(errors), intent(inout), optional, target :: err
-
4224 end subroutine
-
4225
-
4226 module subroutine mtx_mult_vec(trans, alpha, a, b, beta, c, err)
-
4227 logical, intent(in) :: trans
-
4228 real(real64), intent(in) :: alpha, beta
-
4229 real(real64), intent(in), dimension(:,:) :: a
-
4230 real(real64), intent(in), dimension(:) :: b
-
4231 real(real64), intent(inout), dimension(:) :: c
-
4232 class(errors), intent(inout), optional, target :: err
-
4233 end subroutine
-
4234
-
4235 module subroutine cmtx_mult_mtx(opa, opb, alpha, a, b, beta, c, err)
-
4236 integer(int32), intent(in) :: opa, opb
-
4237 complex(real64), intent(in) :: alpha, beta
-
4238 complex(real64), intent(in), dimension(:,:) :: a, b
-
4239 complex(real64), intent(inout), dimension(:,:) :: c
-
4240 class(errors), intent(inout), optional, target :: err
-
4241 end subroutine
-
4242
-
4243 module subroutine cmtx_mult_vec(opa, alpha, a, b, beta, c, err)
-
4244 integer(int32), intent(in) :: opa
-
4245 complex(real64), intent(in) :: alpha, beta
-
4246 complex(real64), intent(in), dimension(:,:) :: a
-
4247 complex(real64), intent(in), dimension(:) :: b
-
4248 complex(real64), intent(inout), dimension(:) :: c
-
4249 class(errors), intent(inout), optional, target :: err
-
4250 end subroutine
-
4251
-
4252 module subroutine rank1_update_dbl(alpha, x, y, a, err)
-
4253 real(real64), intent(in) :: alpha
-
4254 real(real64), intent(in), dimension(:) :: x, y
-
4255 real(real64), intent(inout), dimension(:,:) :: a
-
4256 class(errors), intent(inout), optional, target :: err
-
4257 end subroutine
-
4258
-
4259 module subroutine rank1_update_cmplx(alpha, x, y, a, err)
-
4260 complex(real64), intent(in) :: alpha
-
4261 complex(real64), intent(in), dimension(:) :: x, y
-
4262 complex(real64), intent(inout), dimension(:,:) :: a
-
4263 class(errors), intent(inout), optional, target :: err
-
4264 end subroutine
-
4265
-
4266 module subroutine diag_mtx_mult_mtx(lside, trans, alpha, a, b, beta, c, err)
-
4267 logical, intent(in) :: lside, trans
-
4268 real(real64) :: alpha, beta
-
4269 real(real64), intent(in), dimension(:) :: a
-
4270 real(real64), intent(in), dimension(:,:) :: b
-
4271 real(real64), intent(inout), dimension(:,:) :: c
-
4272 class(errors), intent(inout), optional, target :: err
-
4273 end subroutine
-
4274
-
4275 module subroutine diag_mtx_mult_mtx2(lside, alpha, a, b, err)
-
4276 logical, intent(in) :: lside
-
4277 real(real64), intent(in) :: alpha
-
4278 real(real64), intent(in), dimension(:) :: a
-
4279 real(real64), intent(inout), dimension(:,:) :: b
-
4280 class(errors), intent(inout), optional, target :: err
-
4281 end subroutine
-
4282
-
4283 module subroutine diag_mtx_mult_mtx3(lside, trans, alpha, a, b, beta, c, err)
-
4284 logical, intent(in) :: lside, trans
-
4285 real(real64) :: alpha, beta
-
4286 complex(real64), intent(in), dimension(:) :: a
-
4287 real(real64), intent(in), dimension(:,:) :: b
-
4288 complex(real64), intent(inout), dimension(:,:) :: c
-
4289 class(errors), intent(inout), optional, target :: err
-
4290 end subroutine
-
4291
-
4292 module subroutine diag_mtx_mult_mtx4(lside, opb, alpha, a, b, beta, c, err)
-
4293 logical, intent(in) :: lside
-
4294 integer(int32), intent(in) :: opb
-
4295 real(real64) :: alpha, beta
-
4296 complex(real64), intent(in), dimension(:) :: a
-
4297 complex(real64), intent(in), dimension(:,:) :: b
-
4298 complex(real64), intent(inout), dimension(:,:) :: c
-
4299 class(errors), intent(inout), optional, target :: err
-
4300 end subroutine
-
4301
-
4302 module subroutine diag_mtx_mult_mtx_cmplx(lside, opb, alpha, a, b, beta, c, err)
-
4303 logical, intent(in) :: lside
-
4304 integer(int32), intent(in) :: opb
-
4305 complex(real64) :: alpha, beta
-
4306 complex(real64), intent(in), dimension(:) :: a
-
4307 complex(real64), intent(in), dimension(:,:) :: b
-
4308 complex(real64), intent(inout), dimension(:,:) :: c
-
4309 class(errors), intent(inout), optional, target :: err
-
4310 end subroutine
-
4311
-
4312 module subroutine diag_mtx_mult_mtx2_cmplx(lside, alpha, a, b, err)
-
4313 logical, intent(in) :: lside
-
4314 complex(real64), intent(in) :: alpha
-
4315 complex(real64), intent(in), dimension(:) :: a
-
4316 complex(real64), intent(inout), dimension(:,:) :: b
-
4317 class(errors), intent(inout), optional, target :: err
-
4318 end subroutine
-
4319
-
4320 module subroutine diag_mtx_mult_mtx_mix(lside, opb, alpha, a, b, beta, c, err)
-
4321 logical, intent(in) :: lside
-
4322 integer(int32), intent(in) :: opb
-
4323 complex(real64) :: alpha, beta
-
4324 real(real64), intent(in), dimension(:) :: a
-
4325 complex(real64), intent(in), dimension(:,:) :: b
-
4326 complex(real64), intent(inout), dimension(:,:) :: c
-
4327 class(errors), intent(inout), optional, target :: err
-
4328 end subroutine
-
4329
-
4330 module subroutine diag_mtx_mult_mtx2_mix(lside, alpha, a, b, err)
-
4331 logical, intent(in) :: lside
-
4332 complex(real64), intent(in) :: alpha
-
4333 real(real64), intent(in), dimension(:) :: a
-
4334 complex(real64), intent(inout), dimension(:,:) :: b
-
4335 class(errors), intent(inout), optional, target :: err
-
4336 end subroutine
-
4337
-
4338 module subroutine diag_mtx_sparse_mult(lside, alpha, a, b, err)
-
4339 logical, intent(in) :: lside
-
4340 real(real64), intent(in) :: alpha
-
4341 real(real64), intent(in), dimension(:) :: a
-
4342 type(csr_matrix), intent(inout) :: b
-
4343 class(errors), intent(inout), optional, target :: err
-
4344 end subroutine
-
4345
-
4346 pure module function trace_dbl(x) result(y)
-
4347 real(real64), intent(in), dimension(:,:) :: x
-
4348 real(real64) :: y
-
4349 end function
-
4350
-
4351 pure module function trace_cmplx(x) result(y)
-
4352 complex(real64), intent(in), dimension(:,:) :: x
-
4353 complex(real64) :: y
-
4354 end function
-
4355
-
4356 module function mtx_rank_dbl(a, tol, work, olwork, err) result(rnk)
-
4357 real(real64), intent(inout), dimension(:,:) :: a
-
4358 real(real64), intent(in), optional :: tol
-
4359 real(real64), intent(out), target, optional, dimension(:) :: work
-
4360 integer(int32), intent(out), optional :: olwork
-
4361 class(errors), intent(inout), optional, target :: err
-
4362 integer(int32) :: rnk
-
4363 end function
-
4364
-
4365 module function mtx_rank_cmplx(a, tol, work, olwork, rwork, err) result(rnk)
-
4366 complex(real64), intent(inout), dimension(:,:) :: a
-
4367 real(real64), intent(in), optional :: tol
-
4368 complex(real64), intent(out), target, optional, dimension(:) :: work
-
4369 integer(int32), intent(out), optional :: olwork
-
4370 real(real64), intent(out), target, optional, dimension(:) :: rwork
-
4371 class(errors), intent(inout), optional, target :: err
-
4372 integer(int32) :: rnk
-
4373 end function
-
4374
-
4375 module function det_dbl(a, iwork, err) result(x)
-
4376 real(real64), intent(inout), dimension(:,:) :: a
-
4377 integer(int32), intent(out), target, optional, dimension(:) :: iwork
-
4378 class(errors), intent(inout), optional, target :: err
-
4379 real(real64) :: x
-
4380 end function
-
4381
-
4382 module function det_cmplx(a, iwork, err) result(x)
-
4383 complex(real64), intent(inout), dimension(:,:) :: a
-
4384 integer(int32), intent(out), target, optional, dimension(:) :: iwork
-
4385 class(errors), intent(inout), optional, target :: err
-
4386 complex(real64) :: x
-
4387 end function
-
4388
-
4389 module subroutine swap_dbl(x, y, err)
-
4390 real(real64), intent(inout), dimension(:) :: x, y
-
4391 class(errors), intent(inout), optional, target :: err
-
4392 end subroutine
-
4393
-
4394 module subroutine swap_cmplx(x, y, err)
-
4395 complex(real64), intent(inout), dimension(:) :: x, y
-
4396 class(errors), intent(inout), optional, target :: err
-
4397 end subroutine
-
4398
-
4399 module subroutine recip_mult_array_dbl(a, x)
-
4400 real(real64), intent(in) :: a
-
4401 real(real64), intent(inout), dimension(:) :: x
-
4402 end subroutine
-
4403
-
4404 module subroutine tri_mtx_mult_dbl(upper, alpha, a, beta, b, err)
-
4405 logical, intent(in) :: upper
-
4406 real(real64), intent(in) :: alpha, beta
-
4407 real(real64), intent(in), dimension(:,:) :: a
-
4408 real(real64), intent(inout), dimension(:,:) :: b
-
4409 class(errors), intent(inout), optional, target :: err
-
4410 end subroutine
-
4411
-
4412 module subroutine tri_mtx_mult_cmplx(upper, alpha, a, beta, b, err)
-
4413 logical, intent(in) :: upper
-
4414 complex(real64), intent(in) :: alpha, beta
-
4415 complex(real64), intent(in), dimension(:,:) :: a
-
4416 complex(real64), intent(inout), dimension(:,:) :: b
-
4417 class(errors), intent(inout), optional, target :: err
-
4418 end subroutine
-
4419
-
4420 module subroutine band_mtx_vec_mult_dbl(trans, kl, ku, alpha, a, x, beta, &
-
4421 y, err)
-
4422 logical, intent(in) :: trans
-
4423 integer(int32), intent(in) :: kl, ku
-
4424 real(real64), intent(in) :: alpha, beta
-
4425 real(real64), intent(in), dimension(:,:) :: a
-
4426 real(real64), intent(in), dimension(:) :: x
-
4427 real(real64), intent(inout), dimension(:) :: y
-
4428 class(errors), intent(inout), optional, target :: err
-
4429 end subroutine
-
4430
-
4431 module subroutine band_mtx_vec_mult_cmplx(trans, kl, ku, alpha, a, x, &
-
4432 beta, y, err)
-
4433 integer(int32), intent(in) :: trans
-
4434 integer(int32), intent(in) :: kl, ku
-
4435 complex(real64), intent(in) :: alpha, beta
-
4436 complex(real64), intent(in), dimension(:,:) :: a
-
4437 complex(real64), intent(in), dimension(:) :: x
-
4438 complex(real64), intent(inout), dimension(:) :: y
-
4439 class(errors), intent(inout), optional, target :: err
-
4440 end subroutine
-
4441
-
4442 module subroutine band_to_full_mtx_dbl(kl, ku, b, f, err)
-
4443 integer(int32), intent(in) :: kl, ku
-
4444 real(real64), intent(in), dimension(:,:) :: b
-
4445 real(real64), intent(out), dimension(:,:) :: f
-
4446 class(errors), intent(inout), optional, target :: err
-
4447 end subroutine
-
4448
-
4449 module subroutine band_to_full_mtx_cmplx(kl, ku, b, f, err)
-
4450 integer(int32), intent(in) :: kl, ku
-
4451 complex(real64), intent(in), dimension(:,:) :: b
-
4452 complex(real64), intent(out), dimension(:,:) :: f
-
4453 class(errors), intent(inout), optional, target :: err
-
4454 end subroutine
-
4455
-
4456 module subroutine band_diag_mtx_mult_dbl(left, m, kl, ku, alpha, a, b, err)
-
4457 logical, intent(in) :: left
-
4458 integer(int32), intent(in) :: m, kl, ku
-
4459 real(real64), intent(in) :: alpha
-
4460 real(real64), intent(inout), dimension(:,:) :: a
-
4461 real(real64), intent(in), dimension(:) :: b
-
4462 class(errors), intent(inout), optional, target :: err
-
4463 end subroutine
-
4464
-
4465 module subroutine band_diag_mtx_mult_cmplx(left, m, kl, ku, alpha, a, b, err)
-
4466 logical, intent(in) :: left
-
4467 integer(int32), intent(in) :: m, kl, ku
-
4468 complex(real64), intent(in) :: alpha
-
4469 complex(real64), intent(inout), dimension(:,:) :: a
-
4470 complex(real64), intent(in), dimension(:) :: b
-
4471 class(errors), intent(inout), optional, target :: err
-
4472 end subroutine
-
4473
-
4474 module subroutine banded_to_dense_dbl(m, kl, ku, a, x, err)
-
4475 integer(int32), intent(in) :: m, kl, ku
-
4476 real(real64), intent(in), dimension(:,:) :: a
-
4477 real(real64), intent(out), dimension(:,:) :: x
-
4478 class(errors), intent(inout), optional, target :: err
-
4479 end subroutine
-
4480
-
4481 module subroutine banded_to_dense_cmplx(m, kl, ku, a, x, err)
-
4482 integer(int32), intent(in) :: m, kl, ku
-
4483 complex(real64), intent(in), dimension(:,:) :: a
-
4484 complex(real64), intent(out), dimension(:,:) :: x
-
4485 class(errors), intent(inout), optional, target :: err
-
4486 end subroutine
-
4487
-
4488 module subroutine dense_to_banded_dbl(a, kl, ku, x, err)
-
4489 real(real64), intent(in), dimension(:,:) :: a
-
4490 integer(int32), intent(in) :: kl, ku
-
4491 real(real64), intent(out), dimension(:,:) :: x
-
4492 class(errors), intent(inout), optional, target :: err
-
4493 end subroutine
-
4494
-
4495 module subroutine dense_to_banded_cmplx(a, kl, ku, x, err)
-
4496 complex(real64), intent(in), dimension(:,:) :: a
-
4497 integer(int32), intent(in) :: kl, ku
-
4498 complex(real64), intent(out), dimension(:,:) :: x
-
4499 class(errors), intent(inout), optional, target :: err
-
4500 end subroutine
-
4501
-
4502 module subroutine extract_diagonal_dbl(a, diag, err)
-
4503 ! Arguments
-
4504 real(real64), intent(in), dimension(:,:) :: a
-
4505 real(real64), intent(out), dimension(:) :: diag
-
4506 class(errors), intent(inout), optional, target :: err
-
4507 end subroutine
-
4508
-
4509 module subroutine extract_diagonal_cmplx(a, diag, err)
-
4510 ! Arguments
-
4511 complex(real64), intent(in), dimension(:,:) :: a
-
4512 complex(real64), intent(out), dimension(:) :: diag
-
4513 class(errors), intent(inout), optional, target :: err
-
4514 end subroutine
-
4515end interface
-
4516
-
4517! ******************************************************************************
-
4518! LINALG_FACTOR.F90
-
4519! ------------------------------------------------------------------------------
-
4520interface
-
4521 module subroutine lu_factor_dbl(a, ipvt, err)
-
4522 real(real64), intent(inout), dimension(:,:) :: a
-
4523 integer(int32), intent(out), dimension(:) :: ipvt
-
4524 class(errors), intent(inout), optional, target :: err
-
4525 end subroutine
-
4526
-
4527 module subroutine lu_factor_cmplx(a, ipvt, err)
-
4528 complex(real64), intent(inout), dimension(:,:) :: a
-
4529 integer(int32), intent(out), dimension(:) :: ipvt
-
4530 class(errors), intent(inout), optional, target :: err
-
4531 end subroutine
-
4532
-
4533 module subroutine form_lu_all(lu, ipvt, u, p, err)
-
4534 real(real64), intent(inout), dimension(:,:) :: lu
-
4535 integer(int32), intent(in), dimension(:) :: ipvt
-
4536 real(real64), intent(out), dimension(:,:) :: u, p
-
4537 class(errors), intent(inout), optional, target :: err
-
4538 end subroutine
-
4539
-
4540 module subroutine form_lu_all_cmplx(lu, ipvt, u, p, err)
-
4541 complex(real64), intent(inout), dimension(:,:) :: lu
-
4542 integer(int32), intent(in), dimension(:) :: ipvt
-
4543 complex(real64), intent(out), dimension(:,:) :: u
-
4544 real(real64), intent(out), dimension(:,:) :: p
-
4545 class(errors), intent(inout), optional, target :: err
-
4546 end subroutine
-
4547
-
4548 module subroutine form_lu_only(lu, u, err)
-
4549 real(real64), intent(inout), dimension(:,:) :: lu
-
4550 real(real64), intent(out), dimension(:,:) :: u
-
4551 class(errors), intent(inout), optional, target :: err
-
4552 end subroutine
-
4553
-
4554 module subroutine form_lu_only_cmplx(lu, u, err)
-
4555 complex(real64), intent(inout), dimension(:,:) :: lu
-
4556 complex(real64), intent(out), dimension(:,:) :: u
-
4557 class(errors), intent(inout), optional, target :: err
-
4558 end subroutine
-
4559
-
4560 module subroutine qr_factor_no_pivot(a, tau, work, olwork, err)
-
4561 real(real64), intent(inout), dimension(:,:) :: a
-
4562 real(real64), intent(out), dimension(:) :: tau
-
4563 real(real64), intent(out), target, dimension(:), optional :: work
-
4564 integer(int32), intent(out), optional :: olwork
-
4565 class(errors), intent(inout), optional, target :: err
-
4566 end subroutine
-
4567
-
4568 module subroutine qr_factor_no_pivot_cmplx(a, tau, work, olwork, err)
-
4569 complex(real64), intent(inout), dimension(:,:) :: a
-
4570 complex(real64), intent(out), dimension(:) :: tau
-
4571 complex(real64), intent(out), target, dimension(:), optional :: work
-
4572 integer(int32), intent(out), optional :: olwork
-
4573 class(errors), intent(inout), optional, target :: err
-
4574 end subroutine
-
4575
-
4576 module subroutine qr_factor_pivot(a, tau, jpvt, work, olwork, err)
-
4577 real(real64), intent(inout), dimension(:,:) :: a
-
4578 real(real64), intent(out), dimension(:) :: tau
-
4579 integer(int32), intent(inout), dimension(:) :: jpvt
-
4580 real(real64), intent(out), target, dimension(:), optional :: work
-
4581 integer(int32), intent(out), optional :: olwork
-
4582 class(errors), intent(inout), optional, target :: err
-
4583 end subroutine
-
4584
-
4585 module subroutine qr_factor_pivot_cmplx(a, tau, jpvt, work, olwork, rwork, &
-
4586 err)
-
4587 complex(real64), intent(inout), dimension(:,:) :: a
-
4588 complex(real64), intent(out), dimension(:) :: tau
-
4589 integer(int32), intent(inout), dimension(:) :: jpvt
-
4590 complex(real64), intent(out), target, dimension(:), optional :: work
-
4591 integer(int32), intent(out), optional :: olwork
-
4592 real(real64), intent(out), target, dimension(:), optional :: rwork
-
4593 class(errors), intent(inout), optional, target :: err
-
4594 end subroutine
-
4595
-
4596 module subroutine form_qr_no_pivot(r, tau, q, work, olwork, err)
-
4597 real(real64), intent(inout), dimension(:,:) :: r
-
4598 real(real64), intent(in), dimension(:) :: tau
-
4599 real(real64), intent(out), dimension(:,:) :: q
-
4600 real(real64), intent(out), target, dimension(:), optional :: work
-
4601 integer(int32), intent(out), optional :: olwork
-
4602 class(errors), intent(inout), optional, target :: err
-
4603 end subroutine
-
4604
-
4605 module subroutine form_qr_no_pivot_cmplx(r, tau, q, work, olwork, err)
-
4606 complex(real64), intent(inout), dimension(:,:) :: r
-
4607 complex(real64), intent(in), dimension(:) :: tau
-
4608 complex(real64), intent(out), dimension(:,:) :: q
-
4609 complex(real64), intent(out), target, dimension(:), optional :: work
-
4610 integer(int32), intent(out), optional :: olwork
-
4611 class(errors), intent(inout), optional, target :: err
-
4612 end subroutine
-
4613
-
4614 module subroutine form_qr_pivot(r, tau, pvt, q, p, work, olwork, err)
-
4615 real(real64), intent(inout), dimension(:,:) :: r
-
4616 real(real64), intent(in), dimension(:) :: tau
-
4617 integer(int32), intent(in), dimension(:) :: pvt
-
4618 real(real64), intent(out), dimension(:,:) :: q, p
-
4619 real(real64), intent(out), target, dimension(:), optional :: work
-
4620 integer(int32), intent(out), optional :: olwork
-
4621 class(errors), intent(inout), optional, target :: err
-
4622 end subroutine
-
4623
-
4624 module subroutine form_qr_pivot_cmplx(r, tau, pvt, q, p, work, olwork, err)
-
4625 complex(real64), intent(inout), dimension(:,:) :: r
-
4626 complex(real64), intent(in), dimension(:) :: tau
-
4627 integer(int32), intent(in), dimension(:) :: pvt
-
4628 complex(real64), intent(out), dimension(:,:) :: q, p
-
4629 complex(real64), intent(out), target, dimension(:), optional :: work
-
4630 integer(int32), intent(out), optional :: olwork
-
4631 class(errors), intent(inout), optional, target :: err
-
4632 end subroutine
-
4633
-
4634 module subroutine mult_qr_mtx(lside, trans, a, tau, c, work, olwork, err)
-
4635 logical, intent(in) :: lside, trans
-
4636 real(real64), intent(in), dimension(:) :: tau
-
4637 real(real64), intent(inout), dimension(:,:) :: a, c
-
4638 real(real64), intent(out), target, dimension(:), optional :: work
-
4639 integer(int32), intent(out), optional :: olwork
-
4640 class(errors), intent(inout), optional, target :: err
-
4641 end subroutine
-
4642
-
4643 module subroutine mult_qr_mtx_cmplx(lside, trans, a, tau, c, work, olwork, err)
-
4644 logical, intent(in) :: lside, trans
-
4645 complex(real64), intent(in), dimension(:) :: tau
-
4646 complex(real64), intent(inout), dimension(:,:) :: a, c
-
4647 complex(real64), intent(out), target, dimension(:), optional :: work
-
4648 integer(int32), intent(out), optional :: olwork
-
4649 class(errors), intent(inout), optional, target :: err
-
4650 end subroutine
-
4651
-
4652 module subroutine mult_qr_vec(trans, a, tau, c, work, olwork, err)
-
4653 logical, intent(in) :: trans
-
4654 real(real64), intent(inout), dimension(:,:) :: a
-
4655 real(real64), intent(in), dimension(:) :: tau
-
4656 real(real64), intent(inout), dimension(:) :: c
-
4657 real(real64), intent(out), target, dimension(:), optional :: work
-
4658 integer(int32), intent(out), optional :: olwork
-
4659 class(errors), intent(inout), optional, target :: err
-
4660 end subroutine
-
4661
-
4662 module subroutine mult_qr_vec_cmplx(trans, a, tau, c, work, olwork, err)
-
4663 logical, intent(in) :: trans
-
4664 complex(real64), intent(inout), dimension(:,:) :: a
-
4665 complex(real64), intent(in), dimension(:) :: tau
-
4666 complex(real64), intent(inout), dimension(:) :: c
-
4667 complex(real64), intent(out), target, dimension(:), optional :: work
-
4668 integer(int32), intent(out), optional :: olwork
-
4669 class(errors), intent(inout), optional, target :: err
-
4670 end subroutine
-
4671
-
4672 module subroutine qr_rank1_update_dbl(q, r, u, v, work, err)
-
4673 real(real64), intent(inout), dimension(:,:) :: q, r
-
4674 real(real64), intent(inout), dimension(:) :: u, v
-
4675 real(real64), intent(out), target, optional, dimension(:) :: work
-
4676 class(errors), intent(inout), optional, target :: err
-
4677 end subroutine
-
4678
-
4679 module subroutine qr_rank1_update_cmplx(q, r, u, v, work, rwork, err)
-
4680 complex(real64), intent(inout), dimension(:,:) :: q, r
-
4681 complex(real64), intent(inout), dimension(:) :: u, v
-
4682 complex(real64), intent(out), target, optional, dimension(:) :: work
-
4683 real(real64), intent(out), target, optional, dimension(:) :: rwork
-
4684 class(errors), intent(inout), optional, target :: err
-
4685 end subroutine
-
4686
-
4687 module subroutine cholesky_factor_dbl(a, upper, err)
-
4688 real(real64), intent(inout), dimension(:,:) :: a
-
4689 logical, intent(in), optional :: upper
-
4690 class(errors), intent(inout), optional, target :: err
-
4691 end subroutine
-
4692
-
4693 module subroutine cholesky_factor_cmplx(a, upper, err)
-
4694 complex(real64), intent(inout), dimension(:,:) :: a
-
4695 logical, intent(in), optional :: upper
-
4696 class(errors), intent(inout), optional, target :: err
-
4697 end subroutine
-
4698
-
4699 module subroutine cholesky_rank1_update_dbl(r, u, work, err)
-
4700 real(real64), intent(inout), dimension(:,:) :: r
-
4701 real(real64), intent(inout), dimension(:) :: u
-
4702 real(real64), intent(out), target, optional, dimension(:) :: work
-
4703 class(errors), intent(inout), optional, target :: err
-
4704 end subroutine
-
4705
-
4706 module subroutine cholesky_rank1_update_cmplx(r, u, work, err)
-
4707 complex(real64), intent(inout), dimension(:,:) :: r
-
4708 complex(real64), intent(inout), dimension(:) :: u
-
4709 real(real64), intent(out), target, optional, dimension(:) :: work
-
4710 class(errors), intent(inout), optional, target :: err
-
4711 end subroutine
-
4712
-
4713 module subroutine cholesky_rank1_downdate_dbl(r, u, work, err)
-
4714 real(real64), intent(inout), dimension(:,:) :: r
-
4715 real(real64), intent(inout), dimension(:) :: u
-
4716 real(real64), intent(out), target, optional, dimension(:) :: work
-
4717 class(errors), intent(inout), optional, target :: err
-
4718 end subroutine
-
4719
-
4720 module subroutine cholesky_rank1_downdate_cmplx(r, u, work, err)
-
4721 complex(real64), intent(inout), dimension(:,:) :: r
-
4722 complex(real64), intent(inout), dimension(:) :: u
-
4723 real(real64), intent(out), target, optional, dimension(:) :: work
-
4724 class(errors), intent(inout), optional, target :: err
-
4725 end subroutine
-
4726
-
4727 module subroutine rz_factor_dbl(a, tau, work, olwork, err)
-
4728 real(real64), intent(inout), dimension(:,:) :: a
-
4729 real(real64), intent(out), dimension(:) :: tau
-
4730 real(real64), intent(out), target, optional, dimension(:) :: work
-
4731 integer(int32), intent(out), optional :: olwork
-
4732 class(errors), intent(inout), optional, target :: err
-
4733 end subroutine
-
4734
-
4735 module subroutine rz_factor_cmplx(a, tau, work, olwork, err)
-
4736 complex(real64), intent(inout), dimension(:,:) :: a
-
4737 complex(real64), intent(out), dimension(:) :: tau
-
4738 complex(real64), intent(out), target, optional, dimension(:) :: work
-
4739 integer(int32), intent(out), optional :: olwork
-
4740 class(errors), intent(inout), optional, target :: err
-
4741 end subroutine
-
4742
-
4743 module subroutine mult_rz_mtx(lside, trans, l, a, tau, c, work, olwork, err)
-
4744 logical, intent(in) :: lside, trans
-
4745 integer(int32), intent(in) :: l
-
4746 real(real64), intent(inout), dimension(:,:) :: a, c
-
4747 real(real64), intent(in), dimension(:) :: tau
-
4748 real(real64), intent(out), target, optional, dimension(:) :: work
-
4749 integer(int32), intent(out), optional :: olwork
-
4750 class(errors), intent(inout), optional, target :: err
-
4751 end subroutine
-
4752
-
4753 module subroutine mult_rz_mtx_cmplx(lside, trans, l, a, tau, c, work, olwork, err)
-
4754 logical, intent(in) :: lside, trans
-
4755 integer(int32), intent(in) :: l
-
4756 complex(real64), intent(inout), dimension(:,:) :: a, c
-
4757 complex(real64), intent(in), dimension(:) :: tau
-
4758 complex(real64), intent(out), target, optional, dimension(:) :: work
-
4759 integer(int32), intent(out), optional :: olwork
-
4760 class(errors), intent(inout), optional, target :: err
-
4761 end subroutine
-
4762
-
4763 module subroutine mult_rz_vec(trans, l, a, tau, c, work, olwork, err)
-
4764 logical, intent(in) :: trans
-
4765 integer(int32), intent(in) :: l
-
4766 real(real64), intent(inout), dimension(:,:) :: a
-
4767 real(real64), intent(in), dimension(:) :: tau
-
4768 real(real64), intent(inout), dimension(:) :: c
-
4769 real(real64), intent(out), target, optional, dimension(:) :: work
-
4770 integer(int32), intent(out), optional :: olwork
-
4771 class(errors), intent(inout), optional, target :: err
-
4772 end subroutine
-
4773
-
4774 module subroutine mult_rz_vec_cmplx(trans, l, a, tau, c, work, olwork, err)
-
4775 logical, intent(in) :: trans
-
4776 integer(int32), intent(in) :: l
-
4777 complex(real64), intent(inout), dimension(:,:) :: a
-
4778 complex(real64), intent(in), dimension(:) :: tau
-
4779 complex(real64), intent(inout), dimension(:) :: c
-
4780 complex(real64), intent(out), target, optional, dimension(:) :: work
-
4781 integer(int32), intent(out), optional :: olwork
-
4782 class(errors), intent(inout), optional, target :: err
-
4783 end subroutine
-
4784
-
4785 module subroutine svd_dbl(a, s, u, vt, work, olwork, err)
-
4786 real(real64), intent(inout), dimension(:,:) :: a
-
4787 real(real64), intent(out), dimension(:) :: s
-
4788 real(real64), intent(out), optional, dimension(:,:) :: u, vt
-
4789 real(real64), intent(out), target, optional, dimension(:) :: work
-
4790 integer(int32), intent(out), optional :: olwork
-
4791 class(errors), intent(inout), optional, target :: err
-
4792 end subroutine
-
4793
-
4794 module subroutine svd_cmplx(a, s, u, vt, work, olwork, rwork, err)
-
4795 complex(real64), intent(inout), dimension(:,:) :: a
-
4796 real(real64), intent(out), dimension(:) :: s
-
4797 complex(real64), intent(out), optional, dimension(:,:) :: u, vt
-
4798 complex(real64), intent(out), target, optional, dimension(:) :: work
-
4799 integer(int32), intent(out), optional :: olwork
-
4800 real(real64), intent(out), target, optional, dimension(:) :: rwork
-
4801 class(errors), intent(inout), optional, target :: err
-
4802 end subroutine
-
4803
-
4804 module subroutine lq_factor_no_pivot(a, tau, work, olwork, err)
-
4805 real(real64), intent(inout), dimension(:,:) :: a
-
4806 real(real64), intent(out), dimension(:) :: tau
-
4807 real(real64), intent(out), target, dimension(:), optional :: work
-
4808 integer(int32), intent(out), optional :: olwork
-
4809 class(errors), intent(inout), optional, target :: err
-
4810 end subroutine
-
4811
-
4812 module subroutine lq_factor_no_pivot_cmplx(a, tau, work, olwork, err)
-
4813 complex(real64), intent(inout), dimension(:,:) :: a
-
4814 complex(real64), intent(out), dimension(:) :: tau
-
4815 complex(real64), intent(out), target, dimension(:), optional :: work
-
4816 integer(int32), intent(out), optional :: olwork
-
4817 class(errors), intent(inout), optional, target :: err
-
4818 end subroutine
-
4819
-
4820 module subroutine form_lq_no_pivot(l, tau, q, work, olwork, err)
-
4821 real(real64), intent(inout), dimension(:,:) :: l
-
4822 real(real64), intent(in), dimension(:) :: tau
-
4823 real(real64), intent(out), dimension(:,:) :: q
-
4824 real(real64), intent(out), target, dimension(:), optional :: work
-
4825 integer(int32), intent(out), optional :: olwork
-
4826 class(errors), intent(inout), optional, target :: err
-
4827 end subroutine
-
4828
-
4829 module subroutine form_lq_no_pivot_cmplx(l, tau, q, work, olwork, err)
-
4830 complex(real64), intent(inout), dimension(:,:) :: l
-
4831 complex(real64), intent(in), dimension(:) :: tau
-
4832 complex(real64), intent(out), dimension(:,:) :: q
-
4833 complex(real64), intent(out), target, dimension(:), optional :: work
-
4834 integer(int32), intent(out), optional :: olwork
-
4835 class(errors), intent(inout), optional, target :: err
-
4836 end subroutine
-
4837
-
4838 module subroutine mult_lq_mtx(lside, trans, a, tau, c, work, olwork, err)
-
4839 logical, intent(in) :: lside, trans
-
4840 real(real64), intent(in), dimension(:,:) :: a
-
4841 real(real64), intent(in), dimension(:) :: tau
-
4842 real(real64), intent(inout), dimension(:,:) :: c
-
4843 real(real64), intent(out), target, dimension(:), optional :: work
-
4844 integer(int32), intent(out), optional :: olwork
-
4845 class(errors), intent(inout), optional, target :: err
-
4846 end subroutine
-
4847
-
4848 module subroutine mult_lq_mtx_cmplx(lside, trans, a, tau, c, work, olwork, err)
-
4849 logical, intent(in) :: lside, trans
-
4850 complex(real64), intent(in), dimension(:,:) :: a
-
4851 complex(real64), intent(in), dimension(:) :: tau
-
4852 complex(real64), intent(inout), dimension(:,:) :: c
-
4853 complex(real64), intent(out), target, dimension(:), optional :: work
-
4854 integer(int32), intent(out), optional :: olwork
-
4855 class(errors), intent(inout), optional, target :: err
-
4856 end subroutine
-
4857
-
4858 module subroutine mult_lq_vec(trans, a, tau, c, work, olwork, err)
-
4859 logical, intent(in) :: trans
-
4860 real(real64), intent(in), dimension(:,:) :: a
-
4861 real(real64), intent(in), dimension(:) :: tau
-
4862 real(real64), intent(inout), dimension(:) :: c
-
4863 real(real64), intent(out), target, dimension(:), optional :: work
-
4864 integer(int32), intent(out), optional :: olwork
-
4865 class(errors), intent(inout), optional, target :: err
-
4866 end subroutine
-
4867
-
4868 module subroutine mult_lq_vec_cmplx(trans, a, tau, c, work, olwork, err)
-
4869 logical, intent(in) :: trans
-
4870 complex(real64), intent(in), dimension(:,:) :: a
-
4871 complex(real64), intent(in), dimension(:) :: tau
-
4872 complex(real64), intent(inout), dimension(:) :: c
-
4873 complex(real64), intent(out), target, dimension(:), optional :: work
-
4874 integer(int32), intent(out), optional :: olwork
-
4875 class(errors), intent(inout), optional, target :: err
-
4876 end subroutine
-
4877end interface
-
4878
-
4879! ******************************************************************************
-
4880! LINALG_SOLVE.F90
-
4881! ------------------------------------------------------------------------------
-
4882interface
-
4883 module subroutine solve_tri_mtx(lside, upper, trans, nounit, alpha, a, b, err)
-
4884 logical, intent(in) :: lside, upper, trans, nounit
-
4885 real(real64), intent(in) :: alpha
-
4886 real(real64), intent(in), dimension(:,:) :: a
-
4887 real(real64), intent(inout), dimension(:,:) :: b
-
4888 class(errors), intent(inout), optional, target :: err
-
4889 end subroutine
-
4890
-
4891 module subroutine solve_tri_mtx_cmplx(lside, upper, trans, nounit, alpha, a, b, err)
-
4892 logical, intent(in) :: lside, upper, trans, nounit
-
4893 complex(real64), intent(in) :: alpha
-
4894 complex(real64), intent(in), dimension(:,:) :: a
-
4895 complex(real64), intent(inout), dimension(:,:) :: b
-
4896 class(errors), intent(inout), optional, target :: err
-
4897 end subroutine
-
4898
-
4899 module subroutine solve_tri_vec(upper, trans, nounit, a, x, err)
-
4900 logical, intent(in) :: upper, trans, nounit
-
4901 real(real64), intent(in), dimension(:,:) :: a
-
4902 real(real64), intent(inout), dimension(:) :: x
-
4903 class(errors), intent(inout), optional, target :: err
-
4904 end subroutine
-
4905
-
4906 module subroutine solve_tri_vec_cmplx(upper, trans, nounit, a, x, err)
-
4907 logical, intent(in) :: upper, trans, nounit
-
4908 complex(real64), intent(in), dimension(:,:) :: a
-
4909 complex(real64), intent(inout), dimension(:) :: x
-
4910 class(errors), intent(inout), optional, target :: err
-
4911 end subroutine
-
4912
-
4913 module subroutine solve_lu_mtx(a, ipvt, b, err)
-
4914 real(real64), intent(in), dimension(:,:) :: a
-
4915 integer(int32), intent(in), dimension(:) :: ipvt
-
4916 real(real64), intent(inout), dimension(:,:) :: b
-
4917 class(errors), intent(inout), optional, target :: err
-
4918 end subroutine
-
4919
-
4920 module subroutine solve_lu_mtx_cmplx(a, ipvt, b, err)
-
4921 complex(real64), intent(in), dimension(:,:) :: a
-
4922 integer(int32), intent(in), dimension(:) :: ipvt
-
4923 complex(real64), intent(inout), dimension(:,:) :: b
-
4924 class(errors), intent(inout), optional, target :: err
-
4925 end subroutine
-
4926
-
4927 module subroutine solve_lu_vec(a, ipvt, b, err)
-
4928 real(real64), intent(in), dimension(:,:) :: a
-
4929 integer(int32), intent(in), dimension(:) :: ipvt
-
4930 real(real64), intent(inout), dimension(:) :: b
-
4931 class(errors), intent(inout), optional, target :: err
-
4932 end subroutine
-
4933
-
4934 module subroutine solve_lu_vec_cmplx(a, ipvt, b, err)
-
4935 complex(real64), intent(in), dimension(:,:) :: a
-
4936 integer(int32), intent(in), dimension(:) :: ipvt
-
4937 complex(real64), intent(inout), dimension(:) :: b
-
4938 class(errors), intent(inout), optional, target :: err
-
4939 end subroutine
-
4940
-
4941 module subroutine solve_qr_no_pivot_mtx(a, tau, b, work, olwork, err)
-
4942 real(real64), intent(inout), dimension(:,:) :: a, b
-
4943 real(real64), intent(in), dimension(:) :: tau
-
4944 real(real64), intent(out), target, optional, dimension(:) :: work
-
4945 integer(int32), intent(out), optional :: olwork
-
4946 class(errors), intent(inout), optional, target :: err
-
4947 end subroutine
-
4948
-
4949 module subroutine solve_qr_no_pivot_mtx_cmplx(a, tau, b, work, olwork, err)
-
4950 complex(real64), intent(inout), dimension(:,:) :: a, b
-
4951 complex(real64), intent(in), dimension(:) :: tau
-
4952 complex(real64), intent(out), target, optional, dimension(:) :: work
-
4953 integer(int32), intent(out), optional :: olwork
-
4954 class(errors), intent(inout), optional, target :: err
-
4955 end subroutine
-
4956
-
4957 module subroutine solve_qr_no_pivot_vec(a, tau, b, work, olwork, err)
-
4958 real(real64), intent(inout), dimension(:,:) :: a
-
4959 real(real64), intent(in), dimension(:) :: tau
-
4960 real(real64), intent(inout), dimension(:) :: b
-
4961 real(real64), intent(out), target, optional, dimension(:) :: work
-
4962 integer(int32), intent(out), optional :: olwork
-
4963 class(errors), intent(inout), optional, target :: err
-
4964 end subroutine
-
4965
-
4966 module subroutine solve_qr_no_pivot_vec_cmplx(a, tau, b, work, olwork, err)
-
4967 complex(real64), intent(inout), dimension(:,:) :: a
-
4968 complex(real64), intent(in), dimension(:) :: tau
-
4969 complex(real64), intent(inout), dimension(:) :: b
-
4970 complex(real64), intent(out), target, optional, dimension(:) :: work
-
4971 integer(int32), intent(out), optional :: olwork
-
4972 class(errors), intent(inout), optional, target :: err
-
4973 end subroutine
-
4974
-
4975 module subroutine solve_qr_pivot_mtx(a, tau, jpvt, b, work, olwork, err)
-
4976 real(real64), intent(inout), dimension(:,:) :: a
-
4977 real(real64), intent(in), dimension(:) :: tau
-
4978 integer(int32), intent(in), dimension(:) :: jpvt
-
4979 real(real64), intent(inout), dimension(:,:) :: b
-
4980 real(real64), intent(out), target, optional, dimension(:) :: work
-
4981 integer(int32), intent(out), optional :: olwork
-
4982 class(errors), intent(inout), optional, target :: err
-
4983 end subroutine
-
4984
-
4985 module subroutine solve_qr_pivot_mtx_cmplx(a, tau, jpvt, b, work, olwork, err)
-
4986 complex(real64), intent(inout), dimension(:,:) :: a
-
4987 complex(real64), intent(in), dimension(:) :: tau
-
4988 integer(int32), intent(in), dimension(:) :: jpvt
-
4989 complex(real64), intent(inout), dimension(:,:) :: b
-
4990 complex(real64), intent(out), target, optional, dimension(:) :: work
-
4991 integer(int32), intent(out), optional :: olwork
-
4992 class(errors), intent(inout), optional, target :: err
-
4993 end subroutine
-
4994
-
4995 module subroutine solve_qr_pivot_vec(a, tau, jpvt, b, work, olwork, err)
-
4996 real(real64), intent(inout), dimension(:,:) :: a
-
4997 real(real64), intent(in), dimension(:) :: tau
-
4998 integer(int32), intent(in), dimension(:) :: jpvt
-
4999 real(real64), intent(inout), dimension(:) :: b
-
5000 real(real64), intent(out), target, optional, dimension(:) :: work
-
5001 integer(int32), intent(out), optional :: olwork
-
5002 class(errors), intent(inout), optional, target :: err
-
5003 end subroutine
-
5004
-
5005 module subroutine solve_qr_pivot_vec_cmplx(a, tau, jpvt, b, work, olwork, err)
-
5006 complex(real64), intent(inout), dimension(:,:) :: a
-
5007 complex(real64), intent(in), dimension(:) :: tau
-
5008 integer(int32), intent(in), dimension(:) :: jpvt
-
5009 complex(real64), intent(inout), dimension(:) :: b
-
5010 complex(real64), intent(out), target, optional, dimension(:) :: work
-
5011 integer(int32), intent(out), optional :: olwork
-
5012 class(errors), intent(inout), optional, target :: err
-
5013 end subroutine
-
5014
-
5015 module subroutine solve_cholesky_mtx(upper, a, b, err)
-
5016 logical, intent(in) :: upper
-
5017 real(real64), intent(in), dimension(:,:) :: a
-
5018 real(real64), intent(inout), dimension(:,:) :: b
-
5019 class(errors), intent(inout), optional, target :: err
-
5020 end subroutine
-
5021
-
5022 module subroutine solve_cholesky_mtx_cmplx(upper, a, b, err)
-
5023 logical, intent(in) :: upper
-
5024 complex(real64), intent(in), dimension(:,:) :: a
-
5025 complex(real64), intent(inout), dimension(:,:) :: b
-
5026 class(errors), intent(inout), optional, target :: err
-
5027 end subroutine
-
5028
-
5029 module subroutine solve_cholesky_vec(upper, a, b, err)
-
5030 logical, intent(in) :: upper
-
5031 real(real64), intent(in), dimension(:,:) :: a
-
5032 real(real64), intent(inout), dimension(:) :: b
-
5033 class(errors), intent(inout), optional, target :: err
-
5034 end subroutine
-
5035
-
5036 module subroutine solve_cholesky_vec_cmplx(upper, a, b, err)
-
5037 logical, intent(in) :: upper
-
5038 complex(real64), intent(in), dimension(:,:) :: a
-
5039 complex(real64), intent(inout), dimension(:) :: b
-
5040 class(errors), intent(inout), optional, target :: err
-
5041 end subroutine
-
5042
-
5043 module subroutine solve_least_squares_mtx(a, b, work, olwork, err)
-
5044 real(real64), intent(inout), dimension(:,:) :: a, b
-
5045 real(real64), intent(out), target, optional, dimension(:) :: work
-
5046 integer(int32), intent(out), optional :: olwork
-
5047 class(errors), intent(inout), optional, target :: err
-
5048 end subroutine
-
5049
-
5050 module subroutine solve_least_squares_mtx_cmplx(a, b, work, olwork, err)
-
5051 complex(real64), intent(inout), dimension(:,:) :: a, b
-
5052 complex(real64), intent(out), target, optional, dimension(:) :: work
-
5053 integer(int32), intent(out), optional :: olwork
-
5054 class(errors), intent(inout), optional, target :: err
-
5055 end subroutine
-
5056
-
5057 module subroutine solve_least_squares_vec(a, b, work, olwork, err)
-
5058 real(real64), intent(inout), dimension(:,:) :: a
-
5059 real(real64), intent(inout), dimension(:) :: b
-
5060 real(real64), intent(out), target, optional, dimension(:) :: work
-
5061 integer(int32), intent(out), optional :: olwork
-
5062 class(errors), intent(inout), optional, target :: err
-
5063 end subroutine
-
5064
-
5065 module subroutine solve_least_squares_vec_cmplx(a, b, work, olwork, err)
-
5066 complex(real64), intent(inout), dimension(:,:) :: a
-
5067 complex(real64), intent(inout), dimension(:) :: b
-
5068 complex(real64), intent(out), target, optional, dimension(:) :: work
-
5069 integer(int32), intent(out), optional :: olwork
-
5070 class(errors), intent(inout), optional, target :: err
-
5071 end subroutine
-
5072
-
5073 module subroutine solve_least_squares_mtx_pvt(a, b, ipvt, arnk, work, olwork, err)
-
5074 real(real64), intent(inout), dimension(:,:) :: a, b
-
5075 integer(int32), intent(inout), target, optional, dimension(:) :: ipvt
-
5076 integer(int32), intent(out), optional :: arnk
-
5077 real(real64), intent(out), target, optional, dimension(:) :: work
-
5078 integer(int32), intent(out), optional :: olwork
-
5079 class(errors), intent(inout), optional, target :: err
-
5080 end subroutine
-
5081
-
5082 module subroutine solve_least_squares_mtx_pvt_cmplx(a, b, ipvt, arnk, &
-
5083 work, olwork, rwork, err)
-
5084 complex(real64), intent(inout), dimension(:,:) :: a, b
-
5085 integer(int32), intent(inout), target, optional, dimension(:) :: ipvt
-
5086 integer(int32), intent(out), optional :: arnk
-
5087 complex(real64), intent(out), target, optional, dimension(:) :: work
-
5088 integer(int32), intent(out), optional :: olwork
-
5089 real(real64), intent(out), target, optional, dimension(:) :: rwork
-
5090 class(errors), intent(inout), optional, target :: err
-
5091 end subroutine
-
5092
-
5093 module subroutine solve_least_squares_vec_pvt(a, b, ipvt, arnk, work, olwork, err)
-
5094 real(real64), intent(inout), dimension(:,:) :: a
-
5095 real(real64), intent(inout), dimension(:) :: b
-
5096 integer(int32), intent(inout), target, optional, dimension(:) :: ipvt
-
5097 integer(int32), intent(out), optional :: arnk
-
5098 real(real64), intent(out), target, optional, dimension(:) :: work
-
5099 integer(int32), intent(out), optional :: olwork
-
5100 class(errors), intent(inout), optional, target :: err
-
5101 end subroutine
-
5102
-
5103 module subroutine solve_least_squares_vec_pvt_cmplx(a, b, ipvt, arnk, &
-
5104 work, olwork, rwork, err)
-
5105 complex(real64), intent(inout), dimension(:,:) :: a
-
5106 complex(real64), intent(inout), dimension(:) :: b
-
5107 integer(int32), intent(inout), target, optional, dimension(:) :: ipvt
-
5108 integer(int32), intent(out), optional :: arnk
-
5109 complex(real64), intent(out), target, optional, dimension(:) :: work
-
5110 integer(int32), intent(out), optional :: olwork
-
5111 real(real64), intent(out), target, optional, dimension(:) :: rwork
-
5112 class(errors), intent(inout), optional, target :: err
-
5113 end subroutine
-
5114
-
5115 module subroutine solve_least_squares_mtx_svd(a, b, s, arnk, work, olwork, err)
-
5116 real(real64), intent(inout), dimension(:,:) :: a, b
-
5117 integer(int32), intent(out), optional :: arnk
-
5118 real(real64), intent(out), target, optional, dimension(:) :: work, s
-
5119 integer(int32), intent(out), optional :: olwork
-
5120 class(errors), intent(inout), optional, target :: err
-
5121 end subroutine
-
5122
-
5123 module subroutine solve_least_squares_mtx_svd_cmplx(a, b, s, arnk, work, &
-
5124 olwork, rwork, err)
-
5125 complex(real64), intent(inout), dimension(:,:) :: a, b
-
5126 integer(int32), intent(out), optional :: arnk
-
5127 complex(real64), intent(out), target, optional, dimension(:) :: work
-
5128 real(real64), intent(out), target, optional, dimension(:) :: rwork, s
-
5129 integer(int32), intent(out), optional :: olwork
-
5130 class(errors), intent(inout), optional, target :: err
-
5131 end subroutine
-
5132
-
5133 module subroutine solve_least_squares_vec_svd(a, b, s, arnk, work, olwork, err)
-
5134 real(real64), intent(inout), dimension(:,:) :: a
-
5135 real(real64), intent(inout), dimension(:) :: b
-
5136 integer(int32), intent(out), optional :: arnk
-
5137 real(real64), intent(out), target, optional, dimension(:) :: work, s
-
5138 integer(int32), intent(out), optional :: olwork
-
5139 class(errors), intent(inout), optional, target :: err
-
5140 end subroutine
-
5141
-
5142 module subroutine solve_least_squares_vec_svd_cmplx(a, b, s, arnk, work, &
-
5143 olwork, rwork, err)
-
5144 complex(real64), intent(inout), dimension(:,:) :: a
-
5145 complex(real64), intent(inout), dimension(:) :: b
-
5146 integer(int32), intent(out), optional :: arnk
-
5147 complex(real64), intent(out), target, optional, dimension(:) :: work
-
5148 real(real64), intent(out), target, optional, dimension(:) :: rwork, s
-
5149 integer(int32), intent(out), optional :: olwork
-
5150 class(errors), intent(inout), optional, target :: err
-
5151 end subroutine
-
5152
-
5153 module subroutine mtx_inverse_dbl(a, iwork, work, olwork, err)
-
5154 real(real64), intent(inout), dimension(:,:) :: a
-
5155 integer(int32), intent(out), target, optional, dimension(:) :: iwork
-
5156 real(real64), intent(out), target, optional, dimension(:) :: work
-
5157 integer(int32), intent(out), optional :: olwork
-
5158 class(errors), intent(inout), optional, target :: err
-
5159 end subroutine
-
5160
-
5161 module subroutine mtx_inverse_cmplx(a, iwork, work, olwork, err)
-
5162 complex(real64), intent(inout), dimension(:,:) :: a
-
5163 integer(int32), intent(out), target, optional, dimension(:) :: iwork
-
5164 complex(real64), intent(out), target, optional, dimension(:) :: work
-
5165 integer(int32), intent(out), optional :: olwork
-
5166 class(errors), intent(inout), optional, target :: err
-
5167 end subroutine
-
5168
-
5169 module subroutine mtx_pinverse_dbl(a, ainv, tol, work, olwork, err)
-
5170 real(real64), intent(inout), dimension(:,:) :: a
-
5171 real(real64), intent(out), dimension(:,:) :: ainv
-
5172 real(real64), intent(in), optional :: tol
-
5173 real(real64), intent(out), target, dimension(:), optional :: work
-
5174 integer(int32), intent(out), optional :: olwork
-
5175 class(errors), intent(inout), optional, target :: err
-
5176 end subroutine
-
5177
-
5178 module subroutine mtx_pinverse_cmplx(a, ainv, tol, work, olwork, rwork, err)
-
5179 complex(real64), intent(inout), dimension(:,:) :: a
-
5180 complex(real64), intent(out), dimension(:,:) :: ainv
-
5181 real(real64), intent(in), optional :: tol
-
5182 complex(real64), intent(out), target, dimension(:), optional :: work
-
5183 integer(int32), intent(out), optional :: olwork
-
5184 real(real64), intent(out), target, dimension(:), optional :: rwork
-
5185 class(errors), intent(inout), optional, target :: err
-
5186 end subroutine
-
5187
-
5188 module subroutine solve_lq_mtx(a, tau, b, work, olwork, err)
-
5189 real(real64), intent(in), dimension(:,:) :: a
-
5190 real(real64), intent(in), dimension(:) :: tau
-
5191 real(real64), intent(inout), dimension(:,:) :: b
-
5192 real(real64), intent(out), target, optional, dimension(:) :: work
-
5193 integer(int32), intent(out), optional :: olwork
-
5194 class(errors), intent(inout), optional, target :: err
-
5195 end subroutine
-
5196
-
5197 module subroutine solve_lq_mtx_cmplx(a, tau, b, work, olwork, err)
-
5198 complex(real64), intent(in), dimension(:,:) :: a
-
5199 complex(real64), intent(in), dimension(:) :: tau
-
5200 complex(real64), intent(inout), dimension(:,:) :: b
-
5201 complex(real64), intent(out), target, optional, dimension(:) :: work
-
5202 integer(int32), intent(out), optional :: olwork
-
5203 class(errors), intent(inout), optional, target :: err
-
5204 end subroutine
-
5205
-
5206 module subroutine solve_lq_vec(a, tau, b, work, olwork, err)
-
5207 real(real64), intent(in), dimension(:,:) :: a
-
5208 real(real64), intent(in), dimension(:) :: tau
-
5209 real(real64), intent(inout), dimension(:) :: b
-
5210 real(real64), intent(out), target, optional, dimension(:) :: work
-
5211 integer(int32), intent(out), optional :: olwork
-
5212 class(errors), intent(inout), optional, target :: err
-
5213 end subroutine
-
5214
-
5215 module subroutine solve_lq_vec_cmplx(a, tau, b, work, olwork, err)
-
5216 complex(real64), intent(in), dimension(:,:) :: a
-
5217 complex(real64), intent(in), dimension(:) :: tau
-
5218 complex(real64), intent(inout), dimension(:) :: b
-
5219 complex(real64), intent(out), target, optional, dimension(:) :: work
-
5220 integer(int32), intent(out), optional :: olwork
-
5221 class(errors), intent(inout), optional, target :: err
-
5222 end subroutine
-
5223end interface
-
5224
-
5225! ******************************************************************************
-
5226! LINALG_EIGEN.F90
-
5227! ------------------------------------------------------------------------------
-
5228interface
-
5229 module subroutine eigen_symm(vecs, a, vals, work, olwork, err)
-
5230 logical, intent(in) :: vecs
-
5231 real(real64), intent(inout), dimension(:,:) :: a
-
5232 real(real64), intent(out), dimension(:) :: vals
-
5233 real(real64), intent(out), pointer, optional, dimension(:) :: work
-
5234 integer(int32), intent(out), optional :: olwork
-
5235 class(errors), intent(inout), optional, target :: err
-
5236 end subroutine
-
5237
-
5238 module subroutine eigen_asymm(a, vals, vecs, work, olwork, err)
-
5239 real(real64), intent(inout), dimension(:,:) :: a
-
5240 complex(real64), intent(out), dimension(:) :: vals
-
5241 complex(real64), intent(out), optional, dimension(:,:) :: vecs
-
5242 real(real64), intent(out), pointer, optional, dimension(:) :: work
-
5243 integer(int32), intent(out), optional :: olwork
-
5244 class(errors), intent(inout), optional, target :: err
-
5245 end subroutine
-
5246
-
5247 module subroutine eigen_gen(a, b, alpha, beta, vecs, work, olwork, err)
-
5248 real(real64), intent(inout), dimension(:,:) :: a, b
-
5249 complex(real64), intent(out), dimension(:) :: alpha
-
5250 real(real64), intent(out), optional, dimension(:) :: beta
-
5251 complex(real64), intent(out), optional, dimension(:,:) :: vecs
-
5252 real(real64), intent(out), optional, pointer, dimension(:) :: work
-
5253 integer(int32), intent(out), optional :: olwork
-
5254 class(errors), intent(inout), optional, target :: err
-
5255 end subroutine
-
5256
-
5257 module subroutine eigen_cmplx(a, vals, vecs, work, olwork, rwork, err)
-
5258 complex(real64), intent(inout), dimension(:,:) :: a
-
5259 complex(real64), intent(out), dimension(:) :: vals
-
5260 complex(real64), intent(out), optional, dimension(:,:) :: vecs
-
5261 complex(real64), intent(out), target, optional, dimension(:) :: work
-
5262 real(real64), intent(out), target, optional, dimension(:) :: rwork
-
5263 integer(int32), intent(out), optional :: olwork
-
5264 class(errors), intent(inout), optional, target :: err
-
5265 end subroutine
-
5266end interface
-
5267
-
5268! ******************************************************************************
-
5269! LINALG_SORTING.F90
-
5270! ------------------------------------------------------------------------------
-
5271interface
-
5272 module subroutine sort_dbl_array(x, ascend)
-
5273 real(real64), intent(inout), dimension(:) :: x
-
5274 logical, intent(in), optional :: ascend
-
5275 end subroutine
-
5276
-
5277 module subroutine sort_dbl_array_ind(x, ind, ascend, err)
-
5278 real(real64), intent(inout), dimension(:) :: x
-
5279 integer(int32), intent(inout), dimension(:) :: ind
-
5280 logical, intent(in), optional :: ascend
-
5281 class(errors), intent(inout), optional, target :: err
-
5282 end subroutine
-
5283
-
5284 module subroutine sort_cmplx_array(x, ascend)
-
5285 complex(real64), intent(inout), dimension(:) :: x
-
5286 logical, intent(in), optional :: ascend
-
5287 end subroutine
-
5288
-
5289 module subroutine sort_cmplx_array_ind(x, ind, ascend, err)
-
5290 complex(real64), intent(inout), dimension(:) :: x
-
5291 integer(int32), intent(inout), dimension(:) :: ind
-
5292 logical, intent(in), optional :: ascend
-
5293 class(errors), intent(inout), optional, target :: err
-
5294 end subroutine
-
5295
-
5296 module subroutine sort_eigen_cmplx(vals, vecs, ascend, err)
-
5297 complex(real64), intent(inout), dimension(:) :: vals
-
5298 complex(real64), intent(inout), dimension(:,:) :: vecs
-
5299 logical, intent(in), optional :: ascend
-
5300 class(errors), intent(inout), optional, target :: err
-
5301 end subroutine
-
5302
-
5303 module subroutine sort_eigen_dbl(vals, vecs, ascend, err)
-
5304 real(real64), intent(inout), dimension(:) :: vals
-
5305 real(real64), intent(inout), dimension(:,:) :: vecs
-
5306 logical, intent(in), optional :: ascend
-
5307 class(errors), intent(inout), optional, target :: err
-
5308 end subroutine
-
5309
-
5310end interface
+
4214end interface
+
4215
+
4216! ******************************************************************************
+
4217! LINALG_BASIC.F90
+
4218! ------------------------------------------------------------------------------
+
4219interface
+
4220 module subroutine mtx_mult_mtx(transa, transb, alpha, a, b, beta, c, err)
+
4221 logical, intent(in) :: transa, transb
+
4222 real(real64), intent(in) :: alpha, beta
+
4223 real(real64), intent(in), dimension(:,:) :: a, b
+
4224 real(real64), intent(inout), dimension(:,:) :: c
+
4225 class(errors), intent(inout), optional, target :: err
+
4226 end subroutine
+
4227
+
4228 module subroutine mtx_mult_vec(trans, alpha, a, b, beta, c, err)
+
4229 logical, intent(in) :: trans
+
4230 real(real64), intent(in) :: alpha, beta
+
4231 real(real64), intent(in), dimension(:,:) :: a
+
4232 real(real64), intent(in), dimension(:) :: b
+
4233 real(real64), intent(inout), dimension(:) :: c
+
4234 class(errors), intent(inout), optional, target :: err
+
4235 end subroutine
+
4236
+
4237 module subroutine cmtx_mult_mtx(opa, opb, alpha, a, b, beta, c, err)
+
4238 integer(int32), intent(in) :: opa, opb
+
4239 complex(real64), intent(in) :: alpha, beta
+
4240 complex(real64), intent(in), dimension(:,:) :: a, b
+
4241 complex(real64), intent(inout), dimension(:,:) :: c
+
4242 class(errors), intent(inout), optional, target :: err
+
4243 end subroutine
+
4244
+
4245 module subroutine cmtx_mult_vec(opa, alpha, a, b, beta, c, err)
+
4246 integer(int32), intent(in) :: opa
+
4247 complex(real64), intent(in) :: alpha, beta
+
4248 complex(real64), intent(in), dimension(:,:) :: a
+
4249 complex(real64), intent(in), dimension(:) :: b
+
4250 complex(real64), intent(inout), dimension(:) :: c
+
4251 class(errors), intent(inout), optional, target :: err
+
4252 end subroutine
+
4253
+
4254 module subroutine rank1_update_dbl(alpha, x, y, a, err)
+
4255 real(real64), intent(in) :: alpha
+
4256 real(real64), intent(in), dimension(:) :: x, y
+
4257 real(real64), intent(inout), dimension(:,:) :: a
+
4258 class(errors), intent(inout), optional, target :: err
+
4259 end subroutine
+
4260
+
4261 module subroutine rank1_update_cmplx(alpha, x, y, a, err)
+
4262 complex(real64), intent(in) :: alpha
+
4263 complex(real64), intent(in), dimension(:) :: x, y
+
4264 complex(real64), intent(inout), dimension(:,:) :: a
+
4265 class(errors), intent(inout), optional, target :: err
+
4266 end subroutine
+
4267
+
4268 module subroutine diag_mtx_mult_mtx(lside, trans, alpha, a, b, beta, c, err)
+
4269 logical, intent(in) :: lside, trans
+
4270 real(real64) :: alpha, beta
+
4271 real(real64), intent(in), dimension(:) :: a
+
4272 real(real64), intent(in), dimension(:,:) :: b
+
4273 real(real64), intent(inout), dimension(:,:) :: c
+
4274 class(errors), intent(inout), optional, target :: err
+
4275 end subroutine
+
4276
+
4277 module subroutine diag_mtx_mult_mtx2(lside, alpha, a, b, err)
+
4278 logical, intent(in) :: lside
+
4279 real(real64), intent(in) :: alpha
+
4280 real(real64), intent(in), dimension(:) :: a
+
4281 real(real64), intent(inout), dimension(:,:) :: b
+
4282 class(errors), intent(inout), optional, target :: err
+
4283 end subroutine
+
4284
+
4285 module subroutine diag_mtx_mult_mtx3(lside, trans, alpha, a, b, beta, c, err)
+
4286 logical, intent(in) :: lside, trans
+
4287 real(real64) :: alpha, beta
+
4288 complex(real64), intent(in), dimension(:) :: a
+
4289 real(real64), intent(in), dimension(:,:) :: b
+
4290 complex(real64), intent(inout), dimension(:,:) :: c
+
4291 class(errors), intent(inout), optional, target :: err
+
4292 end subroutine
+
4293
+
4294 module subroutine diag_mtx_mult_mtx4(lside, opb, alpha, a, b, beta, c, err)
+
4295 logical, intent(in) :: lside
+
4296 integer(int32), intent(in) :: opb
+
4297 real(real64) :: alpha, beta
+
4298 complex(real64), intent(in), dimension(:) :: a
+
4299 complex(real64), intent(in), dimension(:,:) :: b
+
4300 complex(real64), intent(inout), dimension(:,:) :: c
+
4301 class(errors), intent(inout), optional, target :: err
+
4302 end subroutine
+
4303
+
4304 module subroutine diag_mtx_mult_mtx_cmplx(lside, opb, alpha, a, b, beta, c, err)
+
4305 logical, intent(in) :: lside
+
4306 integer(int32), intent(in) :: opb
+
4307 complex(real64) :: alpha, beta
+
4308 complex(real64), intent(in), dimension(:) :: a
+
4309 complex(real64), intent(in), dimension(:,:) :: b
+
4310 complex(real64), intent(inout), dimension(:,:) :: c
+
4311 class(errors), intent(inout), optional, target :: err
+
4312 end subroutine
+
4313
+
4314 module subroutine diag_mtx_mult_mtx2_cmplx(lside, alpha, a, b, err)
+
4315 logical, intent(in) :: lside
+
4316 complex(real64), intent(in) :: alpha
+
4317 complex(real64), intent(in), dimension(:) :: a
+
4318 complex(real64), intent(inout), dimension(:,:) :: b
+
4319 class(errors), intent(inout), optional, target :: err
+
4320 end subroutine
+
4321
+
4322 module subroutine diag_mtx_mult_mtx_mix(lside, opb, alpha, a, b, beta, c, err)
+
4323 logical, intent(in) :: lside
+
4324 integer(int32), intent(in) :: opb
+
4325 complex(real64) :: alpha, beta
+
4326 real(real64), intent(in), dimension(:) :: a
+
4327 complex(real64), intent(in), dimension(:,:) :: b
+
4328 complex(real64), intent(inout), dimension(:,:) :: c
+
4329 class(errors), intent(inout), optional, target :: err
+
4330 end subroutine
+
4331
+
4332 module subroutine diag_mtx_mult_mtx2_mix(lside, alpha, a, b, err)
+
4333 logical, intent(in) :: lside
+
4334 complex(real64), intent(in) :: alpha
+
4335 real(real64), intent(in), dimension(:) :: a
+
4336 complex(real64), intent(inout), dimension(:,:) :: b
+
4337 class(errors), intent(inout), optional, target :: err
+
4338 end subroutine
+
4339
+
4340 module subroutine diag_mtx_sparse_mult(lside, alpha, a, b, err)
+
4341 logical, intent(in) :: lside
+
4342 real(real64), intent(in) :: alpha
+
4343 real(real64), intent(in), dimension(:) :: a
+
4344 type(csr_matrix), intent(inout) :: b
+
4345 class(errors), intent(inout), optional, target :: err
+
4346 end subroutine
+
4347
+
4348 pure module function trace_dbl(x) result(y)
+
4349 real(real64), intent(in), dimension(:,:) :: x
+
4350 real(real64) :: y
+
4351 end function
+
4352
+
4353 pure module function trace_cmplx(x) result(y)
+
4354 complex(real64), intent(in), dimension(:,:) :: x
+
4355 complex(real64) :: y
+
4356 end function
+
4357
+
4358 module function mtx_rank_dbl(a, tol, work, olwork, err) result(rnk)
+
4359 real(real64), intent(inout), dimension(:,:) :: a
+
4360 real(real64), intent(in), optional :: tol
+
4361 real(real64), intent(out), target, optional, dimension(:) :: work
+
4362 integer(int32), intent(out), optional :: olwork
+
4363 class(errors), intent(inout), optional, target :: err
+
4364 integer(int32) :: rnk
+
4365 end function
+
4366
+
4367 module function mtx_rank_cmplx(a, tol, work, olwork, rwork, err) result(rnk)
+
4368 complex(real64), intent(inout), dimension(:,:) :: a
+
4369 real(real64), intent(in), optional :: tol
+
4370 complex(real64), intent(out), target, optional, dimension(:) :: work
+
4371 integer(int32), intent(out), optional :: olwork
+
4372 real(real64), intent(out), target, optional, dimension(:) :: rwork
+
4373 class(errors), intent(inout), optional, target :: err
+
4374 integer(int32) :: rnk
+
4375 end function
+
4376
+
4377 module function det_dbl(a, iwork, err) result(x)
+
4378 real(real64), intent(inout), dimension(:,:) :: a
+
4379 integer(int32), intent(out), target, optional, dimension(:) :: iwork
+
4380 class(errors), intent(inout), optional, target :: err
+
4381 real(real64) :: x
+
4382 end function
+
4383
+
4384 module function det_cmplx(a, iwork, err) result(x)
+
4385 complex(real64), intent(inout), dimension(:,:) :: a
+
4386 integer(int32), intent(out), target, optional, dimension(:) :: iwork
+
4387 class(errors), intent(inout), optional, target :: err
+
4388 complex(real64) :: x
+
4389 end function
+
4390
+
4391 module subroutine swap_dbl(x, y, err)
+
4392 real(real64), intent(inout), dimension(:) :: x, y
+
4393 class(errors), intent(inout), optional, target :: err
+
4394 end subroutine
+
4395
+
4396 module subroutine swap_cmplx(x, y, err)
+
4397 complex(real64), intent(inout), dimension(:) :: x, y
+
4398 class(errors), intent(inout), optional, target :: err
+
4399 end subroutine
+
4400
+
4401 module subroutine recip_mult_array_dbl(a, x)
+
4402 real(real64), intent(in) :: a
+
4403 real(real64), intent(inout), dimension(:) :: x
+
4404 end subroutine
+
4405
+
4406 module subroutine tri_mtx_mult_dbl(upper, alpha, a, beta, b, err)
+
4407 logical, intent(in) :: upper
+
4408 real(real64), intent(in) :: alpha, beta
+
4409 real(real64), intent(in), dimension(:,:) :: a
+
4410 real(real64), intent(inout), dimension(:,:) :: b
+
4411 class(errors), intent(inout), optional, target :: err
+
4412 end subroutine
+
4413
+
4414 module subroutine tri_mtx_mult_cmplx(upper, alpha, a, beta, b, err)
+
4415 logical, intent(in) :: upper
+
4416 complex(real64), intent(in) :: alpha, beta
+
4417 complex(real64), intent(in), dimension(:,:) :: a
+
4418 complex(real64), intent(inout), dimension(:,:) :: b
+
4419 class(errors), intent(inout), optional, target :: err
+
4420 end subroutine
+
4421
+
4422 module subroutine band_mtx_vec_mult_dbl(trans, kl, ku, alpha, a, x, beta, &
+
4423 y, err)
+
4424 logical, intent(in) :: trans
+
4425 integer(int32), intent(in) :: kl, ku
+
4426 real(real64), intent(in) :: alpha, beta
+
4427 real(real64), intent(in), dimension(:,:) :: a
+
4428 real(real64), intent(in), dimension(:) :: x
+
4429 real(real64), intent(inout), dimension(:) :: y
+
4430 class(errors), intent(inout), optional, target :: err
+
4431 end subroutine
+
4432
+
4433 module subroutine band_mtx_vec_mult_cmplx(trans, kl, ku, alpha, a, x, &
+
4434 beta, y, err)
+
4435 integer(int32), intent(in) :: trans
+
4436 integer(int32), intent(in) :: kl, ku
+
4437 complex(real64), intent(in) :: alpha, beta
+
4438 complex(real64), intent(in), dimension(:,:) :: a
+
4439 complex(real64), intent(in), dimension(:) :: x
+
4440 complex(real64), intent(inout), dimension(:) :: y
+
4441 class(errors), intent(inout), optional, target :: err
+
4442 end subroutine
+
4443
+
4444 module subroutine band_to_full_mtx_dbl(kl, ku, b, f, err)
+
4445 integer(int32), intent(in) :: kl, ku
+
4446 real(real64), intent(in), dimension(:,:) :: b
+
4447 real(real64), intent(out), dimension(:,:) :: f
+
4448 class(errors), intent(inout), optional, target :: err
+
4449 end subroutine
+
4450
+
4451 module subroutine band_to_full_mtx_cmplx(kl, ku, b, f, err)
+
4452 integer(int32), intent(in) :: kl, ku
+
4453 complex(real64), intent(in), dimension(:,:) :: b
+
4454 complex(real64), intent(out), dimension(:,:) :: f
+
4455 class(errors), intent(inout), optional, target :: err
+
4456 end subroutine
+
4457
+
4458 module subroutine band_diag_mtx_mult_dbl(left, m, kl, ku, alpha, a, b, err)
+
4459 logical, intent(in) :: left
+
4460 integer(int32), intent(in) :: m, kl, ku
+
4461 real(real64), intent(in) :: alpha
+
4462 real(real64), intent(inout), dimension(:,:) :: a
+
4463 real(real64), intent(in), dimension(:) :: b
+
4464 class(errors), intent(inout), optional, target :: err
+
4465 end subroutine
+
4466
+
4467 module subroutine band_diag_mtx_mult_cmplx(left, m, kl, ku, alpha, a, b, err)
+
4468 logical, intent(in) :: left
+
4469 integer(int32), intent(in) :: m, kl, ku
+
4470 complex(real64), intent(in) :: alpha
+
4471 complex(real64), intent(inout), dimension(:,:) :: a
+
4472 complex(real64), intent(in), dimension(:) :: b
+
4473 class(errors), intent(inout), optional, target :: err
+
4474 end subroutine
+
4475
+
4476 module subroutine banded_to_dense_dbl(m, kl, ku, a, x, err)
+
4477 integer(int32), intent(in) :: m, kl, ku
+
4478 real(real64), intent(in), dimension(:,:) :: a
+
4479 real(real64), intent(out), dimension(:,:) :: x
+
4480 class(errors), intent(inout), optional, target :: err
+
4481 end subroutine
+
4482
+
4483 module subroutine banded_to_dense_cmplx(m, kl, ku, a, x, err)
+
4484 integer(int32), intent(in) :: m, kl, ku
+
4485 complex(real64), intent(in), dimension(:,:) :: a
+
4486 complex(real64), intent(out), dimension(:,:) :: x
+
4487 class(errors), intent(inout), optional, target :: err
+
4488 end subroutine
+
4489
+
4490 module subroutine dense_to_banded_dbl(a, kl, ku, x, err)
+
4491 real(real64), intent(in), dimension(:,:) :: a
+
4492 integer(int32), intent(in) :: kl, ku
+
4493 real(real64), intent(out), dimension(:,:) :: x
+
4494 class(errors), intent(inout), optional, target :: err
+
4495 end subroutine
+
4496
+
4497 module subroutine dense_to_banded_cmplx(a, kl, ku, x, err)
+
4498 complex(real64), intent(in), dimension(:,:) :: a
+
4499 integer(int32), intent(in) :: kl, ku
+
4500 complex(real64), intent(out), dimension(:,:) :: x
+
4501 class(errors), intent(inout), optional, target :: err
+
4502 end subroutine
+
4503
+
4504 module subroutine extract_diagonal_dbl(a, diag, err)
+
4505 ! Arguments
+
4506 real(real64), intent(in), dimension(:,:) :: a
+
4507 real(real64), intent(out), dimension(:) :: diag
+
4508 class(errors), intent(inout), optional, target :: err
+
4509 end subroutine
+
4510
+
4511 module subroutine extract_diagonal_cmplx(a, diag, err)
+
4512 ! Arguments
+
4513 complex(real64), intent(in), dimension(:,:) :: a
+
4514 complex(real64), intent(out), dimension(:) :: diag
+
4515 class(errors), intent(inout), optional, target :: err
+
4516 end subroutine
+
4517end interface
+
4518
+
4519! ******************************************************************************
+
4520! LINALG_FACTOR.F90
+
4521! ------------------------------------------------------------------------------
+
4522interface
+
4523 module subroutine lu_factor_dbl(a, ipvt, err)
+
4524 real(real64), intent(inout), dimension(:,:) :: a
+
4525 integer(int32), intent(out), dimension(:) :: ipvt
+
4526 class(errors), intent(inout), optional, target :: err
+
4527 end subroutine
+
4528
+
4529 module subroutine lu_factor_cmplx(a, ipvt, err)
+
4530 complex(real64), intent(inout), dimension(:,:) :: a
+
4531 integer(int32), intent(out), dimension(:) :: ipvt
+
4532 class(errors), intent(inout), optional, target :: err
+
4533 end subroutine
+
4534
+
4535 module subroutine form_lu_all(lu, ipvt, u, p, err)
+
4536 real(real64), intent(inout), dimension(:,:) :: lu
+
4537 integer(int32), intent(in), dimension(:) :: ipvt
+
4538 real(real64), intent(out), dimension(:,:) :: u, p
+
4539 class(errors), intent(inout), optional, target :: err
+
4540 end subroutine
+
4541
+
4542 module subroutine form_lu_all_cmplx(lu, ipvt, u, p, err)
+
4543 complex(real64), intent(inout), dimension(:,:) :: lu
+
4544 integer(int32), intent(in), dimension(:) :: ipvt
+
4545 complex(real64), intent(out), dimension(:,:) :: u
+
4546 real(real64), intent(out), dimension(:,:) :: p
+
4547 class(errors), intent(inout), optional, target :: err
+
4548 end subroutine
+
4549
+
4550 module subroutine form_lu_only(lu, u, err)
+
4551 real(real64), intent(inout), dimension(:,:) :: lu
+
4552 real(real64), intent(out), dimension(:,:) :: u
+
4553 class(errors), intent(inout), optional, target :: err
+
4554 end subroutine
+
4555
+
4556 module subroutine form_lu_only_cmplx(lu, u, err)
+
4557 complex(real64), intent(inout), dimension(:,:) :: lu
+
4558 complex(real64), intent(out), dimension(:,:) :: u
+
4559 class(errors), intent(inout), optional, target :: err
+
4560 end subroutine
+
4561
+
4562 module subroutine qr_factor_no_pivot(a, tau, work, olwork, err)
+
4563 real(real64), intent(inout), dimension(:,:) :: a
+
4564 real(real64), intent(out), dimension(:) :: tau
+
4565 real(real64), intent(out), target, dimension(:), optional :: work
+
4566 integer(int32), intent(out), optional :: olwork
+
4567 class(errors), intent(inout), optional, target :: err
+
4568 end subroutine
+
4569
+
4570 module subroutine qr_factor_no_pivot_cmplx(a, tau, work, olwork, err)
+
4571 complex(real64), intent(inout), dimension(:,:) :: a
+
4572 complex(real64), intent(out), dimension(:) :: tau
+
4573 complex(real64), intent(out), target, dimension(:), optional :: work
+
4574 integer(int32), intent(out), optional :: olwork
+
4575 class(errors), intent(inout), optional, target :: err
+
4576 end subroutine
+
4577
+
4578 module subroutine qr_factor_pivot(a, tau, jpvt, work, olwork, err)
+
4579 real(real64), intent(inout), dimension(:,:) :: a
+
4580 real(real64), intent(out), dimension(:) :: tau
+
4581 integer(int32), intent(inout), dimension(:) :: jpvt
+
4582 real(real64), intent(out), target, dimension(:), optional :: work
+
4583 integer(int32), intent(out), optional :: olwork
+
4584 class(errors), intent(inout), optional, target :: err
+
4585 end subroutine
+
4586
+
4587 module subroutine qr_factor_pivot_cmplx(a, tau, jpvt, work, olwork, rwork, &
+
4588 err)
+
4589 complex(real64), intent(inout), dimension(:,:) :: a
+
4590 complex(real64), intent(out), dimension(:) :: tau
+
4591 integer(int32), intent(inout), dimension(:) :: jpvt
+
4592 complex(real64), intent(out), target, dimension(:), optional :: work
+
4593 integer(int32), intent(out), optional :: olwork
+
4594 real(real64), intent(out), target, dimension(:), optional :: rwork
+
4595 class(errors), intent(inout), optional, target :: err
+
4596 end subroutine
+
4597
+
4598 module subroutine form_qr_no_pivot(r, tau, q, work, olwork, err)
+
4599 real(real64), intent(inout), dimension(:,:) :: r
+
4600 real(real64), intent(in), dimension(:) :: tau
+
4601 real(real64), intent(out), dimension(:,:) :: q
+
4602 real(real64), intent(out), target, dimension(:), optional :: work
+
4603 integer(int32), intent(out), optional :: olwork
+
4604 class(errors), intent(inout), optional, target :: err
+
4605 end subroutine
+
4606
+
4607 module subroutine form_qr_no_pivot_cmplx(r, tau, q, work, olwork, err)
+
4608 complex(real64), intent(inout), dimension(:,:) :: r
+
4609 complex(real64), intent(in), dimension(:) :: tau
+
4610 complex(real64), intent(out), dimension(:,:) :: q
+
4611 complex(real64), intent(out), target, dimension(:), optional :: work
+
4612 integer(int32), intent(out), optional :: olwork
+
4613 class(errors), intent(inout), optional, target :: err
+
4614 end subroutine
+
4615
+
4616 module subroutine form_qr_pivot(r, tau, pvt, q, p, work, olwork, err)
+
4617 real(real64), intent(inout), dimension(:,:) :: r
+
4618 real(real64), intent(in), dimension(:) :: tau
+
4619 integer(int32), intent(in), dimension(:) :: pvt
+
4620 real(real64), intent(out), dimension(:,:) :: q, p
+
4621 real(real64), intent(out), target, dimension(:), optional :: work
+
4622 integer(int32), intent(out), optional :: olwork
+
4623 class(errors), intent(inout), optional, target :: err
+
4624 end subroutine
+
4625
+
4626 module subroutine form_qr_pivot_cmplx(r, tau, pvt, q, p, work, olwork, err)
+
4627 complex(real64), intent(inout), dimension(:,:) :: r
+
4628 complex(real64), intent(in), dimension(:) :: tau
+
4629 integer(int32), intent(in), dimension(:) :: pvt
+
4630 complex(real64), intent(out), dimension(:,:) :: q, p
+
4631 complex(real64), intent(out), target, dimension(:), optional :: work
+
4632 integer(int32), intent(out), optional :: olwork
+
4633 class(errors), intent(inout), optional, target :: err
+
4634 end subroutine
+
4635
+
4636 module subroutine mult_qr_mtx(lside, trans, a, tau, c, work, olwork, err)
+
4637 logical, intent(in) :: lside, trans
+
4638 real(real64), intent(in), dimension(:) :: tau
+
4639 real(real64), intent(inout), dimension(:,:) :: a, c
+
4640 real(real64), intent(out), target, dimension(:), optional :: work
+
4641 integer(int32), intent(out), optional :: olwork
+
4642 class(errors), intent(inout), optional, target :: err
+
4643 end subroutine
+
4644
+
4645 module subroutine mult_qr_mtx_cmplx(lside, trans, a, tau, c, work, olwork, err)
+
4646 logical, intent(in) :: lside, trans
+
4647 complex(real64), intent(in), dimension(:) :: tau
+
4648 complex(real64), intent(inout), dimension(:,:) :: a, c
+
4649 complex(real64), intent(out), target, dimension(:), optional :: work
+
4650 integer(int32), intent(out), optional :: olwork
+
4651 class(errors), intent(inout), optional, target :: err
+
4652 end subroutine
+
4653
+
4654 module subroutine mult_qr_vec(trans, a, tau, c, work, olwork, err)
+
4655 logical, intent(in) :: trans
+
4656 real(real64), intent(inout), dimension(:,:) :: a
+
4657 real(real64), intent(in), dimension(:) :: tau
+
4658 real(real64), intent(inout), dimension(:) :: c
+
4659 real(real64), intent(out), target, dimension(:), optional :: work
+
4660 integer(int32), intent(out), optional :: olwork
+
4661 class(errors), intent(inout), optional, target :: err
+
4662 end subroutine
+
4663
+
4664 module subroutine mult_qr_vec_cmplx(trans, a, tau, c, work, olwork, err)
+
4665 logical, intent(in) :: trans
+
4666 complex(real64), intent(inout), dimension(:,:) :: a
+
4667 complex(real64), intent(in), dimension(:) :: tau
+
4668 complex(real64), intent(inout), dimension(:) :: c
+
4669 complex(real64), intent(out), target, dimension(:), optional :: work
+
4670 integer(int32), intent(out), optional :: olwork
+
4671 class(errors), intent(inout), optional, target :: err
+
4672 end subroutine
+
4673
+
4674 module subroutine qr_rank1_update_dbl(q, r, u, v, work, err)
+
4675 real(real64), intent(inout), dimension(:,:) :: q, r
+
4676 real(real64), intent(inout), dimension(:) :: u, v
+
4677 real(real64), intent(out), target, optional, dimension(:) :: work
+
4678 class(errors), intent(inout), optional, target :: err
+
4679 end subroutine
+
4680
+
4681 module subroutine qr_rank1_update_cmplx(q, r, u, v, work, rwork, err)
+
4682 complex(real64), intent(inout), dimension(:,:) :: q, r
+
4683 complex(real64), intent(inout), dimension(:) :: u, v
+
4684 complex(real64), intent(out), target, optional, dimension(:) :: work
+
4685 real(real64), intent(out), target, optional, dimension(:) :: rwork
+
4686 class(errors), intent(inout), optional, target :: err
+
4687 end subroutine
+
4688
+
4689 module subroutine cholesky_factor_dbl(a, upper, err)
+
4690 real(real64), intent(inout), dimension(:,:) :: a
+
4691 logical, intent(in), optional :: upper
+
4692 class(errors), intent(inout), optional, target :: err
+
4693 end subroutine
+
4694
+
4695 module subroutine cholesky_factor_cmplx(a, upper, err)
+
4696 complex(real64), intent(inout), dimension(:,:) :: a
+
4697 logical, intent(in), optional :: upper
+
4698 class(errors), intent(inout), optional, target :: err
+
4699 end subroutine
+
4700
+
4701 module subroutine cholesky_rank1_update_dbl(r, u, work, err)
+
4702 real(real64), intent(inout), dimension(:,:) :: r
+
4703 real(real64), intent(inout), dimension(:) :: u
+
4704 real(real64), intent(out), target, optional, dimension(:) :: work
+
4705 class(errors), intent(inout), optional, target :: err
+
4706 end subroutine
+
4707
+
4708 module subroutine cholesky_rank1_update_cmplx(r, u, work, err)
+
4709 complex(real64), intent(inout), dimension(:,:) :: r
+
4710 complex(real64), intent(inout), dimension(:) :: u
+
4711 real(real64), intent(out), target, optional, dimension(:) :: work
+
4712 class(errors), intent(inout), optional, target :: err
+
4713 end subroutine
+
4714
+
4715 module subroutine cholesky_rank1_downdate_dbl(r, u, work, err)
+
4716 real(real64), intent(inout), dimension(:,:) :: r
+
4717 real(real64), intent(inout), dimension(:) :: u
+
4718 real(real64), intent(out), target, optional, dimension(:) :: work
+
4719 class(errors), intent(inout), optional, target :: err
+
4720 end subroutine
+
4721
+
4722 module subroutine cholesky_rank1_downdate_cmplx(r, u, work, err)
+
4723 complex(real64), intent(inout), dimension(:,:) :: r
+
4724 complex(real64), intent(inout), dimension(:) :: u
+
4725 real(real64), intent(out), target, optional, dimension(:) :: work
+
4726 class(errors), intent(inout), optional, target :: err
+
4727 end subroutine
+
4728
+
4729 module subroutine rz_factor_dbl(a, tau, work, olwork, err)
+
4730 real(real64), intent(inout), dimension(:,:) :: a
+
4731 real(real64), intent(out), dimension(:) :: tau
+
4732 real(real64), intent(out), target, optional, dimension(:) :: work
+
4733 integer(int32), intent(out), optional :: olwork
+
4734 class(errors), intent(inout), optional, target :: err
+
4735 end subroutine
+
4736
+
4737 module subroutine rz_factor_cmplx(a, tau, work, olwork, err)
+
4738 complex(real64), intent(inout), dimension(:,:) :: a
+
4739 complex(real64), intent(out), dimension(:) :: tau
+
4740 complex(real64), intent(out), target, optional, dimension(:) :: work
+
4741 integer(int32), intent(out), optional :: olwork
+
4742 class(errors), intent(inout), optional, target :: err
+
4743 end subroutine
+
4744
+
4745 module subroutine mult_rz_mtx(lside, trans, l, a, tau, c, work, olwork, err)
+
4746 logical, intent(in) :: lside, trans
+
4747 integer(int32), intent(in) :: l
+
4748 real(real64), intent(inout), dimension(:,:) :: a, c
+
4749 real(real64), intent(in), dimension(:) :: tau
+
4750 real(real64), intent(out), target, optional, dimension(:) :: work
+
4751 integer(int32), intent(out), optional :: olwork
+
4752 class(errors), intent(inout), optional, target :: err
+
4753 end subroutine
+
4754
+
4755 module subroutine mult_rz_mtx_cmplx(lside, trans, l, a, tau, c, work, olwork, err)
+
4756 logical, intent(in) :: lside, trans
+
4757 integer(int32), intent(in) :: l
+
4758 complex(real64), intent(inout), dimension(:,:) :: a, c
+
4759 complex(real64), intent(in), dimension(:) :: tau
+
4760 complex(real64), intent(out), target, optional, dimension(:) :: work
+
4761 integer(int32), intent(out), optional :: olwork
+
4762 class(errors), intent(inout), optional, target :: err
+
4763 end subroutine
+
4764
+
4765 module subroutine mult_rz_vec(trans, l, a, tau, c, work, olwork, err)
+
4766 logical, intent(in) :: trans
+
4767 integer(int32), intent(in) :: l
+
4768 real(real64), intent(inout), dimension(:,:) :: a
+
4769 real(real64), intent(in), dimension(:) :: tau
+
4770 real(real64), intent(inout), dimension(:) :: c
+
4771 real(real64), intent(out), target, optional, dimension(:) :: work
+
4772 integer(int32), intent(out), optional :: olwork
+
4773 class(errors), intent(inout), optional, target :: err
+
4774 end subroutine
+
4775
+
4776 module subroutine mult_rz_vec_cmplx(trans, l, a, tau, c, work, olwork, err)
+
4777 logical, intent(in) :: trans
+
4778 integer(int32), intent(in) :: l
+
4779 complex(real64), intent(inout), dimension(:,:) :: a
+
4780 complex(real64), intent(in), dimension(:) :: tau
+
4781 complex(real64), intent(inout), dimension(:) :: c
+
4782 complex(real64), intent(out), target, optional, dimension(:) :: work
+
4783 integer(int32), intent(out), optional :: olwork
+
4784 class(errors), intent(inout), optional, target :: err
+
4785 end subroutine
+
4786
+
4787 module subroutine svd_dbl(a, s, u, vt, work, olwork, err)
+
4788 real(real64), intent(inout), dimension(:,:) :: a
+
4789 real(real64), intent(out), dimension(:) :: s
+
4790 real(real64), intent(out), optional, dimension(:,:) :: u, vt
+
4791 real(real64), intent(out), target, optional, dimension(:) :: work
+
4792 integer(int32), intent(out), optional :: olwork
+
4793 class(errors), intent(inout), optional, target :: err
+
4794 end subroutine
+
4795
+
4796 module subroutine svd_cmplx(a, s, u, vt, work, olwork, rwork, err)
+
4797 complex(real64), intent(inout), dimension(:,:) :: a
+
4798 real(real64), intent(out), dimension(:) :: s
+
4799 complex(real64), intent(out), optional, dimension(:,:) :: u, vt
+
4800 complex(real64), intent(out), target, optional, dimension(:) :: work
+
4801 integer(int32), intent(out), optional :: olwork
+
4802 real(real64), intent(out), target, optional, dimension(:) :: rwork
+
4803 class(errors), intent(inout), optional, target :: err
+
4804 end subroutine
+
4805
+
4806 module subroutine lq_factor_no_pivot(a, tau, work, olwork, err)
+
4807 real(real64), intent(inout), dimension(:,:) :: a
+
4808 real(real64), intent(out), dimension(:) :: tau
+
4809 real(real64), intent(out), target, dimension(:), optional :: work
+
4810 integer(int32), intent(out), optional :: olwork
+
4811 class(errors), intent(inout), optional, target :: err
+
4812 end subroutine
+
4813
+
4814 module subroutine lq_factor_no_pivot_cmplx(a, tau, work, olwork, err)
+
4815 complex(real64), intent(inout), dimension(:,:) :: a
+
4816 complex(real64), intent(out), dimension(:) :: tau
+
4817 complex(real64), intent(out), target, dimension(:), optional :: work
+
4818 integer(int32), intent(out), optional :: olwork
+
4819 class(errors), intent(inout), optional, target :: err
+
4820 end subroutine
+
4821
+
4822 module subroutine form_lq_no_pivot(l, tau, q, work, olwork, err)
+
4823 real(real64), intent(inout), dimension(:,:) :: l
+
4824 real(real64), intent(in), dimension(:) :: tau
+
4825 real(real64), intent(out), dimension(:,:) :: q
+
4826 real(real64), intent(out), target, dimension(:), optional :: work
+
4827 integer(int32), intent(out), optional :: olwork
+
4828 class(errors), intent(inout), optional, target :: err
+
4829 end subroutine
+
4830
+
4831 module subroutine form_lq_no_pivot_cmplx(l, tau, q, work, olwork, err)
+
4832 complex(real64), intent(inout), dimension(:,:) :: l
+
4833 complex(real64), intent(in), dimension(:) :: tau
+
4834 complex(real64), intent(out), dimension(:,:) :: q
+
4835 complex(real64), intent(out), target, dimension(:), optional :: work
+
4836 integer(int32), intent(out), optional :: olwork
+
4837 class(errors), intent(inout), optional, target :: err
+
4838 end subroutine
+
4839
+
4840 module subroutine mult_lq_mtx(lside, trans, a, tau, c, work, olwork, err)
+
4841 logical, intent(in) :: lside, trans
+
4842 real(real64), intent(in), dimension(:,:) :: a
+
4843 real(real64), intent(in), dimension(:) :: tau
+
4844 real(real64), intent(inout), dimension(:,:) :: c
+
4845 real(real64), intent(out), target, dimension(:), optional :: work
+
4846 integer(int32), intent(out), optional :: olwork
+
4847 class(errors), intent(inout), optional, target :: err
+
4848 end subroutine
+
4849
+
4850 module subroutine mult_lq_mtx_cmplx(lside, trans, a, tau, c, work, olwork, err)
+
4851 logical, intent(in) :: lside, trans
+
4852 complex(real64), intent(in), dimension(:,:) :: a
+
4853 complex(real64), intent(in), dimension(:) :: tau
+
4854 complex(real64), intent(inout), dimension(:,:) :: c
+
4855 complex(real64), intent(out), target, dimension(:), optional :: work
+
4856 integer(int32), intent(out), optional :: olwork
+
4857 class(errors), intent(inout), optional, target :: err
+
4858 end subroutine
+
4859
+
4860 module subroutine mult_lq_vec(trans, a, tau, c, work, olwork, err)
+
4861 logical, intent(in) :: trans
+
4862 real(real64), intent(in), dimension(:,:) :: a
+
4863 real(real64), intent(in), dimension(:) :: tau
+
4864 real(real64), intent(inout), dimension(:) :: c
+
4865 real(real64), intent(out), target, dimension(:), optional :: work
+
4866 integer(int32), intent(out), optional :: olwork
+
4867 class(errors), intent(inout), optional, target :: err
+
4868 end subroutine
+
4869
+
4870 module subroutine mult_lq_vec_cmplx(trans, a, tau, c, work, olwork, err)
+
4871 logical, intent(in) :: trans
+
4872 complex(real64), intent(in), dimension(:,:) :: a
+
4873 complex(real64), intent(in), dimension(:) :: tau
+
4874 complex(real64), intent(inout), dimension(:) :: c
+
4875 complex(real64), intent(out), target, dimension(:), optional :: work
+
4876 integer(int32), intent(out), optional :: olwork
+
4877 class(errors), intent(inout), optional, target :: err
+
4878 end subroutine
+
4879end interface
+
4880
+
4881! ******************************************************************************
+
4882! LINALG_SOLVE.F90
+
4883! ------------------------------------------------------------------------------
+
4884interface
+
4885 module subroutine solve_tri_mtx(lside, upper, trans, nounit, alpha, a, b, err)
+
4886 logical, intent(in) :: lside, upper, trans, nounit
+
4887 real(real64), intent(in) :: alpha
+
4888 real(real64), intent(in), dimension(:,:) :: a
+
4889 real(real64), intent(inout), dimension(:,:) :: b
+
4890 class(errors), intent(inout), optional, target :: err
+
4891 end subroutine
+
4892
+
4893 module subroutine solve_tri_mtx_cmplx(lside, upper, trans, nounit, alpha, a, b, err)
+
4894 logical, intent(in) :: lside, upper, trans, nounit
+
4895 complex(real64), intent(in) :: alpha
+
4896 complex(real64), intent(in), dimension(:,:) :: a
+
4897 complex(real64), intent(inout), dimension(:,:) :: b
+
4898 class(errors), intent(inout), optional, target :: err
+
4899 end subroutine
+
4900
+
4901 module subroutine solve_tri_vec(upper, trans, nounit, a, x, err)
+
4902 logical, intent(in) :: upper, trans, nounit
+
4903 real(real64), intent(in), dimension(:,:) :: a
+
4904 real(real64), intent(inout), dimension(:) :: x
+
4905 class(errors), intent(inout), optional, target :: err
+
4906 end subroutine
+
4907
+
4908 module subroutine solve_tri_vec_cmplx(upper, trans, nounit, a, x, err)
+
4909 logical, intent(in) :: upper, trans, nounit
+
4910 complex(real64), intent(in), dimension(:,:) :: a
+
4911 complex(real64), intent(inout), dimension(:) :: x
+
4912 class(errors), intent(inout), optional, target :: err
+
4913 end subroutine
+
4914
+
4915 module subroutine solve_lu_mtx(a, ipvt, b, err)
+
4916 real(real64), intent(in), dimension(:,:) :: a
+
4917 integer(int32), intent(in), dimension(:) :: ipvt
+
4918 real(real64), intent(inout), dimension(:,:) :: b
+
4919 class(errors), intent(inout), optional, target :: err
+
4920 end subroutine
+
4921
+
4922 module subroutine solve_lu_mtx_cmplx(a, ipvt, b, err)
+
4923 complex(real64), intent(in), dimension(:,:) :: a
+
4924 integer(int32), intent(in), dimension(:) :: ipvt
+
4925 complex(real64), intent(inout), dimension(:,:) :: b
+
4926 class(errors), intent(inout), optional, target :: err
+
4927 end subroutine
+
4928
+
4929 module subroutine solve_lu_vec(a, ipvt, b, err)
+
4930 real(real64), intent(in), dimension(:,:) :: a
+
4931 integer(int32), intent(in), dimension(:) :: ipvt
+
4932 real(real64), intent(inout), dimension(:) :: b
+
4933 class(errors), intent(inout), optional, target :: err
+
4934 end subroutine
+
4935
+
4936 module subroutine solve_lu_vec_cmplx(a, ipvt, b, err)
+
4937 complex(real64), intent(in), dimension(:,:) :: a
+
4938 integer(int32), intent(in), dimension(:) :: ipvt
+
4939 complex(real64), intent(inout), dimension(:) :: b
+
4940 class(errors), intent(inout), optional, target :: err
+
4941 end subroutine
+
4942
+
4943 module subroutine solve_qr_no_pivot_mtx(a, tau, b, work, olwork, err)
+
4944 real(real64), intent(inout), dimension(:,:) :: a, b
+
4945 real(real64), intent(in), dimension(:) :: tau
+
4946 real(real64), intent(out), target, optional, dimension(:) :: work
+
4947 integer(int32), intent(out), optional :: olwork
+
4948 class(errors), intent(inout), optional, target :: err
+
4949 end subroutine
+
4950
+
4951 module subroutine solve_qr_no_pivot_mtx_cmplx(a, tau, b, work, olwork, err)
+
4952 complex(real64), intent(inout), dimension(:,:) :: a, b
+
4953 complex(real64), intent(in), dimension(:) :: tau
+
4954 complex(real64), intent(out), target, optional, dimension(:) :: work
+
4955 integer(int32), intent(out), optional :: olwork
+
4956 class(errors), intent(inout), optional, target :: err
+
4957 end subroutine
+
4958
+
4959 module subroutine solve_qr_no_pivot_vec(a, tau, b, work, olwork, err)
+
4960 real(real64), intent(inout), dimension(:,:) :: a
+
4961 real(real64), intent(in), dimension(:) :: tau
+
4962 real(real64), intent(inout), dimension(:) :: b
+
4963 real(real64), intent(out), target, optional, dimension(:) :: work
+
4964 integer(int32), intent(out), optional :: olwork
+
4965 class(errors), intent(inout), optional, target :: err
+
4966 end subroutine
+
4967
+
4968 module subroutine solve_qr_no_pivot_vec_cmplx(a, tau, b, work, olwork, err)
+
4969 complex(real64), intent(inout), dimension(:,:) :: a
+
4970 complex(real64), intent(in), dimension(:) :: tau
+
4971 complex(real64), intent(inout), dimension(:) :: b
+
4972 complex(real64), intent(out), target, optional, dimension(:) :: work
+
4973 integer(int32), intent(out), optional :: olwork
+
4974 class(errors), intent(inout), optional, target :: err
+
4975 end subroutine
+
4976
+
4977 module subroutine solve_qr_pivot_mtx(a, tau, jpvt, b, work, olwork, err)
+
4978 real(real64), intent(inout), dimension(:,:) :: a
+
4979 real(real64), intent(in), dimension(:) :: tau
+
4980 integer(int32), intent(in), dimension(:) :: jpvt
+
4981 real(real64), intent(inout), dimension(:,:) :: b
+
4982 real(real64), intent(out), target, optional, dimension(:) :: work
+
4983 integer(int32), intent(out), optional :: olwork
+
4984 class(errors), intent(inout), optional, target :: err
+
4985 end subroutine
+
4986
+
4987 module subroutine solve_qr_pivot_mtx_cmplx(a, tau, jpvt, b, work, olwork, err)
+
4988 complex(real64), intent(inout), dimension(:,:) :: a
+
4989 complex(real64), intent(in), dimension(:) :: tau
+
4990 integer(int32), intent(in), dimension(:) :: jpvt
+
4991 complex(real64), intent(inout), dimension(:,:) :: b
+
4992 complex(real64), intent(out), target, optional, dimension(:) :: work
+
4993 integer(int32), intent(out), optional :: olwork
+
4994 class(errors), intent(inout), optional, target :: err
+
4995 end subroutine
+
4996
+
4997 module subroutine solve_qr_pivot_vec(a, tau, jpvt, b, work, olwork, err)
+
4998 real(real64), intent(inout), dimension(:,:) :: a
+
4999 real(real64), intent(in), dimension(:) :: tau
+
5000 integer(int32), intent(in), dimension(:) :: jpvt
+
5001 real(real64), intent(inout), dimension(:) :: b
+
5002 real(real64), intent(out), target, optional, dimension(:) :: work
+
5003 integer(int32), intent(out), optional :: olwork
+
5004 class(errors), intent(inout), optional, target :: err
+
5005 end subroutine
+
5006
+
5007 module subroutine solve_qr_pivot_vec_cmplx(a, tau, jpvt, b, work, olwork, err)
+
5008 complex(real64), intent(inout), dimension(:,:) :: a
+
5009 complex(real64), intent(in), dimension(:) :: tau
+
5010 integer(int32), intent(in), dimension(:) :: jpvt
+
5011 complex(real64), intent(inout), dimension(:) :: b
+
5012 complex(real64), intent(out), target, optional, dimension(:) :: work
+
5013 integer(int32), intent(out), optional :: olwork
+
5014 class(errors), intent(inout), optional, target :: err
+
5015 end subroutine
+
5016
+
5017 module subroutine solve_cholesky_mtx(upper, a, b, err)
+
5018 logical, intent(in) :: upper
+
5019 real(real64), intent(in), dimension(:,:) :: a
+
5020 real(real64), intent(inout), dimension(:,:) :: b
+
5021 class(errors), intent(inout), optional, target :: err
+
5022 end subroutine
+
5023
+
5024 module subroutine solve_cholesky_mtx_cmplx(upper, a, b, err)
+
5025 logical, intent(in) :: upper
+
5026 complex(real64), intent(in), dimension(:,:) :: a
+
5027 complex(real64), intent(inout), dimension(:,:) :: b
+
5028 class(errors), intent(inout), optional, target :: err
+
5029 end subroutine
+
5030
+
5031 module subroutine solve_cholesky_vec(upper, a, b, err)
+
5032 logical, intent(in) :: upper
+
5033 real(real64), intent(in), dimension(:,:) :: a
+
5034 real(real64), intent(inout), dimension(:) :: b
+
5035 class(errors), intent(inout), optional, target :: err
+
5036 end subroutine
+
5037
+
5038 module subroutine solve_cholesky_vec_cmplx(upper, a, b, err)
+
5039 logical, intent(in) :: upper
+
5040 complex(real64), intent(in), dimension(:,:) :: a
+
5041 complex(real64), intent(inout), dimension(:) :: b
+
5042 class(errors), intent(inout), optional, target :: err
+
5043 end subroutine
+
5044
+
5045 module subroutine solve_least_squares_mtx(a, b, work, olwork, err)
+
5046 real(real64), intent(inout), dimension(:,:) :: a, b
+
5047 real(real64), intent(out), target, optional, dimension(:) :: work
+
5048 integer(int32), intent(out), optional :: olwork
+
5049 class(errors), intent(inout), optional, target :: err
+
5050 end subroutine
+
5051
+
5052 module subroutine solve_least_squares_mtx_cmplx(a, b, work, olwork, err)
+
5053 complex(real64), intent(inout), dimension(:,:) :: a, b
+
5054 complex(real64), intent(out), target, optional, dimension(:) :: work
+
5055 integer(int32), intent(out), optional :: olwork
+
5056 class(errors), intent(inout), optional, target :: err
+
5057 end subroutine
+
5058
+
5059 module subroutine solve_least_squares_vec(a, b, work, olwork, err)
+
5060 real(real64), intent(inout), dimension(:,:) :: a
+
5061 real(real64), intent(inout), dimension(:) :: b
+
5062 real(real64), intent(out), target, optional, dimension(:) :: work
+
5063 integer(int32), intent(out), optional :: olwork
+
5064 class(errors), intent(inout), optional, target :: err
+
5065 end subroutine
+
5066
+
5067 module subroutine solve_least_squares_vec_cmplx(a, b, work, olwork, err)
+
5068 complex(real64), intent(inout), dimension(:,:) :: a
+
5069 complex(real64), intent(inout), dimension(:) :: b
+
5070 complex(real64), intent(out), target, optional, dimension(:) :: work
+
5071 integer(int32), intent(out), optional :: olwork
+
5072 class(errors), intent(inout), optional, target :: err
+
5073 end subroutine
+
5074
+
5075 module subroutine solve_least_squares_mtx_pvt(a, b, ipvt, arnk, work, olwork, err)
+
5076 real(real64), intent(inout), dimension(:,:) :: a, b
+
5077 integer(int32), intent(inout), target, optional, dimension(:) :: ipvt
+
5078 integer(int32), intent(out), optional :: arnk
+
5079 real(real64), intent(out), target, optional, dimension(:) :: work
+
5080 integer(int32), intent(out), optional :: olwork
+
5081 class(errors), intent(inout), optional, target :: err
+
5082 end subroutine
+
5083
+
5084 module subroutine solve_least_squares_mtx_pvt_cmplx(a, b, ipvt, arnk, &
+
5085 work, olwork, rwork, err)
+
5086 complex(real64), intent(inout), dimension(:,:) :: a, b
+
5087 integer(int32), intent(inout), target, optional, dimension(:) :: ipvt
+
5088 integer(int32), intent(out), optional :: arnk
+
5089 complex(real64), intent(out), target, optional, dimension(:) :: work
+
5090 integer(int32), intent(out), optional :: olwork
+
5091 real(real64), intent(out), target, optional, dimension(:) :: rwork
+
5092 class(errors), intent(inout), optional, target :: err
+
5093 end subroutine
+
5094
+
5095 module subroutine solve_least_squares_vec_pvt(a, b, ipvt, arnk, work, olwork, err)
+
5096 real(real64), intent(inout), dimension(:,:) :: a
+
5097 real(real64), intent(inout), dimension(:) :: b
+
5098 integer(int32), intent(inout), target, optional, dimension(:) :: ipvt
+
5099 integer(int32), intent(out), optional :: arnk
+
5100 real(real64), intent(out), target, optional, dimension(:) :: work
+
5101 integer(int32), intent(out), optional :: olwork
+
5102 class(errors), intent(inout), optional, target :: err
+
5103 end subroutine
+
5104
+
5105 module subroutine solve_least_squares_vec_pvt_cmplx(a, b, ipvt, arnk, &
+
5106 work, olwork, rwork, err)
+
5107 complex(real64), intent(inout), dimension(:,:) :: a
+
5108 complex(real64), intent(inout), dimension(:) :: b
+
5109 integer(int32), intent(inout), target, optional, dimension(:) :: ipvt
+
5110 integer(int32), intent(out), optional :: arnk
+
5111 complex(real64), intent(out), target, optional, dimension(:) :: work
+
5112 integer(int32), intent(out), optional :: olwork
+
5113 real(real64), intent(out), target, optional, dimension(:) :: rwork
+
5114 class(errors), intent(inout), optional, target :: err
+
5115 end subroutine
+
5116
+
5117 module subroutine solve_least_squares_mtx_svd(a, b, s, arnk, work, olwork, err)
+
5118 real(real64), intent(inout), dimension(:,:) :: a, b
+
5119 integer(int32), intent(out), optional :: arnk
+
5120 real(real64), intent(out), target, optional, dimension(:) :: work, s
+
5121 integer(int32), intent(out), optional :: olwork
+
5122 class(errors), intent(inout), optional, target :: err
+
5123 end subroutine
+
5124
+
5125 module subroutine solve_least_squares_mtx_svd_cmplx(a, b, s, arnk, work, &
+
5126 olwork, rwork, err)
+
5127 complex(real64), intent(inout), dimension(:,:) :: a, b
+
5128 integer(int32), intent(out), optional :: arnk
+
5129 complex(real64), intent(out), target, optional, dimension(:) :: work
+
5130 real(real64), intent(out), target, optional, dimension(:) :: rwork, s
+
5131 integer(int32), intent(out), optional :: olwork
+
5132 class(errors), intent(inout), optional, target :: err
+
5133 end subroutine
+
5134
+
5135 module subroutine solve_least_squares_vec_svd(a, b, s, arnk, work, olwork, err)
+
5136 real(real64), intent(inout), dimension(:,:) :: a
+
5137 real(real64), intent(inout), dimension(:) :: b
+
5138 integer(int32), intent(out), optional :: arnk
+
5139 real(real64), intent(out), target, optional, dimension(:) :: work, s
+
5140 integer(int32), intent(out), optional :: olwork
+
5141 class(errors), intent(inout), optional, target :: err
+
5142 end subroutine
+
5143
+
5144 module subroutine solve_least_squares_vec_svd_cmplx(a, b, s, arnk, work, &
+
5145 olwork, rwork, err)
+
5146 complex(real64), intent(inout), dimension(:,:) :: a
+
5147 complex(real64), intent(inout), dimension(:) :: b
+
5148 integer(int32), intent(out), optional :: arnk
+
5149 complex(real64), intent(out), target, optional, dimension(:) :: work
+
5150 real(real64), intent(out), target, optional, dimension(:) :: rwork, s
+
5151 integer(int32), intent(out), optional :: olwork
+
5152 class(errors), intent(inout), optional, target :: err
+
5153 end subroutine
+
5154
+
5155 module subroutine mtx_inverse_dbl(a, iwork, work, olwork, err)
+
5156 real(real64), intent(inout), dimension(:,:) :: a
+
5157 integer(int32), intent(out), target, optional, dimension(:) :: iwork
+
5158 real(real64), intent(out), target, optional, dimension(:) :: work
+
5159 integer(int32), intent(out), optional :: olwork
+
5160 class(errors), intent(inout), optional, target :: err
+
5161 end subroutine
+
5162
+
5163 module subroutine mtx_inverse_cmplx(a, iwork, work, olwork, err)
+
5164 complex(real64), intent(inout), dimension(:,:) :: a
+
5165 integer(int32), intent(out), target, optional, dimension(:) :: iwork
+
5166 complex(real64), intent(out), target, optional, dimension(:) :: work
+
5167 integer(int32), intent(out), optional :: olwork
+
5168 class(errors), intent(inout), optional, target :: err
+
5169 end subroutine
+
5170
+
5171 module subroutine mtx_pinverse_dbl(a, ainv, tol, work, olwork, err)
+
5172 real(real64), intent(inout), dimension(:,:) :: a
+
5173 real(real64), intent(out), dimension(:,:) :: ainv
+
5174 real(real64), intent(in), optional :: tol
+
5175 real(real64), intent(out), target, dimension(:), optional :: work
+
5176 integer(int32), intent(out), optional :: olwork
+
5177 class(errors), intent(inout), optional, target :: err
+
5178 end subroutine
+
5179
+
5180 module subroutine mtx_pinverse_cmplx(a, ainv, tol, work, olwork, rwork, err)
+
5181 complex(real64), intent(inout), dimension(:,:) :: a
+
5182 complex(real64), intent(out), dimension(:,:) :: ainv
+
5183 real(real64), intent(in), optional :: tol
+
5184 complex(real64), intent(out), target, dimension(:), optional :: work
+
5185 integer(int32), intent(out), optional :: olwork
+
5186 real(real64), intent(out), target, dimension(:), optional :: rwork
+
5187 class(errors), intent(inout), optional, target :: err
+
5188 end subroutine
+
5189
+
5190 module subroutine solve_lq_mtx(a, tau, b, work, olwork, err)
+
5191 real(real64), intent(in), dimension(:,:) :: a
+
5192 real(real64), intent(in), dimension(:) :: tau
+
5193 real(real64), intent(inout), dimension(:,:) :: b
+
5194 real(real64), intent(out), target, optional, dimension(:) :: work
+
5195 integer(int32), intent(out), optional :: olwork
+
5196 class(errors), intent(inout), optional, target :: err
+
5197 end subroutine
+
5198
+
5199 module subroutine solve_lq_mtx_cmplx(a, tau, b, work, olwork, err)
+
5200 complex(real64), intent(in), dimension(:,:) :: a
+
5201 complex(real64), intent(in), dimension(:) :: tau
+
5202 complex(real64), intent(inout), dimension(:,:) :: b
+
5203 complex(real64), intent(out), target, optional, dimension(:) :: work
+
5204 integer(int32), intent(out), optional :: olwork
+
5205 class(errors), intent(inout), optional, target :: err
+
5206 end subroutine
+
5207
+
5208 module subroutine solve_lq_vec(a, tau, b, work, olwork, err)
+
5209 real(real64), intent(in), dimension(:,:) :: a
+
5210 real(real64), intent(in), dimension(:) :: tau
+
5211 real(real64), intent(inout), dimension(:) :: b
+
5212 real(real64), intent(out), target, optional, dimension(:) :: work
+
5213 integer(int32), intent(out), optional :: olwork
+
5214 class(errors), intent(inout), optional, target :: err
+
5215 end subroutine
+
5216
+
5217 module subroutine solve_lq_vec_cmplx(a, tau, b, work, olwork, err)
+
5218 complex(real64), intent(in), dimension(:,:) :: a
+
5219 complex(real64), intent(in), dimension(:) :: tau
+
5220 complex(real64), intent(inout), dimension(:) :: b
+
5221 complex(real64), intent(out), target, optional, dimension(:) :: work
+
5222 integer(int32), intent(out), optional :: olwork
+
5223 class(errors), intent(inout), optional, target :: err
+
5224 end subroutine
+
5225end interface
+
5226
+
5227! ******************************************************************************
+
5228! LINALG_EIGEN.F90
+
5229! ------------------------------------------------------------------------------
+
5230interface
+
5231 module subroutine eigen_symm(vecs, a, vals, work, olwork, err)
+
5232 logical, intent(in) :: vecs
+
5233 real(real64), intent(inout), dimension(:,:) :: a
+
5234 real(real64), intent(out), dimension(:) :: vals
+
5235 real(real64), intent(out), pointer, optional, dimension(:) :: work
+
5236 integer(int32), intent(out), optional :: olwork
+
5237 class(errors), intent(inout), optional, target :: err
+
5238 end subroutine
+
5239
+
5240 module subroutine eigen_asymm(a, vals, vecs, work, olwork, err)
+
5241 real(real64), intent(inout), dimension(:,:) :: a
+
5242 complex(real64), intent(out), dimension(:) :: vals
+
5243 complex(real64), intent(out), optional, dimension(:,:) :: vecs
+
5244 real(real64), intent(out), pointer, optional, dimension(:) :: work
+
5245 integer(int32), intent(out), optional :: olwork
+
5246 class(errors), intent(inout), optional, target :: err
+
5247 end subroutine
+
5248
+
5249 module subroutine eigen_gen(a, b, alpha, beta, vecs, work, olwork, err)
+
5250 real(real64), intent(inout), dimension(:,:) :: a, b
+
5251 complex(real64), intent(out), dimension(:) :: alpha
+
5252 real(real64), intent(out), optional, dimension(:) :: beta
+
5253 complex(real64), intent(out), optional, dimension(:,:) :: vecs
+
5254 real(real64), intent(out), optional, pointer, dimension(:) :: work
+
5255 integer(int32), intent(out), optional :: olwork
+
5256 class(errors), intent(inout), optional, target :: err
+
5257 end subroutine
+
5258
+
5259 module subroutine eigen_cmplx(a, vals, vecs, work, olwork, rwork, err)
+
5260 complex(real64), intent(inout), dimension(:,:) :: a
+
5261 complex(real64), intent(out), dimension(:) :: vals
+
5262 complex(real64), intent(out), optional, dimension(:,:) :: vecs
+
5263 complex(real64), intent(out), target, optional, dimension(:) :: work
+
5264 real(real64), intent(out), target, optional, dimension(:) :: rwork
+
5265 integer(int32), intent(out), optional :: olwork
+
5266 class(errors), intent(inout), optional, target :: err
+
5267 end subroutine
+
5268end interface
+
5269
+
5270! ******************************************************************************
+
5271! LINALG_SORTING.F90
+
5272! ------------------------------------------------------------------------------
+
5273interface
+
5274 module subroutine sort_dbl_array(x, ascend)
+
5275 real(real64), intent(inout), dimension(:) :: x
+
5276 logical, intent(in), optional :: ascend
+
5277 end subroutine
+
5278
+
5279 module subroutine sort_dbl_array_ind(x, ind, ascend, err)
+
5280 real(real64), intent(inout), dimension(:) :: x
+
5281 integer(int32), intent(inout), dimension(:) :: ind
+
5282 logical, intent(in), optional :: ascend
+
5283 class(errors), intent(inout), optional, target :: err
+
5284 end subroutine
+
5285
+
5286 module subroutine sort_cmplx_array(x, ascend)
+
5287 complex(real64), intent(inout), dimension(:) :: x
+
5288 logical, intent(in), optional :: ascend
+
5289 end subroutine
+
5290
+
5291 module subroutine sort_cmplx_array_ind(x, ind, ascend, err)
+
5292 complex(real64), intent(inout), dimension(:) :: x
+
5293 integer(int32), intent(inout), dimension(:) :: ind
+
5294 logical, intent(in), optional :: ascend
+
5295 class(errors), intent(inout), optional, target :: err
+
5296 end subroutine
+
5297
+
5298 module subroutine sort_eigen_cmplx(vals, vecs, ascend, err)
+
5299 complex(real64), intent(inout), dimension(:) :: vals
+
5300 complex(real64), intent(inout), dimension(:,:) :: vecs
+
5301 logical, intent(in), optional :: ascend
+
5302 class(errors), intent(inout), optional, target :: err
+
5303 end subroutine
+
5304
+
5305 module subroutine sort_eigen_dbl(vals, vecs, ascend, err)
+
5306 real(real64), intent(inout), dimension(:) :: vals
+
5307 real(real64), intent(inout), dimension(:,:) :: vecs
+
5308 logical, intent(in), optional :: ascend
+
5309 class(errors), intent(inout), optional, target :: err
+
5310 end subroutine
5311
-
5312! ******************************************************************************
-
5313! LINALG_SPARSE.F90
-
5314! ------------------------------------------------------------------------------
-
-
5325 interface nonzero_count
-
5326 module procedure :: nonzero_count_csr
-
5327 module procedure :: nonzero_count_msr
+
5312 module subroutine sort_int32_array(x, ascend)
+
5313 integer(int32), intent(inout), dimension(:) :: x
+
5314 logical, intent(in), optional :: ascend
+
5315 end subroutine
+
5316
+
5317 module subroutine sort_int32_array_ind(x, ind, ascend, err)
+
5318 integer(int32), intent(inout), dimension(:) :: x
+
5319 integer(int32), intent(inout), dimension(:) :: ind
+
5320 logical, intent(in), optional :: ascend
+
5321 class(errors), intent(inout), optional, target :: err
+
5322 end subroutine
+
5323end interface
+
5324
+
5325! ******************************************************************************
+
5326! LINALG_SPARSE.F90
+
5327! ------------------------------------------------------------------------------
+
+
5338 interface nonzero_count
+
5339 module procedure :: nonzero_count_csr
+
5340 module procedure :: nonzero_count_msr
-
5328 end interface
-
5329
-
-
5343 interface size
-
5344 module procedure :: csr_size
-
5345 module procedure :: msr_size
+
5341 end interface
+
5342
+
+
5356 interface size
+
5357 module procedure :: csr_size
+
5358 module procedure :: msr_size
-
5346 end interface
-
5347
-
-
5369 interface matmul
-
5370 module procedure :: csr_mtx_mtx_mult
-
5371 module procedure :: csr_mtx_vec_mult
+
5359 end interface
+
5360
+
+
5382 interface matmul
+
5383 module procedure :: csr_mtx_mtx_mult
+
5384 module procedure :: csr_mtx_vec_mult
-
5372 end interface
-
5373
-
-
5385 interface operator(+)
-
5386 module procedure :: csr_mtx_add
+
5385 end interface
+
5386
+
+
5398 interface operator(+)
+
5399 module procedure :: csr_mtx_add
-
5387 end interface
-
5388
-
-
5400 interface operator(-)
-
5401 module procedure :: csr_mtx_sub
+
5400 end interface
+
5401
+
+
5413 interface operator(-)
+
5414 module procedure :: csr_mtx_sub
-
5402 end interface
-
5403
-
-
5416 interface operator(*)
-
5417 module procedure :: csr_mtx_mult_scalar_1
-
5418 module procedure :: csr_mtx_mult_scalar_2
+
5415 end interface
+
5416
+
+
5429 interface operator(*)
+
5430 module procedure :: csr_mtx_mult_scalar_1
+
5431 module procedure :: csr_mtx_mult_scalar_2
-
5419 end interface
-
5420
-
-
5432 interface operator(/)
-
5433 module procedure :: csr_mtx_divide_scalar_1
-
-
5434 end interface
-
5435
-
5437 interface assignment(=)
-
5438 module procedure :: csr_assign_to_dense
-
5439 module procedure :: dense_assign_to_csr
-
5440 module procedure :: msr_assign_to_dense
-
5441 module procedure :: dense_assign_to_msr
-
5442 module procedure :: csr_assign_to_msr
-
5443 module procedure :: msr_assign_to_csr
-
5444 end interface
-
5445
-
-
5455 interface transpose
-
5456 module procedure :: csr_transpose
+
5432 end interface
+
5433
+
+
5445 interface operator(/)
+
5446 module procedure :: csr_mtx_divide_scalar_1
+
5447 end interface
+
5448
+
5450 interface assignment(=)
+
5451 module procedure :: csr_assign_to_dense
+
5452 module procedure :: dense_assign_to_csr
+
5453 module procedure :: msr_assign_to_dense
+
5454 module procedure :: dense_assign_to_msr
+
5455 module procedure :: csr_assign_to_msr
+
5456 module procedure :: msr_assign_to_csr
5457 end interface
5458
-
-
5483 interface sparse_direct_solve
-
5484 module procedure :: csr_solve_sparse_direct
+
+
5468 interface transpose
+
5469 module procedure :: csr_transpose
+
+
5470 end interface
+
5471
+
+
5496 interface sparse_direct_solve
+
5497 module procedure :: csr_solve_sparse_direct
-
5485 end interface
-
5486
-
-
5533 interface pgmres_solver
-
5534 module procedure :: csr_pgmres_solver
+
5498 end interface
+
5499
+
+
5546 interface pgmres_solver
+
5547 module procedure :: csr_pgmres_solver
-
5535 end interface
-
5536
-
5537 interface
-
5538 module function csr_get_element(this, i, j) result(rst)
-
5539 class(csr_matrix), intent(in) :: this
-
5540 integer(int32), intent(in) :: i, j
-
5541 real(real64) :: rst
-
5542 end function
-
5543 pure module function csr_size(x, dim) result(rst)
-
5544 class(csr_matrix), intent(in) :: x
-
5545 integer(int32), intent(in) :: dim
-
5546 integer(int32) :: rst
-
5547 end function
-
5548
-
5549 module function create_empty_csr_matrix(m, n, nnz, err) result(rst)
-
5550 integer(int32), intent(in) :: m, n, nnz
-
5551 class(errors), intent(inout), optional, target :: err
-
5552 type(csr_matrix) :: rst
-
5553 end function
-
5554
-
5555 pure module function nonzero_count_csr(x) result(rst)
-
5556 class(csr_matrix), intent(in) :: x
-
5557 integer(int32) :: rst
-
5558 end function
-
5559
-
5560 module function dense_to_csr(a, err) result(rst)
-
5561 real(real64), intent(in), dimension(:,:) :: a
-
5562 class(errors), intent(inout), optional, target :: err
-
5563 type(csr_matrix) :: rst
-
5564 end function
-
5565
-
5566 module subroutine csr_to_dense(a, x, err)
-
5567 class(csr_matrix), intent(in) :: a
-
5568 real(real64), intent(out), dimension(:,:) :: x
-
5569 class(errors), intent(inout), optional, target :: err
-
5570 end subroutine
-
5571
-
5572 module function csr_mtx_mtx_mult(a, b) result(rst)
-
5573 class(csr_matrix), intent(in) :: a, b
-
5574 type(csr_matrix) :: rst
-
5575 end function
-
5576
-
5577 module function csr_mtx_vec_mult(a, b) result(rst)
-
5578 class(csr_matrix), intent(in) :: a
-
5579 real(real64), intent(in), dimension(:) :: b
-
5580 real(real64), allocatable, dimension(:) :: rst
-
5581 end function
-
5582
-
5583 module function csr_mtx_add(a, b) result(rst)
-
5584 class(csr_matrix), intent(in) :: a, b
-
5585 type(csr_matrix) :: rst
-
5586 end function
-
5587
-
5588 module function csr_mtx_sub(a, b) result(rst)
-
5589 class(csr_matrix), intent(in) :: a, b
-
5590 type(csr_matrix) :: rst
-
5591 end function
-
5592
-
5593 module function csr_mtx_mult_scalar_1(a, b) result(rst)
-
5594 class(csr_matrix), intent(in) :: a
-
5595 real(real64), intent(in) :: b
-
5596 type(csr_matrix) :: rst
-
5597 end function
-
5598
-
5599 module function csr_mtx_mult_scalar_2(a, b) result(rst)
-
5600 real(real64), intent(in) :: a
-
5601 class(csr_matrix), intent(in) :: b
-
5602 type(csr_matrix) :: rst
-
5603 end function
-
5604
-
5605 module function csr_mtx_divide_scalar_1(a, b) result(rst)
-
5606 class(csr_matrix), intent(in) :: a
-
5607 real(real64), intent(in) :: b
-
5608 type(csr_matrix) :: rst
-
5609 end function
-
5610
-
5611 module function csr_transpose(a) result(rst)
-
5612 class(csr_matrix), intent(in) :: a
-
5613 type(csr_matrix) :: rst
-
5614 end function
-
5615
-
5616 module subroutine extract_diagonal_csr(a, diag, err)
-
5617 class(csr_matrix), intent(in) :: a
-
5618 real(real64), intent(out), dimension(:) :: diag
-
5619 class(errors), intent(inout), optional, target :: err
-
5620 end subroutine
-
5621
-
5622 module subroutine csr_solve_sparse_direct(a, b, x, droptol, err)
-
5623 class(csr_matrix), intent(in) :: a
-
5624 real(real64), intent(in), dimension(:) :: b
-
5625 real(real64), intent(out), dimension(:) :: x
-
5626 real(real64), intent(in), optional :: droptol
-
5627 class(errors), intent(inout), optional, target :: err
-
5628 end subroutine
-
5629
-
5630 module function diag_to_csr(a, err) result(rst)
-
5631 real(real64), intent(in), dimension(:) :: a
+
5548 end interface
+
5549
+
5550 interface
+
5551 module function csr_get_element(this, i, j) result(rst)
+
5552 class(csr_matrix), intent(in) :: this
+
5553 integer(int32), intent(in) :: i, j
+
5554 real(real64) :: rst
+
5555 end function
+
5556 pure module function csr_size(x, dim) result(rst)
+
5557 class(csr_matrix), intent(in) :: x
+
5558 integer(int32), intent(in) :: dim
+
5559 integer(int32) :: rst
+
5560 end function
+
5561
+
5562 module function create_empty_csr_matrix(m, n, nnz, err) result(rst)
+
5563 integer(int32), intent(in) :: m, n, nnz
+
5564 class(errors), intent(inout), optional, target :: err
+
5565 type(csr_matrix) :: rst
+
5566 end function
+
5567
+
5568 pure module function nonzero_count_csr(x) result(rst)
+
5569 class(csr_matrix), intent(in) :: x
+
5570 integer(int32) :: rst
+
5571 end function
+
5572
+
5573 module function dense_to_csr(a, err) result(rst)
+
5574 real(real64), intent(in), dimension(:,:) :: a
+
5575 class(errors), intent(inout), optional, target :: err
+
5576 type(csr_matrix) :: rst
+
5577 end function
+
5578
+
5579 module subroutine csr_to_dense(a, x, err)
+
5580 class(csr_matrix), intent(in) :: a
+
5581 real(real64), intent(out), dimension(:,:) :: x
+
5582 class(errors), intent(inout), optional, target :: err
+
5583 end subroutine
+
5584
+
5585 module function csr_mtx_mtx_mult(a, b) result(rst)
+
5586 class(csr_matrix), intent(in) :: a, b
+
5587 type(csr_matrix) :: rst
+
5588 end function
+
5589
+
5590 module function csr_mtx_vec_mult(a, b) result(rst)
+
5591 class(csr_matrix), intent(in) :: a
+
5592 real(real64), intent(in), dimension(:) :: b
+
5593 real(real64), allocatable, dimension(:) :: rst
+
5594 end function
+
5595
+
5596 module function csr_mtx_add(a, b) result(rst)
+
5597 class(csr_matrix), intent(in) :: a, b
+
5598 type(csr_matrix) :: rst
+
5599 end function
+
5600
+
5601 module function csr_mtx_sub(a, b) result(rst)
+
5602 class(csr_matrix), intent(in) :: a, b
+
5603 type(csr_matrix) :: rst
+
5604 end function
+
5605
+
5606 module function csr_mtx_mult_scalar_1(a, b) result(rst)
+
5607 class(csr_matrix), intent(in) :: a
+
5608 real(real64), intent(in) :: b
+
5609 type(csr_matrix) :: rst
+
5610 end function
+
5611
+
5612 module function csr_mtx_mult_scalar_2(a, b) result(rst)
+
5613 real(real64), intent(in) :: a
+
5614 class(csr_matrix), intent(in) :: b
+
5615 type(csr_matrix) :: rst
+
5616 end function
+
5617
+
5618 module function csr_mtx_divide_scalar_1(a, b) result(rst)
+
5619 class(csr_matrix), intent(in) :: a
+
5620 real(real64), intent(in) :: b
+
5621 type(csr_matrix) :: rst
+
5622 end function
+
5623
+
5624 module function csr_transpose(a) result(rst)
+
5625 class(csr_matrix), intent(in) :: a
+
5626 type(csr_matrix) :: rst
+
5627 end function
+
5628
+
5629 module subroutine extract_diagonal_csr(a, diag, err)
+
5630 class(csr_matrix), intent(in) :: a
+
5631 real(real64), intent(out), dimension(:) :: diag
5632 class(errors), intent(inout), optional, target :: err
-
5633 type(csr_matrix) :: rst
-
5634 end function
-
5635
-
5636 module function banded_to_csr(m, ml, mu, a, err) result(rst)
-
5637 integer(int32), intent(in) :: m, ml, mu
-
5638 real(real64), intent(in), dimension(:,:) :: a
-
5639 class(errors), intent(inout), optional, target :: err
-
5640 type(csr_matrix) :: rst
-
5641 end function
+
5633 end subroutine
+
5634
+
5635 module subroutine csr_solve_sparse_direct(a, b, x, droptol, err)
+
5636 class(csr_matrix), intent(in) :: a
+
5637 real(real64), intent(in), dimension(:) :: b
+
5638 real(real64), intent(out), dimension(:) :: x
+
5639 real(real64), intent(in), optional :: droptol
+
5640 class(errors), intent(inout), optional, target :: err
+
5641 end subroutine
5642
-
5643 module subroutine csr_assign_to_dense(dense, sparse)
-
5644 real(real64), intent(out), dimension(:,:) :: dense
-
5645 class(csr_matrix), intent(in) :: sparse
-
5646 end subroutine
-
5647
-
5648 module subroutine dense_assign_to_csr(sparse, dense)
-
5649 type(csr_matrix), intent(out) :: sparse
-
5650 real(real64), intent(in), dimension(:,:) :: dense
-
5651 end subroutine
-
5652
-
5653 pure module function msr_size(x, dim) result(rst)
-
5654 class(msr_matrix), intent(in) :: x
-
5655 integer(int32), intent(in) :: dim
-
5656 integer(int32) :: rst
-
5657 end function
-
5658
-
5659 pure module function nonzero_count_msr(x) result(rst)
-
5660 class(msr_matrix), intent(in) :: x
-
5661 integer(int32) :: rst
-
5662 end function
-
5663
-
5664 module function create_empty_msr_matrix(m, n, nnz, err) result(rst)
-
5665 integer(int32), intent(in) :: m, n, nnz
-
5666 class(errors), intent(inout), optional, target :: err
-
5667 type(msr_matrix) :: rst
-
5668 end function
-
5669
-
5670 module function csr_to_msr(a, err) result(rst)
-
5671 class(csr_matrix), intent(in) :: a
-
5672 class(errors), intent(inout), optional, target :: err
-
5673 type(msr_matrix) :: rst
-
5674 end function
-
5675
-
5676 module function msr_to_csr(a, err) result(rst)
-
5677 class(msr_matrix), intent(in) :: a
-
5678 class(errors), intent(inout), optional, target :: err
-
5679 type(csr_matrix) :: rst
-
5680 end function
-
5681
-
5682 module function dense_to_msr(a, err) result(rst)
-
5683 real(real64), intent(in), dimension(:,:) :: a
-
5684 class(errors), intent(inout), optional, target :: err
-
5685 type(msr_matrix) :: rst
-
5686 end function
-
5687
-
5688 module subroutine msr_to_dense(a, x, err)
-
5689 ! Arguments
+
5643 module function diag_to_csr(a, err) result(rst)
+
5644 real(real64), intent(in), dimension(:) :: a
+
5645 class(errors), intent(inout), optional, target :: err
+
5646 type(csr_matrix) :: rst
+
5647 end function
+
5648
+
5649 module function banded_to_csr(m, ml, mu, a, err) result(rst)
+
5650 integer(int32), intent(in) :: m, ml, mu
+
5651 real(real64), intent(in), dimension(:,:) :: a
+
5652 class(errors), intent(inout), optional, target :: err
+
5653 type(csr_matrix) :: rst
+
5654 end function
+
5655
+
5656 module subroutine csr_assign_to_dense(dense, sparse)
+
5657 real(real64), intent(out), dimension(:,:) :: dense
+
5658 class(csr_matrix), intent(in) :: sparse
+
5659 end subroutine
+
5660
+
5661 module subroutine dense_assign_to_csr(sparse, dense)
+
5662 type(csr_matrix), intent(out) :: sparse
+
5663 real(real64), intent(in), dimension(:,:) :: dense
+
5664 end subroutine
+
5665
+
5666 pure module function msr_size(x, dim) result(rst)
+
5667 class(msr_matrix), intent(in) :: x
+
5668 integer(int32), intent(in) :: dim
+
5669 integer(int32) :: rst
+
5670 end function
+
5671
+
5672 pure module function nonzero_count_msr(x) result(rst)
+
5673 class(msr_matrix), intent(in) :: x
+
5674 integer(int32) :: rst
+
5675 end function
+
5676
+
5677 module function create_empty_msr_matrix(m, n, nnz, err) result(rst)
+
5678 integer(int32), intent(in) :: m, n, nnz
+
5679 class(errors), intent(inout), optional, target :: err
+
5680 type(msr_matrix) :: rst
+
5681 end function
+
5682
+
5683 module function csr_to_msr(a, err) result(rst)
+
5684 class(csr_matrix), intent(in) :: a
+
5685 class(errors), intent(inout), optional, target :: err
+
5686 type(msr_matrix) :: rst
+
5687 end function
+
5688
+
5689 module function msr_to_csr(a, err) result(rst)
5690 class(msr_matrix), intent(in) :: a
-
5691 real(real64), intent(out), dimension(:,:) :: x
-
5692 class(errors), intent(inout), optional, target :: err
-
5693 end subroutine
+
5691 class(errors), intent(inout), optional, target :: err
+
5692 type(csr_matrix) :: rst
+
5693 end function
5694
-
5695 module subroutine msr_assign_to_dense(dense, msr)
-
5696 real(real64), intent(out), dimension(:,:) :: dense
-
5697 class(msr_matrix), intent(in) :: msr
-
5698 end subroutine
-
5699
-
5700 module subroutine dense_assign_to_msr(msr, dense)
-
5701 type(msr_matrix), intent(out) :: msr
-
5702 real(real64), intent(in), dimension(:,:) :: dense
-
5703 end subroutine
-
5704
-
5705 module subroutine csr_assign_to_msr(msr, csr)
-
5706 type(msr_matrix), intent(out) :: msr
-
5707 class(csr_matrix), intent(in) :: csr
-
5708 end subroutine
-
5709
-
5710 module subroutine msr_assign_to_csr(csr, msr)
-
5711 type(csr_matrix), intent(out) :: csr
-
5712 class(msr_matrix), intent(in) :: msr
-
5713 end subroutine
-
5714
-
5715 module subroutine csr_lu_factor(a, lu, ju, droptol, err)
-
5716 class(csr_matrix), intent(in) :: a
-
5717 type(msr_matrix), intent(out) :: lu
-
5718 integer(int32), intent(out), dimension(:) :: ju
-
5719 real(real64), intent(in), optional :: droptol
-
5720 class(errors), intent(inout), optional, target :: err
+
5695 module function dense_to_msr(a, err) result(rst)
+
5696 real(real64), intent(in), dimension(:,:) :: a
+
5697 class(errors), intent(inout), optional, target :: err
+
5698 type(msr_matrix) :: rst
+
5699 end function
+
5700
+
5701 module subroutine msr_to_dense(a, x, err)
+
5702 ! Arguments
+
5703 class(msr_matrix), intent(in) :: a
+
5704 real(real64), intent(out), dimension(:,:) :: x
+
5705 class(errors), intent(inout), optional, target :: err
+
5706 end subroutine
+
5707
+
5708 module subroutine msr_assign_to_dense(dense, msr)
+
5709 real(real64), intent(out), dimension(:,:) :: dense
+
5710 class(msr_matrix), intent(in) :: msr
+
5711 end subroutine
+
5712
+
5713 module subroutine dense_assign_to_msr(msr, dense)
+
5714 type(msr_matrix), intent(out) :: msr
+
5715 real(real64), intent(in), dimension(:,:) :: dense
+
5716 end subroutine
+
5717
+
5718 module subroutine csr_assign_to_msr(msr, csr)
+
5719 type(msr_matrix), intent(out) :: msr
+
5720 class(csr_matrix), intent(in) :: csr
5721 end subroutine
5722
-
5723 module subroutine csr_lu_solve(lu, ju, b, x, err)
-
5724 class(msr_matrix), intent(in) :: lu
-
5725 integer(int32), intent(in), dimension(:) :: ju
-
5726 real(real64), intent(in), dimension(:) :: b
-
5727 real(real64), intent(out), dimension(:) :: x
-
5728 class(errors), intent(inout), optional, target :: err
-
5729 end subroutine
-
5730
-
5731 module subroutine csr_pgmres_solver(a, lu, ju, b, x, im, tol, maxits, &
-
5732 iout, err)
-
5733 class(csr_matrix), intent(in) :: a
-
5734 class(msr_matrix), intent(in) :: lu
-
5735 integer(int32), intent(in), dimension(:) :: ju
-
5736 real(real64), intent(inout), dimension(:) :: b
-
5737 real(real64), intent(out), dimension(:) :: x
-
5738 integer(int32), intent(in), optional :: im, maxits, iout
-
5739 real(real64), intent(in), optional :: tol
-
5740 class(errors), intent(inout), optional, target :: err
-
5741 end subroutine
-
5742
-
5743 module function create_csr_matrix(m, n, rows, cols, vals, err) &
-
5744 result(rst)
-
5745 integer(int32), intent(in) :: m, n
-
5746 integer(int32), intent(in), dimension(:) :: rows, cols
-
5747 real(real64), intent(in), dimension(:) :: vals
-
5748 class(errors), intent(inout), optional, target :: err
-
5749 type(csr_matrix) :: rst
-
5750 end function
-
5751 end interface
-
5752
-
5753! ------------------------------------------------------------------------------
-
5754end module
-
Multiplies a banded matrix, A, with a diagonal matrix, B, such that A = alpha * A * B,...
Definition linalg.f90:4133
-
Multiplies a banded matrix, A, by a vector x such that alpha * op(A) * x + beta * y = y.
Definition linalg.f90:4028
-
Converts a banded matrix stored in dense form to a full matrix.
Definition linalg.f90:4070
-
Converts a banded matrix to a dense matrix.
Definition linalg.f90:4161
+
5723 module subroutine msr_assign_to_csr(csr, msr)
+
5724 type(csr_matrix), intent(out) :: csr
+
5725 class(msr_matrix), intent(in) :: msr
+
5726 end subroutine
+
5727
+
5728 module subroutine csr_lu_factor(a, lu, ju, droptol, err)
+
5729 class(csr_matrix), intent(in) :: a
+
5730 type(msr_matrix), intent(out) :: lu
+
5731 integer(int32), intent(out), dimension(:) :: ju
+
5732 real(real64), intent(in), optional :: droptol
+
5733 class(errors), intent(inout), optional, target :: err
+
5734 end subroutine
+
5735
+
5736 module subroutine csr_lu_solve(lu, ju, b, x, err)
+
5737 class(msr_matrix), intent(in) :: lu
+
5738 integer(int32), intent(in), dimension(:) :: ju
+
5739 real(real64), intent(in), dimension(:) :: b
+
5740 real(real64), intent(out), dimension(:) :: x
+
5741 class(errors), intent(inout), optional, target :: err
+
5742 end subroutine
+
5743
+
5744 module subroutine csr_pgmres_solver(a, lu, ju, b, x, im, tol, maxits, &
+
5745 iout, err)
+
5746 class(csr_matrix), intent(in) :: a
+
5747 class(msr_matrix), intent(in) :: lu
+
5748 integer(int32), intent(in), dimension(:) :: ju
+
5749 real(real64), intent(inout), dimension(:) :: b
+
5750 real(real64), intent(out), dimension(:) :: x
+
5751 integer(int32), intent(in), optional :: im, maxits, iout
+
5752 real(real64), intent(in), optional :: tol
+
5753 class(errors), intent(inout), optional, target :: err
+
5754 end subroutine
+
5755
+
5756 module function create_csr_matrix(m, n, rows, cols, vals, err) &
+
5757 result(rst)
+
5758 integer(int32), intent(in) :: m, n
+
5759 integer(int32), intent(in), dimension(:) :: rows, cols
+
5760 real(real64), intent(in), dimension(:) :: vals
+
5761 class(errors), intent(inout), optional, target :: err
+
5762 type(csr_matrix) :: rst
+
5763 end function
+
5764 end interface
+
5765
+
5766! ------------------------------------------------------------------------------
+
5767end module
+
Multiplies a banded matrix, A, with a diagonal matrix, B, such that A = alpha * A * B,...
Definition linalg.f90:4135
+
Multiplies a banded matrix, A, by a vector x such that alpha * op(A) * x + beta * y = y.
Definition linalg.f90:4030
+
Converts a banded matrix stored in dense form to a full matrix.
Definition linalg.f90:4072
+
Converts a banded matrix to a dense matrix.
Definition linalg.f90:4163
Computes the Cholesky factorization of a symmetric, positive definite matrix.
Definition linalg.f90:1687
Computes the rank 1 downdate to a Cholesky factored matrix (upper triangular).
Definition linalg.f90:1893
Computes the rank 1 update to a Cholesky factored matrix (upper triangular).
Definition linalg.f90:1786
-
Converts a dense matrix to a banded matrix.
Definition linalg.f90:4186
+
Converts a dense matrix to a banded matrix.
Definition linalg.f90:4188
Computes the determinant of a square matrix.
Definition linalg.f90:659
Multiplies a diagonal matrix with another matrix or array.
Definition linalg.f90:553
Computes the eigenvalues, and optionally the eigenvectors, of a matrix.
Definition linalg.f90:3371
-
Extracts the diagonal of a matrix.
Definition linalg.f90:4208
-
Forms the orthogonal matrix Q from the elementary reflectors returned by the LQ factorization algorit...
Definition linalg.f90:3682
+
Extracts the diagonal of a matrix.
Definition linalg.f90:4210
+
Forms the orthogonal matrix Q from the elementary reflectors returned by the LQ factorization algorit...
Definition linalg.f90:3684
Extracts the L and U matrices from the condensed [L\U] storage format used by the lu_factor.
Definition linalg.f90:967
Forms the full M-by-M orthogonal matrix Q from the elementary reflectors returned by the base QR fact...
Definition linalg.f90:1281
-
Computes the LQ factorization of an M-by-N matrix.
Definition linalg.f90:3568
+
Computes the LQ factorization of an M-by-N matrix.
Definition linalg.f90:3570
Computes the LU factorization of an M-by-N matrix.
Definition linalg.f90:844
-
Performs sparse matrix multiplication C = A * B.
Definition linalg.f90:5369
+
Performs sparse matrix multiplication C = A * B.
Definition linalg.f90:5382
Computes the inverse of a square matrix.
Definition linalg.f90:3051
Performs the matrix operation: .
Definition linalg.f90:361
Computes the Moore-Penrose pseudo-inverse of a M-by-N matrix using the singular value decomposition o...
Definition linalg.f90:3157
Computes the rank of a matrix.
Definition linalg.f90:626
-
Multiplies a general matrix by the orthogonal matrix Q from a LQ factorization.
Definition linalg.f90:3831
+
Multiplies a general matrix by the orthogonal matrix Q from a LQ factorization.
Definition linalg.f90:3833
Multiplies a general matrix by the orthogonal matrix Q from a QR factorization.
Definition linalg.f90:1438
Multiplies a general matrix by the orthogonal matrix Z from an RZ factorization.
Definition linalg.f90:2057
-
Determines the number of nonzero entries in a sparse matrix.
Definition linalg.f90:5325
-
A preconditioned GMRES solver.
Definition linalg.f90:5533
+
Determines the number of nonzero entries in a sparse matrix.
Definition linalg.f90:5338
+
A preconditioned GMRES solver.
Definition linalg.f90:5546
Computes the QR factorization of an M-by-N matrix.
Definition linalg.f90:1121
Computes the rank 1 update to an M-by-N QR factored matrix A (M >= N) where , and such that ....
Definition linalg.f90:1588
Performs the rank-1 update to matrix A such that: , where is an M-by-N matrix, is a scalar,...
Definition linalg.f90:396
@@ -2042,16 +2055,16 @@
Solves the overdetermined or underdetermined system of M equations of N unknowns,...
Definition linalg.f90:2854
Solves the overdetermined or underdetermined system of M equations of N unknowns using a singular va...
Definition linalg.f90:2956
Solves the overdetermined or underdetermined system of M equations of N unknowns....
Definition linalg.f90:2753
-
Solves a system of M LQ-factored equations of N unknowns. N must be greater than or equal to M.
Definition linalg.f90:3926
+
Solves a system of M LQ-factored equations of N unknowns. N must be greater than or equal to M.
Definition linalg.f90:3928
Solves a system of LU-factored equations.
Definition linalg.f90:2421
Solves a system of M QR-factored equations of N unknowns.
Definition linalg.f90:2557
Solves a triangular system of equations.
Definition linalg.f90:2316
Sorts an array.
Definition linalg.f90:3454
-
Provides a direct solution to a square, sparse system.
Definition linalg.f90:5483
+
Provides a direct solution to a square, sparse system.
Definition linalg.f90:5496
Computes the singular value decomposition of a matrix A. The SVD is defined as: , where is an M-by-M...
Definition linalg.f90:2182
Swaps the contents of two arrays.
Definition linalg.f90:681
Computes the trace of a matrix (the sum of the main diagonal elements).
Definition linalg.f90:578
-
Provides the transpose of a sparse matrix.
Definition linalg.f90:5455
+
Provides the transpose of a sparse matrix.
Definition linalg.f90:5468
Computes the triangular matrix operation: , or , where A is a triangular matrix.
Definition linalg.f90:734
Provides a set of common linear algebra routines.
Definition linalg.f90:145
A sparse matrix stored in compressed sparse row (CSR) format.
Definition linalg.f90:233
diff --git a/docs/html/linalg_8h.html b/docs/html/linalg_8h.html index cfc62e0..f45570c 100644 --- a/docs/html/linalg_8h.html +++ b/docs/html/linalg_8h.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/linalg_8h_source.html b/docs/html/linalg_8h_source.html index 8509b3b..af0debb 100644 --- a/docs/html/linalg_8h_source.html +++ b/docs/html/linalg_8h_source.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/linalg__basic_8f90_source.html b/docs/html/linalg__basic_8f90_source.html index 2fb0713..6e3c648 100644 --- a/docs/html/linalg__basic_8f90_source.html +++ b/docs/html/linalg__basic_8f90_source.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/linalg__eigen_8f90_source.html b/docs/html/linalg__eigen_8f90_source.html index 4744cd3..7efca74 100644 --- a/docs/html/linalg__eigen_8f90_source.html +++ b/docs/html/linalg__eigen_8f90_source.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/linalg__factor_8f90_source.html b/docs/html/linalg__factor_8f90_source.html index caddaec..9976d87 100644 --- a/docs/html/linalg__factor_8f90_source.html +++ b/docs/html/linalg__factor_8f90_source.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/linalg__solve_8f90_source.html b/docs/html/linalg__solve_8f90_source.html index 7707664..990eb94 100644 --- a/docs/html/linalg__solve_8f90_source.html +++ b/docs/html/linalg__solve_8f90_source.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/linalg__sorting_8f90_source.html b/docs/html/linalg__sorting_8f90_source.html index 106f306..492cfc7 100644 --- a/docs/html/linalg__sorting_8f90_source.html +++ b/docs/html/linalg__sorting_8f90_source.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
@@ -380,294 +380,543 @@
275 ! Formatting
276100 format(a, i0, a, i0, a, i0, a, i0, a)
277 end subroutine
-
278
-
279! ******************************************************************************
-
280! PRIVATE HELPER ROUTINES
-
281! ------------------------------------------------------------------------------
-
295 recursive subroutine qsort_dbl_ind(ascend, x, ind)
-
296 ! Arguments
-
297 logical, intent(in) :: ascend
-
298 real(real64), intent(inout), dimension(:) :: x
-
299 integer(int32), intent(inout), dimension(:) :: ind
-
300
-
301 ! Local Variables
-
302 integer(int32) :: iq
-
303
-
304 ! Process
-
305 if (size(x) > 1) then
-
306 call dbl_partition_ind(ascend, x, ind, iq)
-
307 call qsort_dbl_ind(ascend, x(:iq-1), ind(:iq-1))
-
308 call qsort_dbl_ind(ascend, x(iq:), ind(iq:))
-
309 end if
-
310 end subroutine
-
311
-
312! ------------------------------------------------------------------------------
-
328 subroutine dbl_partition_ind(ascend, x, ind, marker)
-
329 ! Arguments
-
330 logical, intent(in) :: ascend
-
331 real(real64), intent(inout), dimension(:) :: x
-
332 integer(int32), intent(inout), dimension(:) :: ind
-
333 integer(int32), intent(out) :: marker
-
334
-
335 ! Local Variables
-
336 integer(int32) :: i, j, itemp
-
337 real(real64) :: temp, pivot
+
278
+
279! ------------------------------------------------------------------------------
+
280 module subroutine sort_int32_array(x, ascend)
+
281 ! Arguments
+
282 integer(int32), intent(inout), dimension(:) :: x
+
283 logical, intent(in), optional :: ascend
+
284
+
285 ! Local Variables
+
286 logical :: dir
+
287
+
288 ! Initialization
+
289 if (present(ascend)) then
+
290 dir = ascend
+
291 else
+
292 dir = .true.
+
293 end if
+
294
+
295 ! Process
+
296 call qsort_int32(dir, x)
+
297 end subroutine
+
298
+
299! ------------------------------------------------------------------------------
+
300 module subroutine sort_int32_array_ind(x, ind, ascend, err)
+
301 ! Arguments
+
302 integer(int32), intent(inout), dimension(:) :: x
+
303 integer(int32), intent(inout), dimension(:) :: ind
+
304 logical, intent(in), optional :: ascend
+
305 class(errors), intent(inout), optional, target :: err
+
306
+
307 ! Local Variables
+
308 class(errors), pointer :: errmgr
+
309 type(errors), target :: deferr
+
310 character(len = :), allocatable :: errmsg
+
311 integer(int32) :: n
+
312 logical :: dir
+
313
+
314 ! Initialization
+
315 n = size(x)
+
316 if (present(err)) then
+
317 errmgr => err
+
318 else
+
319 errmgr => deferr
+
320 end if
+
321 if (present(ascend)) then
+
322 dir = ascend
+
323 else
+
324 dir = .true. ! Ascend == true
+
325 end if
+
326
+
327 ! Input Check
+
328 if (size(ind) /= n) then
+
329 allocate(character(len = 256) :: errmsg)
+
330 write(errmsg, 100) &
+
331 "Expected the tracking array to be of size ", n, &
+
332 ", but found an array of size ", size(ind), "."
+
333 call errmgr%report_error("sort_int32_array_ind", trim(errmsg), &
+
334 la_array_size_error)
+
335 return
+
336 end if
+
337 if (n <= 1) return
338
339 ! Process
-
340 pivot = x(1)
-
341 i = 0
-
342 j = size(x) + 1
-
343 if (ascend) then
-
344 ! Ascending Sort
-
345 do
-
346 j = j - 1
-
347 do
-
348 if (x(j) <= pivot) exit
-
349 j = j - 1
-
350 end do
-
351 i = i + 1
-
352 do
-
353 if (x(i) >= pivot) exit
-
354 i = i + 1
-
355 end do
-
356 if (i < j) then
-
357 ! Exchage X(I) and X(J)
-
358 temp = x(i)
-
359 x(i) = x(j)
-
360 x(j) = temp
-
361
-
362 itemp = ind(i)
-
363 ind(i) = ind(j)
-
364 ind(j) = itemp
-
365 else if (i == j) then
-
366 marker = i + 1
-
367 return
-
368 else
-
369 marker = i
-
370 return
-
371 end if
-
372 end do
-
373 else
-
374 ! Descending Sort
-
375 do
-
376 j = j - 1
-
377 do
-
378 if (x(j) >= pivot) exit
-
379 j = j - 1
-
380 end do
-
381 i = i + 1
-
382 do
-
383 if (x(i) <= pivot) exit
-
384 i = i + 1
-
385 end do
-
386 if (i < j) then
-
387 ! Exchage X(I) and X(J)
-
388 temp = x(i)
-
389 x(i) = x(j)
-
390 x(j) = temp
-
391
-
392 itemp = ind(i)
-
393 ind(i) = ind(j)
-
394 ind(j) = itemp
-
395 else if (i == j) then
-
396 marker = i + 1
-
397 return
-
398 else
-
399 marker = i
-
400 return
-
401 end if
-
402 end do
-
403 end if
-
404 end subroutine
+
340 call qsort_int32_ind(dir, x, ind)
+
341
+
342 ! Formatting
+
343100 format(a, i0, a, i0, a)
+
344 end subroutine
+
345
+
346! ******************************************************************************
+
347! PRIVATE HELPER ROUTINES
+
348! ------------------------------------------------------------------------------
+
362 recursive subroutine qsort_dbl_ind(ascend, x, ind)
+
363 ! Arguments
+
364 logical, intent(in) :: ascend
+
365 real(real64), intent(inout), dimension(:) :: x
+
366 integer(int32), intent(inout), dimension(:) :: ind
+
367
+
368 ! Local Variables
+
369 integer(int32) :: iq
+
370
+
371 ! Process
+
372 if (size(x) > 1) then
+
373 call dbl_partition_ind(ascend, x, ind, iq)
+
374 call qsort_dbl_ind(ascend, x(:iq-1), ind(:iq-1))
+
375 call qsort_dbl_ind(ascend, x(iq:), ind(iq:))
+
376 end if
+
377 end subroutine
+
378
+
379! ------------------------------------------------------------------------------
+
395 subroutine dbl_partition_ind(ascend, x, ind, marker)
+
396 ! Arguments
+
397 logical, intent(in) :: ascend
+
398 real(real64), intent(inout), dimension(:) :: x
+
399 integer(int32), intent(inout), dimension(:) :: ind
+
400 integer(int32), intent(out) :: marker
+
401
+
402 ! Local Variables
+
403 integer(int32) :: i, j, itemp
+
404 real(real64) :: temp, pivot
405
-
406! ------------------------------------------------------------------------------
-
421 recursive subroutine qsort_cmplx(ascend, x)
-
422 ! Arguments
-
423 logical, intent(in) :: ascend
-
424 complex(real64), intent(inout), dimension(:) :: x
-
425
-
426 ! Local Variables
-
427 integer(int32) :: iq
+
406 ! Process
+
407 pivot = x(1)
+
408 i = 0
+
409 j = size(x) + 1
+
410 if (ascend) then
+
411 ! Ascending Sort
+
412 do
+
413 j = j - 1
+
414 do
+
415 if (x(j) <= pivot) exit
+
416 j = j - 1
+
417 end do
+
418 i = i + 1
+
419 do
+
420 if (x(i) >= pivot) exit
+
421 i = i + 1
+
422 end do
+
423 if (i < j) then
+
424 ! Exchage X(I) and X(J)
+
425 temp = x(i)
+
426 x(i) = x(j)
+
427 x(j) = temp
428
-
429 ! Process
-
430 if (size(x) > 1) then
-
431 call cmplx_partition(ascend, x, iq)
-
432 call qsort_cmplx(ascend, x(:iq-1))
-
433 call qsort_cmplx(ascend, x(iq:))
-
434 end if
-
435 end subroutine
-
436
-
437! ------------------------------------------------------------------------------
-
454 subroutine cmplx_partition(ascend, x, marker)
-
455 ! Arguments
-
456 logical, intent(in) :: ascend
-
457 complex(real64), intent(inout), dimension(:) :: x
-
458 integer(int32), intent(out) :: marker
-
459
-
460 ! Local Variables
-
461 integer(int32) :: i, j
-
462 complex(real64) :: temp
-
463 real(real64) :: pivot
-
464
-
465 ! Process
-
466 pivot = real(x(1), real64)
-
467 i = 0
-
468 j = size(x) + 1
-
469 if (ascend) then
-
470 ! Ascending Sort
-
471 do
-
472 j = j - 1
-
473 do
-
474 if (real(x(j), real64) <= pivot) exit
-
475 j = j - 1
-
476 end do
-
477 i = i + 1
-
478 do
-
479 if (real(x(i), real64) >= pivot) exit
-
480 i = i + 1
-
481 end do
-
482 if (i < j) then
-
483 ! Exchage X(I) and X(J)
-
484 temp = x(i)
-
485 x(i) = x(j)
-
486 x(j) = temp
-
487 else if (i == j) then
-
488 marker = i + 1
-
489 return
-
490 else
-
491 marker = i
-
492 return
-
493 end if
-
494 end do
-
495 else
-
496 ! Descending Sort
-
497 do
-
498 j = j - 1
-
499 do
-
500 if (real(x(j), real64) >= pivot) exit
-
501 j = j - 1
-
502 end do
-
503 i = i + 1
-
504 do
-
505 if (real(x(i), real64) <= pivot) exit
-
506 i = i + 1
-
507 end do
-
508 if (i < j) then
-
509 ! Exchage X(I) and X(J)
-
510 temp = x(i)
-
511 x(i) = x(j)
-
512 x(j) = temp
-
513 else if (i == j) then
-
514 marker = i + 1
-
515 return
-
516 else
-
517 marker = i
-
518 return
-
519 end if
-
520 end do
-
521 end if
-
522 end subroutine
-
523
-
524! ------------------------------------------------------------------------------
-
542 recursive subroutine qsort_cmplx_ind(ascend, x, ind)
-
543 ! Arguments
-
544 logical, intent(in) :: ascend
-
545 complex(real64), intent(inout), dimension(:) :: x
-
546 integer(int32), intent(inout), dimension(:) :: ind
-
547
-
548 ! Local Variables
-
549 integer(int32) :: iq
-
550
-
551 ! Process
-
552 if (size(x) > 1) then
-
553 call cmplx_partition_ind(ascend, x, ind, iq)
-
554 call qsort_cmplx_ind(ascend, x(:iq-1), ind(:iq-1))
-
555 call qsort_cmplx_ind(ascend, x(iq:), ind(iq:))
-
556 end if
-
557 end subroutine
-
558
-
559! ------------------------------------------------------------------------------
-
579 subroutine cmplx_partition_ind(ascend, x, ind, marker)
-
580 ! Arguments
-
581 logical, intent(in) :: ascend
-
582 complex(real64), intent(inout), dimension(:) :: x
-
583 integer(int32), intent(inout), dimension(:) :: ind
-
584 integer(int32), intent(out) :: marker
-
585
-
586 ! Local Variables
-
587 integer(int32) :: i, j, itemp
-
588 complex(real64) :: temp
-
589 real(real64) :: pivot
+
429 itemp = ind(i)
+
430 ind(i) = ind(j)
+
431 ind(j) = itemp
+
432 else if (i == j) then
+
433 marker = i + 1
+
434 return
+
435 else
+
436 marker = i
+
437 return
+
438 end if
+
439 end do
+
440 else
+
441 ! Descending Sort
+
442 do
+
443 j = j - 1
+
444 do
+
445 if (x(j) >= pivot) exit
+
446 j = j - 1
+
447 end do
+
448 i = i + 1
+
449 do
+
450 if (x(i) <= pivot) exit
+
451 i = i + 1
+
452 end do
+
453 if (i < j) then
+
454 ! Exchage X(I) and X(J)
+
455 temp = x(i)
+
456 x(i) = x(j)
+
457 x(j) = temp
+
458
+
459 itemp = ind(i)
+
460 ind(i) = ind(j)
+
461 ind(j) = itemp
+
462 else if (i == j) then
+
463 marker = i + 1
+
464 return
+
465 else
+
466 marker = i
+
467 return
+
468 end if
+
469 end do
+
470 end if
+
471 end subroutine
+
472
+
473! ------------------------------------------------------------------------------
+
488 recursive subroutine qsort_cmplx(ascend, x)
+
489 ! Arguments
+
490 logical, intent(in) :: ascend
+
491 complex(real64), intent(inout), dimension(:) :: x
+
492
+
493 ! Local Variables
+
494 integer(int32) :: iq
+
495
+
496 ! Process
+
497 if (size(x) > 1) then
+
498 call cmplx_partition(ascend, x, iq)
+
499 call qsort_cmplx(ascend, x(:iq-1))
+
500 call qsort_cmplx(ascend, x(iq:))
+
501 end if
+
502 end subroutine
+
503
+
504! ------------------------------------------------------------------------------
+
521 subroutine cmplx_partition(ascend, x, marker)
+
522 ! Arguments
+
523 logical, intent(in) :: ascend
+
524 complex(real64), intent(inout), dimension(:) :: x
+
525 integer(int32), intent(out) :: marker
+
526
+
527 ! Local Variables
+
528 integer(int32) :: i, j
+
529 complex(real64) :: temp
+
530 real(real64) :: pivot
+
531
+
532 ! Process
+
533 pivot = real(x(1), real64)
+
534 i = 0
+
535 j = size(x) + 1
+
536 if (ascend) then
+
537 ! Ascending Sort
+
538 do
+
539 j = j - 1
+
540 do
+
541 if (real(x(j), real64) <= pivot) exit
+
542 j = j - 1
+
543 end do
+
544 i = i + 1
+
545 do
+
546 if (real(x(i), real64) >= pivot) exit
+
547 i = i + 1
+
548 end do
+
549 if (i < j) then
+
550 ! Exchage X(I) and X(J)
+
551 temp = x(i)
+
552 x(i) = x(j)
+
553 x(j) = temp
+
554 else if (i == j) then
+
555 marker = i + 1
+
556 return
+
557 else
+
558 marker = i
+
559 return
+
560 end if
+
561 end do
+
562 else
+
563 ! Descending Sort
+
564 do
+
565 j = j - 1
+
566 do
+
567 if (real(x(j), real64) >= pivot) exit
+
568 j = j - 1
+
569 end do
+
570 i = i + 1
+
571 do
+
572 if (real(x(i), real64) <= pivot) exit
+
573 i = i + 1
+
574 end do
+
575 if (i < j) then
+
576 ! Exchage X(I) and X(J)
+
577 temp = x(i)
+
578 x(i) = x(j)
+
579 x(j) = temp
+
580 else if (i == j) then
+
581 marker = i + 1
+
582 return
+
583 else
+
584 marker = i
+
585 return
+
586 end if
+
587 end do
+
588 end if
+
589 end subroutine
590
-
591 ! Process
-
592 pivot = real(x(1), real64)
-
593 i = 0
-
594 j = size(x) + 1
-
595 if (ascend) then
-
596 ! Ascending Sort
-
597 do
-
598 j = j - 1
-
599 do
-
600 if (real(x(j), real64) <= pivot) exit
-
601 j = j - 1
-
602 end do
-
603 i = i + 1
-
604 do
-
605 if (real(x(i), real64) >= pivot) exit
-
606 i = i + 1
-
607 end do
-
608 if (i < j) then
-
609 ! Exchage X(I) and X(J)
-
610 temp = x(i)
-
611 x(i) = x(j)
-
612 x(j) = temp
-
613
-
614 itemp = ind(i)
-
615 ind(i) = ind(j)
-
616 ind(j) = itemp
-
617 else if (i == j) then
-
618 marker = i + 1
-
619 return
-
620 else
-
621 marker = i
-
622 return
-
623 end if
-
624 end do
-
625 else
-
626 ! Descending Sort
-
627 do
-
628 j = j - 1
-
629 do
-
630 if (real(x(j), real64) >= pivot) exit
-
631 j = j - 1
-
632 end do
-
633 i = i + 1
-
634 do
-
635 if (real(x(i), real64) <= pivot) exit
-
636 i = i + 1
-
637 end do
-
638 if (i < j) then
-
639 ! Exchage X(I) and X(J)
-
640 temp = x(i)
-
641 x(i) = x(j)
-
642 x(j) = temp
-
643
-
644 itemp = ind(i)
-
645 ind(i) = ind(j)
-
646 ind(j) = itemp
-
647 else if (i == j) then
-
648 marker = i + 1
-
649 return
-
650 else
-
651 marker = i
-
652 return
-
653 end if
-
654 end do
-
655 end if
-
656 end subroutine
+
591! ------------------------------------------------------------------------------
+
609 recursive subroutine qsort_cmplx_ind(ascend, x, ind)
+
610 ! Arguments
+
611 logical, intent(in) :: ascend
+
612 complex(real64), intent(inout), dimension(:) :: x
+
613 integer(int32), intent(inout), dimension(:) :: ind
+
614
+
615 ! Local Variables
+
616 integer(int32) :: iq
+
617
+
618 ! Process
+
619 if (size(x) > 1) then
+
620 call cmplx_partition_ind(ascend, x, ind, iq)
+
621 call qsort_cmplx_ind(ascend, x(:iq-1), ind(:iq-1))
+
622 call qsort_cmplx_ind(ascend, x(iq:), ind(iq:))
+
623 end if
+
624 end subroutine
+
625
+
626! ------------------------------------------------------------------------------
+
646 subroutine cmplx_partition_ind(ascend, x, ind, marker)
+
647 ! Arguments
+
648 logical, intent(in) :: ascend
+
649 complex(real64), intent(inout), dimension(:) :: x
+
650 integer(int32), intent(inout), dimension(:) :: ind
+
651 integer(int32), intent(out) :: marker
+
652
+
653 ! Local Variables
+
654 integer(int32) :: i, j, itemp
+
655 complex(real64) :: temp
+
656 real(real64) :: pivot
657
-
658! ------------------------------------------------------------------------------
-
659end submodule
+
658 ! Process
+
659 pivot = real(x(1), real64)
+
660 i = 0
+
661 j = size(x) + 1
+
662 if (ascend) then
+
663 ! Ascending Sort
+
664 do
+
665 j = j - 1
+
666 do
+
667 if (real(x(j), real64) <= pivot) exit
+
668 j = j - 1
+
669 end do
+
670 i = i + 1
+
671 do
+
672 if (real(x(i), real64) >= pivot) exit
+
673 i = i + 1
+
674 end do
+
675 if (i < j) then
+
676 ! Exchage X(I) and X(J)
+
677 temp = x(i)
+
678 x(i) = x(j)
+
679 x(j) = temp
+
680
+
681 itemp = ind(i)
+
682 ind(i) = ind(j)
+
683 ind(j) = itemp
+
684 else if (i == j) then
+
685 marker = i + 1
+
686 return
+
687 else
+
688 marker = i
+
689 return
+
690 end if
+
691 end do
+
692 else
+
693 ! Descending Sort
+
694 do
+
695 j = j - 1
+
696 do
+
697 if (real(x(j), real64) >= pivot) exit
+
698 j = j - 1
+
699 end do
+
700 i = i + 1
+
701 do
+
702 if (real(x(i), real64) <= pivot) exit
+
703 i = i + 1
+
704 end do
+
705 if (i < j) then
+
706 ! Exchage X(I) and X(J)
+
707 temp = x(i)
+
708 x(i) = x(j)
+
709 x(j) = temp
+
710
+
711 itemp = ind(i)
+
712 ind(i) = ind(j)
+
713 ind(j) = itemp
+
714 else if (i == j) then
+
715 marker = i + 1
+
716 return
+
717 else
+
718 marker = i
+
719 return
+
720 end if
+
721 end do
+
722 end if
+
723 end subroutine
+
724
+
725! ------------------------------------------------------------------------------
+
736 recursive subroutine qsort_int32(ascend, x)
+
737 ! Arguments
+
738 logical, intent(in) :: ascend
+
739 integer(int32), intent(inout), dimension(:) :: x
+
740
+
741 ! Local Variables
+
742 integer(int32) :: iq
+
743
+
744 ! Process
+
745 if (size(x) > 1) then
+
746 call int32_partition(ascend, x, iq)
+
747 call qsort_int32(ascend, x(:iq-1))
+
748 call qsort_int32(ascend, x(iq:))
+
749 end if
+
750 end subroutine
+
751
+
752! ------------------------------------------------------------------------------
+
765 subroutine int32_partition(ascend, x, marker)
+
766 ! Arguments
+
767 logical, intent(in) :: ascend
+
768 integer(int32), intent(inout), dimension(:) :: x
+
769 integer(int32), intent(out) :: marker
+
770
+
771 ! Local Variables
+
772 integer(int32) :: i, j, temp, pivot
+
773
+
774 ! Process
+
775 pivot = x(1)
+
776 i = 0
+
777 j = size(x) + 1
+
778 if (ascend) then
+
779 ! Ascending Sort
+
780 do
+
781 j = j - 1
+
782 do
+
783 if (x(j) <= pivot) exit
+
784 j = j - 1
+
785 end do
+
786 i = i + 1
+
787 do
+
788 if (x(i) >= pivot) exit
+
789 i = i + 1
+
790 end do
+
791 if (i < j) then
+
792 ! Exchage X(I) and X(J)
+
793 temp = x(i)
+
794 x(i) = x(j)
+
795 x(j) = temp
+
796 else if (i == j) then
+
797 marker = i + 1
+
798 return
+
799 else
+
800 marker = i
+
801 return
+
802 end if
+
803 end do
+
804 else
+
805 ! Descending Sort
+
806 do
+
807 j = j - 1
+
808 do
+
809 if (x(j) >= pivot) exit
+
810 j = j - 1
+
811 end do
+
812 i = i + 1
+
813 do
+
814 if (x(i) <= pivot) exit
+
815 i = i + 1
+
816 end do
+
817 if (i < j) then
+
818 ! Exchage X(I) and X(J)
+
819 temp = x(i)
+
820 x(i) = x(j)
+
821 x(j) = temp
+
822 else if (i == j) then
+
823 marker = i + 1
+
824 return
+
825 else
+
826 marker = i
+
827 return
+
828 end if
+
829 end do
+
830 end if
+
831 end subroutine
+
832
+
833! ------------------------------------------------------------------------------
+
847 recursive subroutine qsort_int32_ind(ascend, x, ind)
+
848 ! Arguments
+
849 logical, intent(in) :: ascend
+
850 integer(int32), intent(inout), dimension(:) :: x
+
851 integer(int32), intent(inout), dimension(:) :: ind
+
852
+
853 ! Local Variables
+
854 integer(int32) :: iq
+
855
+
856 ! Process
+
857 if (size(x) > 1) then
+
858 call int32_partition_ind(ascend, x, ind, iq)
+
859 call qsort_int32_ind(ascend, x(:iq-1), ind(:iq-1))
+
860 call qsort_int32_ind(ascend, x(iq:), ind(iq:))
+
861 end if
+
862 end subroutine
+
863
+
864! ------------------------------------------------------------------------------
+
880 subroutine int32_partition_ind(ascend, x, ind, marker)
+
881 ! Arguments
+
882 logical, intent(in) :: ascend
+
883 integer(int32), intent(inout), dimension(:) :: x
+
884 integer(int32), intent(inout), dimension(:) :: ind
+
885 integer(int32), intent(out) :: marker
+
886
+
887 ! Local Variables
+
888 integer(int32) :: i, j, itemp, temp, pivot
+
889
+
890 ! Process
+
891 pivot = x(1)
+
892 i = 0
+
893 j = size(x) + 1
+
894 if (ascend) then
+
895 ! Ascending Sort
+
896 do
+
897 j = j - 1
+
898 do
+
899 if (x(j) <= pivot) exit
+
900 j = j - 1
+
901 end do
+
902 i = i + 1
+
903 do
+
904 if (x(i) >= pivot) exit
+
905 i = i + 1
+
906 end do
+
907 if (i < j) then
+
908 ! Exchage X(I) and X(J)
+
909 temp = x(i)
+
910 x(i) = x(j)
+
911 x(j) = temp
+
912
+
913 itemp = ind(i)
+
914 ind(i) = ind(j)
+
915 ind(j) = itemp
+
916 else if (i == j) then
+
917 marker = i + 1
+
918 return
+
919 else
+
920 marker = i
+
921 return
+
922 end if
+
923 end do
+
924 else
+
925 ! Descending Sort
+
926 do
+
927 j = j - 1
+
928 do
+
929 if (x(j) >= pivot) exit
+
930 j = j - 1
+
931 end do
+
932 i = i + 1
+
933 do
+
934 if (x(i) <= pivot) exit
+
935 i = i + 1
+
936 end do
+
937 if (i < j) then
+
938 ! Exchage X(I) and X(J)
+
939 temp = x(i)
+
940 x(i) = x(j)
+
941 x(j) = temp
+
942
+
943 itemp = ind(i)
+
944 ind(i) = ind(j)
+
945 ind(j) = itemp
+
946 else if (i == j) then
+
947 marker = i + 1
+
948 return
+
949 else
+
950 marker = i
+
951 return
+
952 end if
+
953 end do
+
954 end if
+
955 end subroutine
+
956
+
957! ------------------------------------------------------------------------------
+
958end submodule
Provides a set of common linear algebra routines.
Definition linalg.f90:145
diff --git a/docs/html/linalg__sparse_8f90_source.html b/docs/html/linalg__sparse_8f90_source.html index d1d7398..2d9f7ef 100644 --- a/docs/html/linalg__sparse_8f90_source.html +++ b/docs/html/linalg__sparse_8f90_source.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/namespaceblas.html b/docs/html/namespaceblas.html index 6e26316..1994223 100644 --- a/docs/html/namespaceblas.html +++ b/docs/html/namespaceblas.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/namespacelinalg.html b/docs/html/namespacelinalg.html index 2ae55d7..b037aa2 100644 --- a/docs/html/namespacelinalg.html +++ b/docs/html/namespacelinalg.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/namespacemembers.html b/docs/html/namespacemembers.html index a60a8ce..b47fb72 100644 --- a/docs/html/namespacemembers.html +++ b/docs/html/namespacemembers.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/namespacemembers_vars.html b/docs/html/namespacemembers_vars.html index 2da7983..b7b6ede 100644 --- a/docs/html/namespacemembers_vars.html +++ b/docs/html/namespacemembers_vars.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/namespaceqrupdate.html b/docs/html/namespaceqrupdate.html index 69787ce..16f0d98 100644 --- a/docs/html/namespaceqrupdate.html +++ b/docs/html/namespaceqrupdate.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/namespaces.html b/docs/html/namespaces.html index fb52935..b458a7d 100644 --- a/docs/html/namespaces.html +++ b/docs/html/namespaces.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/namespacesparskit.html b/docs/html/namespacesparskit.html index 6307898..3c66eab 100644 --- a/docs/html/namespacesparskit.html +++ b/docs/html/namespacesparskit.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/qrupdate_8f90_source.html b/docs/html/qrupdate_8f90_source.html index ff1aa11..5d1f520 100644 --- a/docs/html/qrupdate_8f90_source.html +++ b/docs/html/qrupdate_8f90_source.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/sparskit_8f90_source.html b/docs/html/sparskit_8f90_source.html index 83beeb5..8a6104a 100644 --- a/docs/html/sparskit_8f90_source.html +++ b/docs/html/sparskit_8f90_source.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/structlinalg_1_1csr__matrix-members.html b/docs/html/structlinalg_1_1csr__matrix-members.html index 9515c6d..3e32458 100644 --- a/docs/html/structlinalg_1_1csr__matrix-members.html +++ b/docs/html/structlinalg_1_1csr__matrix-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/structlinalg_1_1csr__matrix.html b/docs/html/structlinalg_1_1csr__matrix.html index 264bb7c..5aff779 100644 --- a/docs/html/structlinalg_1_1csr__matrix.html +++ b/docs/html/structlinalg_1_1csr__matrix.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/structlinalg_1_1msr__matrix-members.html b/docs/html/structlinalg_1_1msr__matrix-members.html index e03f45f..0bf532d 100644 --- a/docs/html/structlinalg_1_1msr__matrix-members.html +++ b/docs/html/structlinalg_1_1msr__matrix-members.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.
diff --git a/docs/html/structlinalg_1_1msr__matrix.html b/docs/html/structlinalg_1_1msr__matrix.html index fdc666c..da224f0 100644 --- a/docs/html/structlinalg_1_1msr__matrix.html +++ b/docs/html/structlinalg_1_1msr__matrix.html @@ -34,7 +34,7 @@ -
linalg 1.8.1 +
linalg 1.8.2
A linear algebra library that provides a user-friendly interface to several BLAS and LAPACK routines.