Skip to content

Commit d5203e9

Browse files
author
scr2016
committed
added missing testing for error exits for ZGELST routine, i.e.
modified TESTING/LIN/zerrls.f accordingly. Also fixed comments typo in [S,D,C,Z]GELST. modified: SRC/cgelst.f modified: SRC/dgelst.f modified: SRC/sgelst.f modified: SRC/zgelst.f modified: TESTING/LIN/zerrls.f
1 parent b8f586b commit d5203e9

File tree

5 files changed

+63
-6
lines changed

5 files changed

+63
-6
lines changed

SRC/cgelst.f

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
*> \brief <b> CGELST solves overdetermined or underdetermined systems for GE matrices using QR or LQ factorization with compact WY representaion of Q.</b>
1+
*> \brief <b> CGELST solves overdetermined or underdetermined systems for GE matrices using QR or LQ factorization with compact WY representation of Q.</b>
22
*
33
* =========== DOCUMENTATION ===========
44
*

SRC/dgelst.f

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
*> \brief <b> DGELST solves overdetermined or underdetermined systems for GE matrices using QR or LQ factorization with compact WY representaion of Q.</b>
1+
*> \brief <b> DGELST solves overdetermined or underdetermined systems for GE matrices using QR or LQ factorization with compact WY representation of Q.</b>
22
*
33
* =========== DOCUMENTATION ===========
44
*

SRC/sgelst.f

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
*> \brief <b> SGELST solves overdetermined or underdetermined systems for GE matrices using QR or LQ factorization with compact WY representaion of Q.</b>
1+
*> \brief <b> SGELST solves overdetermined or underdetermined systems for GE matrices using QR or LQ factorization with compact WY representation of Q.</b>
22
*
33
* =========== DOCUMENTATION ===========
44
*

SRC/zgelst.f

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
*> \brief <b> ZGELST solves overdetermined or underdetermined systems for GE matrices using QR or LQ factorization with compact WY representaion of Q.</b>
1+
*> \brief <b> ZGELST solves overdetermined or underdetermined systems for GE matrices using QR or LQ factorization with compact WY representation of Q.</b>
22
*
33
* =========== DOCUMENTATION ===========
44
*

TESTING/LIN/zerrls.f

