Skip to content

Commit c3c505b

Browse files
author
GYT
committed
Add notes to *GGGLM about how only exact rank-deficiency is checked
1 parent b733521 commit c3c505b

File tree

4 files changed

+48
-8
lines changed

4 files changed

+48
-8
lines changed

SRC/cggglm.f

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,16 @@
6161
*> x
6262
*>
6363
*> where inv(B) denotes the inverse of B.
64+
*>
65+
*> Callers of this subroutine should note that the singularity/rank-deficiency checks
66+
*> implemented in this subroutine are rudimentary. The CTRTRS subroutine called by this
67+
*> subroutine only signals a failure due to singularity if the problem is exactly singular.
68+
*>
69+
*> It is conceivable for one (or more) of the factors involved in the generalized QR
70+
*> factorization of the pair (A, B) to be subnormally close to singularity without this
71+
*> subroutine signalling an error. The solutions computed for such almost-rank-deficient
72+
*> problems may be less accurate due to a loss of numerical precision.
73+
*>
6474
*> \endverbatim
6575
*
6676
* Arguments:
@@ -159,12 +169,12 @@
159169
*> = 0: successful exit.
160170
*> < 0: if INFO = -i, the i-th argument had an illegal value.
161171
*> = 1: the upper triangular factor R associated with A in the
162-
*> generalized QR factorization of the pair (A, B) is
172+
*> generalized QR factorization of the pair (A, B) is exactly
163173
*> singular, so that rank(A) < M; the least squares
164174
*> solution could not be computed.
165175
*> = 2: the bottom (N-M) by (N-M) part of the upper trapezoidal
166176
*> factor T associated with B in the generalized QR
167-
*> factorization of the pair (A, B) is singular, so that
177+
*> factorization of the pair (A, B) is exactly singular, so that
168178
*> rank( A B ) < N; the least squares solution could not
169179
*> be computed.
170180
*> \endverbatim

SRC/dggglm.f

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,16 @@
6161
*> x
6262
*>
6363
*> where inv(B) denotes the inverse of B.
64+
*>
65+
*> Callers of this subroutine should note that the singularity/rank-deficiency checks
66+
*> implemented in this subroutine are rudimentary. The DTRTRS subroutine called by this
67+
*> subroutine only signals a failure due to singularity if the problem is exactly singular.
68+
*>
69+
*> It is conceivable for one (or more) of the factors involved in the generalized QR
70+
*> factorization of the pair (A, B) to be subnormally close to singularity without this
71+
*> subroutine signalling an error. The solutions computed for such almost-rank-deficient
72+
*> problems may be less accurate due to a loss of numerical precision.
73+
*>
6474
*> \endverbatim
6575
*
6676
* Arguments:
@@ -159,12 +169,12 @@
159169
*> = 0: successful exit.
160170
*> < 0: if INFO = -i, the i-th argument had an illegal value.
161171
*> = 1: the upper triangular factor R associated with A in the
162-
*> generalized QR factorization of the pair (A, B) is
172+
*> generalized QR factorization of the pair (A, B) is exactly
163173
*> singular, so that rank(A) < M; the least squares
164174
*> solution could not be computed.
165175
*> = 2: the bottom (N-M) by (N-M) part of the upper trapezoidal
166176
*> factor T associated with B in the generalized QR
167-
*> factorization of the pair (A, B) is singular, so that
177+
*> factorization of the pair (A, B) is exactly singular, so that
168178
*> rank( A B ) < N; the least squares solution could not
169179
*> be computed.
170180
*> \endverbatim

SRC/sggglm.f

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,16 @@
6161
*> x
6262
*>
6363
*> where inv(B) denotes the inverse of B.
64+
*>
65+
*> Callers of this subroutine should note that the singularity/rank-deficiency checks
66+
*> implemented in this subroutine are rudimentary. The STRTRS subroutine called by this
67+
*> subroutine only signals a failure due to singularity if the problem is exactly singular.
68+
*>
69+
*> It is conceivable for one (or more) of the factors involved in the generalized QR
70+
*> factorization of the pair (A, B) to be subnormally close to singularity without this
71+
*> subroutine signalling an error. The solutions computed for such almost-rank-deficient
72+
*> problems may be less accurate due to a loss of numerical precision.
73+
*>
6474
*> \endverbatim
6575
*
6676
* Arguments:
@@ -159,12 +169,12 @@
159169
*> = 0: successful exit.
160170
*> < 0: if INFO = -i, the i-th argument had an illegal value.
161171
*> = 1: the upper triangular factor R associated with A in the
162-
*> generalized QR factorization of the pair (A, B) is
172+
*> generalized QR factorization of the pair (A, B) is exactly
163173
*> singular, so that rank(A) < M; the least squares
164174
*> solution could not be computed.
165175
*> = 2: the bottom (N-M) by (N-M) part of the upper trapezoidal
166176
*> factor T associated with B in the generalized QR
167-
*> factorization of the pair (A, B) is singular, so that
177+
*> factorization of the pair (A, B) is exactly singular, so that
168178
*> rank( A B ) < N; the least squares solution could not
169179
*> be computed.
170180
*> \endverbatim

SRC/zggglm.f

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,16 @@
6161
*> x
6262
*>
6363
*> where inv(B) denotes the inverse of B.
64+
*>
65+
*> Callers of this subroutine should note that the singularity/rank-deficiency checks
66+
*> implemented in this subroutine are rudimentary. The ZTRTRS subroutine called by this
67+
*> subroutine only signals a failure due to singularity if the problem is exactly singular.
68+
*>
69+
*> It is conceivable for one (or more) of the factors involved in the generalized QR
70+
*> factorization of the pair (A, B) to be subnormally close to singularity without this
71+
*> subroutine signalling an error. The solutions computed for such almost-rank-deficient
72+
*> problems may be less accurate due to a loss of numerical precision.
73+
*>
6474
*> \endverbatim
6575
*
6676
* Arguments:
@@ -159,12 +169,12 @@
159169
*> = 0: successful exit.
160170
*> < 0: if INFO = -i, the i-th argument had an illegal value.
161171
*> = 1: the upper triangular factor R associated with A in the
162-
*> generalized QR factorization of the pair (A, B) is
172+
*> generalized QR factorization of the pair (A, B) is exactly
163173
*> singular, so that rank(A) < M; the least squares
164174
*> solution could not be computed.
165175
*> = 2: the bottom (N-M) by (N-M) part of the upper trapezoidal
166176
*> factor T associated with B in the generalized QR
167-
*> factorization of the pair (A, B) is singular, so that
177+
*> factorization of the pair (A, B) is exactly singular, so that
168178
*> rank( A B ) < N; the least squares solution could not
169179
*> be computed.
170180
*> \endverbatim

0 commit comments

Comments
 (0)