*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->IRIX man pages -> complib/CQRSL (3)              
Title
Content
Arch
Section
 

Contents


CQRSL(3F)							     CQRSL(3F)


NAME    [Toc]    [Back]

     CQRSL   - CQRSL applies the output	of CQRDC to compute coordinate
     transformations, projections, and least squares solutions.	 For K .LE.
     MIN(N,P), let XK be the matrix

	XK = (X(JVPT(1)),X(JVPT(2)), ... ,X(JVPT(K)))

     formed from columnns JVPT(1), ... ,JVPT(K)	of the original	N x P matrix X
     that was input to CQRDC (if no pivoting was done, XK consists of the
     first K columns of	X in their original order).  CQRDC produces a factored
     unitary matrix Q and an upper triangular matrix R such that

	XK = Q * (R)
	(0)

     This information is contained in coded form in the	arrays X and QRAUX.

SYNOPSYS    [Toc]    [Back]

      SUBROUTINE CQRSL(X,LDX,N,K,QRAUX,Y,QY,QTY,B,RSD,XB,JOB,INFO)

DESCRIPTION    [Toc]    [Back]

     On	Entry

     X COMPLEX(LDX,P).
	X contains the output of CQRDC.

     LDX INTEGER.
	LDX is the leading dimension of	the array X.

     N INTEGER.
	N is the number	of rows	of the matrix XK.  It must
	have the same value as N in CQRDC.

     K INTEGER.
	K is the number	of columns of the matrix XK.  K
	must not be greater than (N,P),	where P	is the
	same as	in the calling sequence	to CQRDC.

     QRAUX COMPLEX(P).
	QRAUX contains the auxiliary output from CQRDC.

     Y COMPLEX(N)
	Y contains an N-vector that is to be manipulated
	by CQRSL.

     JOB INTEGER.
	JOB specifies what is to be computed.  JOB has
	the decimal expansion ABCDE, with the following
	meaning.
	If A .NE. 0, compute QY.
	If B,C,D, or E .NE. 0, compute QTY.



									Page 1






CQRSL(3F)							     CQRSL(3F)



	If C .NE. 0, compute B.
	If D .NE. 0, compute RSD .
	If E .NE. 0, compute  XB.
	Note that a request to compute B, RSD, or XB
	automatically triggers the computation of QTY, for
	which an array must be provided	in the calling
	sequence.  On Return

     QY	COMPLEX(N).
	QY contains Q*Y, if its	computation has	been
	requested.

     QTY COMPLEX(N).
	QTY contains CTRANS(Q)*Y, if its computation has
	been requested.	 Here CTRANS(Q)	is the conjugate
	transpose of the matrix	Q.

     B COMPLEX(K)
	B contains the solution	of the least squares problem
	minimize NORM2(Y - XK*B),
	if its computation has been requested.	(Note that
	if pivoting was	requested in CQRDC, the	J-th
	component of B will be associated with column JVPT(J)
	of the original	matrix X that was input	into CQRDC.)

     RSD COMPLEX(N).
	RSD contains the least squares residual	Y - XK*B,
	if its computation has been requested.	RSD is
	also the orthogonal projection of Y onto the
	orthogonal complement of the column space of XK.

     XB	COMPLEX(N).
	XB contains the	least squares approximation XK*B,
	if its computation has been requested.	XB is also
	the orthogonal projection of Y onto the	column space
	of X.

     INFO INTEGER.
	INFO is	zero unless the	computation of B has
	been requested and R is	exactly	singular.  In
	this case, INFO	is the index of	the first zero
	diagonal element of R and B is left unaltered.	The parameters QY,
     QTY, B, RSD, and XB are not referenced if their computation is not
     requested and in this case	can be replaced	by dummy variables in the
     calling program.  To save storage,	the user may in	some cases use the
     same array	for different parameters in the	calling	sequence.  A
     frequently	occuring example is when one wishes to compute any of B, RSD,
     or	XB and does not	need Y or QTY.	In this	case one may identify Y, QTY,
     and one of	B, RSD,	or XB, while providing separate	arrays for anything
     else that is to be	computed.  Thus	the calling sequence CALL
     CQRSL(X,LDX,N,K,QRAUX,Y,DUM,Y,B,Y,DUM,110,INFO) will result in the
     computation of B and RSD, with RSD	overwriting Y.	More generally,	each



									Page 2






CQRSL(3F)							     CQRSL(3F)



     item in the following list	contains groups	of permissible identifications
     for a single callinng sequence.  1. (Y,QTY,B) (RSD) (XB) (QY) 2.
     (Y,QTY,RSD) (B) (XB) (QY) 3. (Y,QTY,XB) (B) (RSD) (QY) 4. (Y,QY) (QTY,B)
     (RSD) (XB)	5. (Y,QY) (QTY,RSD) (B)	(XB) 6.	(Y,QY) (QTY,XB)	(B) (RSD) In
     any group the value returned in the array allocated to the	group
     corresponds to the	last member of the group.  LINPACK.  This version
     dated 08/14/78 .  Stewart,	G. W., University of Maryland, Argonne
     National Lab.

     CQRSL uses	the following functions	and subprograms. BLAS
     CAXPY,CCOPY,CDOTC Fortran ABS,AIMAG,MIN0,MOD,REAL


									PPPPaaaaggggeeee 3333
[ Back ]
 Similar pages
Name OS Title
DQRSL IRIX DQRSL applies the output of DQRDC to compute coordinate transformations, projections, and least squares soluti
SQRSL IRIX SQRSL applies the output of SQRDC to compute coordinate transformations, projections, and least squares soluti
CQRDC IRIX CQRDC uses Householder transformations to compute the QR
DQRDC IRIX DQRDC uses Householder transformations to compute the QR
SQRDC IRIX SQRDC uses Householder transformations to compute the QR
sgelss IRIX compute the minimum norm solution to a real linear least squares problem
zgelss IRIX compute the minimum norm solution to a complex linear least squares problem
cgelsx IRIX compute the minimum-norm solution to a complex linear least squares problem
sgelsx IRIX compute the minimum-norm solution to a real linear least squares problem
zgelsx IRIX compute the minimum-norm solution to a complex linear least squares problem
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service