DGGGLM(3)
π DGGGLM(3) π
This is the dggglm.f(3) page from the Library Functions Manual β yes, the header has that little truncated /home/abui...RC/dggglm.f(3) look, and the real full source path lives down in NAME.
β¨ NAME β¨
/home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/dggglm.f
π SYNOPSIS π
Functions/Subroutines
subroutine DGGGLM (n, m, p, a, lda, b, ldb, d, x, y, work, lwork, info)
DGGGLM
πΈ Function/Subroutine Documentation πΈ
subroutine DGGGLM (integer n, integer m, integer p, double precision,
dimension( lda, * ) a, integer lda, double precision, dimension( ldb, *
) b, integer ldb, double precision, dimension( * ) d, double precision,
dimension( * ) x, double precision, dimension( * ) y, double precision,
dimension( * ) work, integer lwork, integer info)
DGGGLM
π DGGGLM π
π¦ Purpose π¦
okay bestie, DGGGLM solves a general Gauss-Markov linear model (GLM) problem:
minimize || y ||_2 subject to d = A*x + B*y
x
where A is an N-by-M matrix, B is an N-by-P matrix, and d is a given N-vector. It is assumed that M <= N <= M+P, and
rank(A) = M and rank( A B ) = N.
Under these assumptions, the constrained equation is always consistent, and there is a unique solution x and a minimal 2-norm solution y, which is obtained using a generalized QR factorization of the matrices (A, B) given by
A = Q*(R), B = Q*T*Z.
(0)
In particular, if matrix B is square nonsingular, then the problem GLM is equivalent to the following weighted linear least squares problem
minimize || inv(B)*(d-A*x) ||_2
x
where inv(B) denotes the inverse of B.
π Parameters π
NβINTEGER: the number of rows of the matricesAandB. Constraint:N >= 0.MβINTEGER: the number of columns of the matrixA. Constraint:0 <= M <= N.PβINTEGER: the number of columns of the matrixB. Constraint:P >= N-M.AβDOUBLE PRECISIONarray, dimension(LDA,M). On entry, theN-by-MmatrixA. On exit, the upper triangular part of the arrayAcontains theM-by-Mupper triangular matrixR.LDAβINTEGER: the leading dimension of the arrayA. Constraint:LDA >= max(1,N).BβDOUBLE PRECISIONarray, dimension(LDB,P). On entry, theN-by-PmatrixB. On exit, ifN <= P, the upper triangle of the subarrayB(1:N,P-N+1:P)contains theN-by-Nupper triangular matrixT; ifN > P, the elements on and above the(N-P)th subdiagonal contain theN-by-Pupper trapezoidal matrixT.LDBβINTEGER: the leading dimension of the arrayB. Constraint:LDB >= max(1,N).DβDOUBLE PRECISIONarray, dimension(N). On entry,Dis the left hand side of the GLM equation. On exit,Dis destroyed.XβDOUBLE PRECISIONarray, dimension(M).YβDOUBLE PRECISIONarray, dimension(P). On exit,XandYare the solutions of the GLM problem.WORKβDOUBLE PRECISIONarray, dimension(MAX(1,LWORK)). On exit, ifINFO = 0,WORK(1)returns the optimalLWORK.LWORKβINTEGER: the dimension of the arrayWORK. Constraint:LWORK >= max(1,N+M+P).For optimum performance,LWORK >= M+min(N,P)+max(N,P)*NB, whereNBis an upper bound for the optimal blocksizes forDGEQRF,SGERQF,DORMQRandSORMRQ. IfLWORK = -1, then a workspace query is assumed; the routine only calculates the optimal size of theWORKarray, returns this value as the first entry of theWORKarray, and no error message related toLWORKis issued byXERBLA.INFOβINTEGER:= 0: successful exit.< 0: ifINFO = -i, thei-th argument had an illegal value.= 1: the upper triangular factorRassociated withAin the generalized QR factorization of the pair(A, B)is singular, so thatrank(A) < M; the least squares solution could not be computed.= 2: the bottom(N-M)by(N-M)part of the upper trapezoidal factorTassociated withBin the generalized QR factorization of the pair(A, B)is singular, so thatrank( A B ) < N; the least squares solution could not be computed.
π Author π
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
Definition at line 183 of file dggglm.f.
π Author π
Generated automatically by Doxygen for LAPACK from the source code.
and thatβs the whole DGGGLM tea π
β the footer says LAPACK Version 3.12.0 and points back at /home/abui...RC/dggglm.f(3), so thatβs the source/version sign-off, bestie π«Άβ¨
π¦ where this page comes from
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms