Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add GSVD with QR factorizations, 2-by-1 CS decomposition #406

Open
wants to merge 101 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
101 commits
Select commit Hold shift + click to select a range
fd5e74e
Add GSVD solver based on QR, CS decompositions
christoph-conrads Sep 26, 2016
63ce490
Make DGGQRCS compile
christoph-conrads Sep 26, 2016
96dccdf
Fix DGGQRCS
christoph-conrads Sep 27, 2016
1e815ee
Fix many DGGQRCS bugs
christoph-conrads Sep 28, 2016
ace0611
Fix matrix computation in DGGQRCS
christoph-conrads Sep 28, 2016
4bb8054
Avoid DGGQRCS workspace query memory overflows
christoph-conrads Sep 28, 2016
32622a6
DGGQRCS: ensure #columns <= #rows with DORCSD2BY1
christoph-conrads Sep 28, 2016
1750e47
Fix completely broken DGGQRCS matrix scaling
christoph-conrads Sep 28, 2016
fbf90a0
Fix DGGQRCS bugs
christoph-conrads Sep 28, 2016
fd8c487
Use 1-based indexing in DGGQRCS
christoph-conrads Sep 29, 2016
7c89211
DGGQRCS: always return optimal workspace
christoph-conrads Sep 29, 2016
d58326f
DGGQRCS: fix indentation in a multiline statement
christoph-conrads Sep 29, 2016
b35fd6c
DGGQRCS: compute V^T R1( 1:RANK, : ) correctly
christoph-conrads Sep 29, 2016
2d8da3a
DGGQRCS: change location of matrix R
christoph-conrads Sep 29, 2016
2c83b37
DGGQRCS: overwrite unused memory with NaNs
christoph-conrads Sep 29, 2016
436931e
DGGQRCS: fix argument to DLACPY
christoph-conrads Sep 29, 2016
094c302
DGGQRCS: use correct leading dimension
christoph-conrads Sep 29, 2016
a25860a
DGGQRCS: fix triangular matrices copies again
christoph-conrads Sep 30, 2016
1e7e677
DGGQRCS: more accurate comments
christoph-conrads Sep 30, 2016
81a282b
Add single-precision GSVD via QR+CSD
christoph-conrads Oct 20, 2019
957e217
DGGQRCS: fix typos
christoph-conrads Oct 20, 2019
f683c79
CGGQRCS: draft complex (2x32bit) GSVD via QR, CSD
christoph-conrads Oct 20, 2019
8e30cd1
Fix harmless out-of-bounds accesses for ASAN
christoph-conrads Dec 15, 2019
fffae5f
SGGQRCS: fix branch condition causing NaNs
christoph-conrads Dec 15, 2019
4f0080a
CGGQRCS: fix an EXTERNAL statement
christoph-conrads Apr 10, 2020
706d952
CGGQRCS: fix argument type
christoph-conrads Apr 10, 2020
5110d92
SGGQRCS: improve comments
christoph-conrads Apr 11, 2020
9944790
CGGQRCS: multiple fixes
christoph-conrads Apr 11, 2020
7caf824
xGGQRCS: replace a loop with scalar assignment
christoph-conrads Apr 15, 2020
fe9ee05
xGGQRCS: remove integer variable `R`
christoph-conrads Apr 15, 2020
c9e5167
CGGQRCS: fix LRWORK computation
christoph-conrads Apr 15, 2020
2a55ab9
DGGQRCS: set all THETA entries to NaN
christoph-conrads Apr 19, 2020
3bb2c51
xGGQRCS: disallow zero dimensions
christoph-conrads Apr 19, 2020
087875f
CGGQRCS: fix LRWORK computation
christoph-conrads Apr 19, 2020
5f307f6
CGGQRCS: fix documentation
christoph-conrads Apr 19, 2020
5121631
Add ZGGQRCS, COMPLEX*16 GSVD via QR, CSD
christoph-conrads Apr 22, 2020
846a97a
xGGQRCS: complete list of external subroutines
christoph-conrads Apr 22, 2020
bf66250
SGGQRCS: fix generalized singular values
christoph-conrads Apr 28, 2020
366de5e
Revert "SGGQRCS: fix generalized singular values"
christoph-conrads Apr 28, 2020
0f06a18
Add SLASRTI sorting indices based on numbers
christoph-conrads Apr 28, 2020
29d3e3b
SLASRTI: update documentation
christoph-conrads Apr 28, 2020
1e512db
Add DLASRTI
christoph-conrads Apr 28, 2020
a238a65
Add SLASRTR, a function sorting rows by max norm
christoph-conrads Apr 29, 2020
7cc4495
xGGQRCS: fix typos
christoph-conrads Apr 29, 2020
3bd430d
xLASRTI: fix typos
christoph-conrads Apr 29, 2020
ae68646
SLASRTR: list missing external subroutines
christoph-conrads Apr 29, 2020
eb7f37e
Add DLASRTR
christoph-conrads Apr 29, 2020
aaaf98c
Add CLASRTR
christoph-conrads Apr 29, 2020
bb2c0b9
Add ZLASRTR
christoph-conrads Apr 29, 2020
b954151
xLASRTI: fix indexing error
christoph-conrads May 1, 2020
eefd3a7
SGGQRCS: do not factor right-hand side GSVD matrix
christoph-conrads May 1, 2020
22735c9
SGGQRCS: fix typo
christoph-conrads May 1, 2020
3a6b92b
SGGQRCS: remove unused subroutines
christoph-conrads May 1, 2020
d7e01db
SGGQRCS: replace matrix scaling with row sorting
christoph-conrads May 1, 2020
84cb49d
Revert "SGGQRCS: replace matrix scaling with row sorting"
christoph-conrads May 3, 2020
2678b0f
SGGQRCS: revert effects of matrix scaling
christoph-conrads May 3, 2020
19a1e0b
SGGQRCS: add row sorting again, keep matrix scaling
christoph-conrads May 3, 2020
b17648c
SGGQRCS: fix error codes after recent API changes
christoph-conrads May 3, 2020
32ebe2b
SGGQRCS: avoid unnecessary operations
christoph-conrads May 4, 2020
357a5b9
SGGQRCS: fix incorrect branch condition
christoph-conrads May 4, 2020
69e0e6b
SGGQRCS: handle A=0 properly
christoph-conrads May 4, 2020
f3e4a2d
SGGQRCS: fix row scaling with singular value zero
christoph-conrads May 4, 2020
20c578d
SGGQRCS: fix documentation typo
christoph-conrads May 5, 2020
060d77c
SGGQRCS: improve documentation
christoph-conrads May 5, 2020
dc2f5e0
SGGQRCS: remove row sorting
christoph-conrads May 5, 2020
676f894
SGGQRCS: ensure matrix scaling factors always >1
christoph-conrads May 6, 2020
b5eb358
SGGQRCS: return sine, cosine values
christoph-conrads May 7, 2020
4202857
SGGQRCS: avoid needless matrix norm recomputation
christoph-conrads May 7, 2020
6e5c3a6
SGGQRCS: update documentation
christoph-conrads May 7, 2020
29eff1b
DGGQRCS: update implementation
christoph-conrads May 7, 2020
ea6b975
DGGQRCS: fix typo
christoph-conrads May 7, 2020
dbae805
CGGQRCS: update implementation
christoph-conrads May 7, 2020
02cc14d
ZGGQRCS: update implementation
christoph-conrads May 7, 2020
3b0f2ac
{s,d}GGQRCS: fix a formula in documentation
christoph-conrads May 7, 2020
762ef54
SGGQRCS: try speeding up matrix multiplication
christoph-conrads May 10, 2020
1593ed7
Revert "SGGQRCS: try speeding up matrix multiplication"
christoph-conrads May 11, 2020
baf0f41
xGGQRCS: fix out-of-bounds access
christoph-conrads May 11, 2020
b9ca9b6
xLASRTI: improve documentation wording
christoph-conrads Jan 16, 2021
0a61fa4
xGGQRCS: fix external functions return value type
christoph-conrads Jan 30, 2021
58f2a5b
CGGQRCS: fix accidental memory allocation
christoph-conrads Jan 30, 2021
dda1d0f
CGGQRCS: fix off-by-one bug
christoph-conrads Jan 30, 2021
702991a
ZGGQRCS: fix accidental memory allocation
christoph-conrads Feb 12, 2021
4a6a0f8
SGGQRCS: fix documentation typos
christoph-conrads Feb 12, 2021
332b4e6
xGGQRCS: fix accidental memory allocation
christoph-conrads Feb 12, 2021
2652e1f
xGGQRCS: remove dead assignments to LWKOPT
christoph-conrads Feb 12, 2021
42f9910
xGGQRCS: fix incorrect info values on error
christoph-conrads Feb 12, 2021
f1358ca
xGGQRCS: check for sufficiently large workspace
christoph-conrads Feb 12, 2021
bd80228
ZGGQRCS: fix documentation typos
christoph-conrads Feb 12, 2021
24fc861
xGGQRCS: update version number, release date
christoph-conrads Feb 13, 2021
3f267f1
xLASRTI: update version number, release date
christoph-conrads Feb 13, 2021
305afaf
xLASRTR: update version number, release date
christoph-conrads Feb 13, 2021
224c527
xGGQRCS: add Fortran files to Makefile
christoph-conrads Feb 13, 2021
0298da0
xGGRCS: documentation improvements
christoph-conrads Feb 13, 2021
3cb8736
xGGQRCS: remove debugging code
christoph-conrads Feb 13, 2021
5b48881
xGGQRCS: remove version and date information
christoph-conrads Apr 20, 2021
9f23fbd
xLASRTR: remove version and date information
christoph-conrads Apr 20, 2021
2a8c4dd
xLASRTI: remove version and date information
christoph-conrads Apr 20, 2021
48d8488
xERRGG: test xGGQRCS input handling
christoph-conrads Apr 20, 2021
6cb9a5f
xGGQRCS: allow matrix input with dimension zero
christoph-conrads Apr 20, 2021
e805767
{c,z}GGQRCS: check if LRWORK is valid
christoph-conrads Apr 21, 2021
8a0bef1
xGGQRCS: ensure leading dimension is at least one
christoph-conrads Apr 22, 2021
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 8 additions & 8 deletions SRC/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ set(SCLAUX
slasd0.f slasd1.f slasd2.f slasd3.f slasd4.f slasd5.f slasd6.f
slasd7.f slasd8.f slasda.f slasdq.f slasdt.f
slaset.f slasq1.f slasq2.f slasq3.f slasq4.f slasq5.f slasq6.f
slasr.f slasrt.f slassq.f90 slasv2.f spttrf.f sstebz.f sstedc.f
slasr.f slasrt.f slasrti.f slasrtr.f slassq.f90 slasv2.f spttrf.f sstebz.f sstedc.f
ssteqr.f ssterf.f slaisnan.f sisnan.f
slartgp.f slartgs.f
${SECOND_SRC})
Expand All @@ -73,7 +73,7 @@ set(DZLAUX
dlasd0.f dlasd1.f dlasd2.f dlasd3.f dlasd4.f dlasd5.f dlasd6.f
dlasd7.f dlasd8.f dlasda.f dlasdq.f dlasdt.f
dlaset.f dlasq1.f dlasq2.f dlasq3.f dlasq4.f dlasq5.f dlasq6.f
dlasr.f dlasrt.f dlassq.f90 dlasv2.f dpttrf.f dstebz.f dstedc.f
dlasr.f dlasrt.f dlasrti.f dlasrtr.f dlassq.f90 dlasv2.f dpttrf.f dstebz.f dstedc.f
dsteqr.f dsterf.f dlaisnan.f disnan.f
dlartgp.f dlartgs.f
../INSTALL/dlamch.f ${DSECOND_SRC})
Expand All @@ -89,7 +89,7 @@ set(SLASRC
sgetrf2.f sgetri.f
sggbak.f sggbal.f
sgges.f sgges3.f sggesx.f sggev.f sggev3.f sggevx.f
sggglm.f sgghrd.f sgghd3.f sgglse.f sggqrf.f
sggglm.f sgghrd.f sgghd3.f sgglse.f sggqrf.f sggqrcs.f
sggrqf.f sggsvd3.f sggsvp3.f sgtcon.f sgtrfs.f sgtsv.f
sgtsvx.f sgttrf.f sgttrs.f sgtts2.f shgeqz.f
slaqz0.f slaqz1.f slaqz2.f slaqz3.f slaqz4.f
Expand Down Expand Up @@ -180,7 +180,7 @@ set(CLASRC
cgetri.f
cggbak.f cggbal.f
cgges.f cgges3.f cggesx.f cggev.f cggev3.f cggevx.f
cggglm.f cgghrd.f cgghd3.f cgglse.f cggqrf.f cggrqf.f
cggglm.f cgghrd.f cgghd3.f cgglse.f cggqrf.f cggrqf.f cggqrcs.f
cggsvd3.f cggsvp3.f
cgtcon.f cgtrfs.f cgtsv.f cgtsvx.f cgttrf.f cgttrs.f cgtts2.f chbev.f
chbevd.f chbevx.f chbgst.f chbgv.f chbgvd.f chbgvx.f chbtrd.f
Expand Down Expand Up @@ -213,7 +213,7 @@ set(CLASRC
claqsp.f claqsy.f clar1v.f clar2v.f ilaclr.f ilaclc.f
clarf.f clarfb.f clarfb_gett.f clarfg.f clarfgp.f clarft.f
clarfx.f clarfy.f clargv.f clarnv.f clarrv.f clartg.f90 clartv.f
clarz.f clarzb.f clarzt.f clascl.f claset.f clasr.f classq.f90
clarz.f clarzb.f clarzt.f clascl.f claset.f clasr.f clasrtr.f classq.f90
claswp.f clasyf.f clasyf_rook.f clasyf_rk.f clasyf_aa.f
clatbs.f clatdf.f clatps.f clatrd.f clatrs.f clatrz.f
clauu2.f clauum.f cpbcon.f cpbequ.f cpbrfs.f cpbstf.f cpbsv.f
Expand Down Expand Up @@ -284,7 +284,7 @@ set(DLASRC
dgetrf.f dgetrf2.f dgetri.f
dgetrs.f dggbak.f dggbal.f
dgges.f dgges3.f dggesx.f dggev.f dggev3.f dggevx.f
dggglm.f dgghrd.f dgghd3.f dgglse.f dggqrf.f
dggglm.f dgghrd.f dgghd3.f dgglse.f dggqrf.f dggqrcs.f
dggrqf.f dggsvd3.f dggsvp3.f dgtcon.f dgtrfs.f dgtsv.f
dgtsvx.f dgttrf.f dgttrs.f dgtts2.f dhgeqz.f
dlaqz0.f dlaqz1.f dlaqz2.f dlaqz3.f dlaqz4.f
Expand Down Expand Up @@ -375,7 +375,7 @@ set(ZLASRC
zgetri.f zgetrs.f
zggbak.f zggbal.f
zgges.f zgges3.f zggesx.f zggev.f zggev3.f zggevx.f
zggglm.f zgghrd.f zgghd3.f zgglse.f zggqrf.f zggrqf.f
zggglm.f zgghrd.f zgghd3.f zgglse.f zggqrf.f zggrqf.f zggqrcs.f
zggsvd3.f zggsvp3.f
zgtcon.f zgtrfs.f zgtsv.f zgtsvx.f zgttrf.f zgttrs.f zgtts2.f zhbev.f
zhbevd.f zhbevx.f zhbgst.f zhbgv.f zhbgvd.f zhbgvx.f zhbtrd.f
Expand Down Expand Up @@ -410,7 +410,7 @@ set(ZLASRC
zlarcm.f zlarf.f zlarfb.f zlarfb_gett.f
zlarfg.f zlarfgp.f zlarft.f
zlarfx.f zlarfy.f zlargv.f zlarnv.f zlarrv.f zlartg.f90 zlartv.f
zlarz.f zlarzb.f zlarzt.f zlascl.f zlaset.f zlasr.f
zlarz.f zlarzb.f zlarzt.f zlascl.f zlaset.f zlasr.f zlasrtr.f
zlassq.f90 zlaswp.f zlasyf.f zlasyf_rook.f zlasyf_rk.f zlasyf_aa.f
zlatbs.f zlatdf.f zlatps.f zlatrd.f zlatrs.f zlatrz.f zlauu2.f
zlauum.f zpbcon.f zpbequ.f zpbrfs.f zpbstf.f zpbsv.f
Expand Down
8 changes: 4 additions & 4 deletions SRC/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -124,7 +124,7 @@ SLASRC = \
sgetc2.o sgetf2.o sgetri.o \
sggbak.o sggbal.o sgges.o sgges3.o sggesx.o \
sggev.o sggev3.o sggevx.o \
sggglm.o sgghrd.o sgghd3.o sgglse.o sggqrf.o \
sggglm.o sgghrd.o sgghd3.o sgglse.o sggqrcs.o sggqrf.o \
sggrqf.o sggsvd3.o sggsvp3.o sgtcon.o sgtrfs.o sgtsv.o \
sgtsvx.o sgttrf.o sgttrs.o sgtts2.o shgeqz.o \
slaqz0.o slaqz1.o slaqz2.o slaqz3.o slaqz4.o \
Expand Down Expand Up @@ -218,7 +218,7 @@ CLASRC = \
cgesvx.o cgetc2.o cgetf2.o cgetri.o \
cggbak.o cggbal.o cgges.o cgges3.o cggesx.o \
cggev.o cggev3.o cggevx.o cggglm.o \
cgghrd.o cgghd3.o cgglse.o cggqrf.o cggrqf.o \
cgghrd.o cgghd3.o cgglse.o cggqrcs.o cggqrf.o cggrqf.o \
cggsvd3.o cggsvp3.o \
cgtcon.o cgtrfs.o cgtsv.o cgtsvx.o cgttrf.o cgttrs.o cgtts2.o chbev.o \
chbevd.o chbevx.o chbgst.o chbgv.o chbgvd.o chbgvx.o chbtrd.o \
Expand Down Expand Up @@ -326,7 +326,7 @@ DLASRC = \
dgetc2.o dgetf2.o dgetrf.o dgetri.o \
dgetrs.o dggbak.o dggbal.o dgges.o dgges3.o dggesx.o \
dggev.o dggev3.o dggevx.o \
dggglm.o dgghrd.o dgghd3.o dgglse.o dggqrf.o \
dggglm.o dgghrd.o dgghd3.o dgglse.o dggqrcs.o dggqrf.o \
dggrqf.o dggsvd3.o dggsvp3.o dgtcon.o dgtrfs.o dgtsv.o \
dgtsvx.o dgttrf.o dgttrs.o dgtts2.o dhgeqz.o \
dlaqz0.o dlaqz1.o dlaqz2.o dlaqz3.o dlaqz4.o \
Expand Down Expand Up @@ -420,7 +420,7 @@ ZLASRC = \
zgetri.o zgetrs.o \
zggbak.o zggbal.o zgges.o zgges3.o zggesx.o \
zggev.o zggev3.o zggevx.o zggglm.o \
zgghrd.o zgghd3.o zgglse.o zggqrf.o zggrqf.o \
zgghrd.o zgghd3.o zgglse.o zggqrcs.o zggqrf.o zggrqf.o \
zggsvd3.o zggsvp3.o \
zgtcon.o zgtrfs.o zgtsv.o zgtsvx.o zgttrf.o zgttrs.o zgtts2.o zhbev.o \
zhbevd.o zhbevx.o zhbgst.o zhbgv.o zhbgvd.o zhbgvx.o zhbtrd.o \
Expand Down
Loading