Lines changed: 59 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
*> \verbatim
2323
*>
2424
*> ZERRLS tests the error exits for the COMPLEX*16 least squares
25-
*> driver routines (ZGELS, CGELSS, CGELSY, CGELSD).
25+
*> driver routines (ZGELS, ZGELST, ZGETSLS, CGELSS, CGELSY, CGELSD).
2626
*> \endverbatim
2727
*
2828
* Arguments:
@@ -83,7 +83,8 @@ SUBROUTINE ZERRLS( PATH, NUNIT )
8383
EXTERNAL LSAMEN
8484
* ..
8585
* .. External Subroutines ..
86-
EXTERNAL ALAESM, CHKXER, ZGELS, ZGELSD, ZGELSS, ZGELSY
86+
EXTERNAL ALAESM, CHKXER, ZGELS, ZGELSD, ZGELSS, ZGELST,
87+
$ ZGELSY, ZGETSLS
8788
* ..
8889
* .. Scalars in Common ..
8990
LOGICAL LERR, OK
@@ -130,10 +131,66 @@ SUBROUTINE ZERRLS( PATH, NUNIT )
130131
INFOT = 8
131132
CALL ZGELS( 'N', 2, 0, 0, A, 2, B, 1, W, 2, INFO )
132133
CALL CHKXER( 'ZGELS ', INFOT, NOUT, LERR, OK )
134+
INFOT = 8
135+
CALL ZGELS( 'N', 0, 2, 0, A, 1, B, 1, W, 2, INFO )
136+
CALL CHKXER( 'ZGELS', INFOT, NOUT, LERR, OK )
133137
INFOT = 10
134138
CALL ZGELS( 'N', 1, 1, 0, A, 1, B, 1, W, 1, INFO )
135139
CALL CHKXER( 'ZGELS ', INFOT, NOUT, LERR, OK )
136140
*
141+
* ZGELST
142+
*
143+
SRNAMT = 'ZGELST'
144+
INFOT = 1
145+
CALL ZGELST( '/', 0, 0, 0, A, 1, B, 1, W, 1, INFO )
146+
CALL CHKXER( 'ZGELST', INFOT, NOUT, LERR, OK )
147+
INFOT = 2
148+
CALL ZGELST( 'N', -1, 0, 0, A, 1, B, 1, W, 1, INFO )
149+
CALL CHKXER( 'ZGELST', INFOT, NOUT, LERR, OK )
150+
INFOT = 3
151+
CALL ZGELST( 'N', 0, -1, 0, A, 1, B, 1, W, 1, INFO )
152+
CALL CHKXER( 'ZGELST', INFOT, NOUT, LERR, OK )
153+
INFOT = 4
154+
CALL ZGELST( 'N', 0, 0, -1, A, 1, B, 1, W, 1, INFO )
155+
CALL CHKXER( 'ZGELST', INFOT, NOUT, LERR, OK )
156+
INFOT = 6
157+
CALL ZGELST( 'N', 2, 0, 0, A, 1, B, 2, W, 2, INFO )
158+
CALL CHKXER( 'ZGELST', INFOT, NOUT, LERR, OK )
159+
INFOT = 8
160+
CALL ZGELST( 'N', 2, 0, 0, A, 2, B, 1, W, 2, INFO )
161+
CALL CHKXER( 'ZGELST', INFOT, NOUT, LERR, OK )
162+
INFOT = 8
163+
CALL ZGELST( 'N', 0, 2, 0, A, 1, B, 1, W, 2, INFO )
164+
CALL CHKXER( 'ZGELST', INFOT, NOUT, LERR, OK )
165+
INFOT = 10
166+
CALL ZGELST( 'N', 1, 1, 0, A, 1, B, 1, W, 1, INFO )
167+
CALL CHKXER( 'ZGELST', INFOT, NOUT, LERR, OK )
168+
*
169+
* ZGETSLS
170+
*
171+
SRNAMT = 'ZGETSLS'
172+
INFOT = 1
173+
CALL ZGETSLS( '/', 0, 0, 0, A, 1, B, 1, W, 1, INFO )
174+
CALL CHKXER( 'ZGETSLS', INFOT, NOUT, LERR, OK )
175+
INFOT = 2
176+
CALL ZGETSLS( 'N', -1, 0, 0, A, 1, B, 1, W, 1, INFO )
177+
CALL CHKXER( 'ZGETSLS', INFOT, NOUT, LERR, OK )
178+
INFOT = 3
179+
CALL ZGETSLS( 'N', 0, -1, 0, A, 1, B, 1, W, 1, INFO )
180+
CALL CHKXER( 'ZGETSLS', INFOT, NOUT, LERR, OK )
181+
INFOT = 4
182+
CALL ZGETSLS( 'N', 0, 0, -1, A, 1, B, 1, W, 1, INFO )
183+
CALL CHKXER( 'ZGETSLS', INFOT, NOUT, LERR, OK )
184+
INFOT = 6
185+
CALL ZGETSLS( 'N', 2, 0, 0, A, 1, B, 2, W, 2, INFO )
186+
CALL CHKXER( 'ZGETSLS', INFOT, NOUT, LERR, OK )
187+
INFOT = 8
188+
CALL ZGETSLS( 'N', 2, 0, 0, A, 2, B, 1, W, 2, INFO )
189+
CALL CHKXER( 'ZGETSLS', INFOT, NOUT, LERR, OK )
190+
INFOT = 8
191+
CALL ZGETSLS( 'N', 0, 2, 0, A, 1, B, 1, W, 2, INFO )
192+
CALL CHKXER( 'ZGETSLS', INFOT, NOUT, LERR, OK )
193+
*
137194
* ZGELSS
138195
*
139196
SRNAMT = 'ZGELSS'

0 commit comments

Comments
 (0)