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

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

Contents


SLAED2(3F)							    SLAED2(3F)


NAME    [Toc]    [Back]

     SLAED2 - merge the	two sets of eigenvalues	together into a	single sorted
     set

SYNOPSIS    [Toc]    [Back]

     SUBROUTINE	SLAED2(	K, N, D, Q, LDQ, INDXQ,	RHO, CUTPNT, Z,	DLAMDA,	Q2,
			LDQ2, INDXC, W,	INDXP, INDX, COLTYP, INFO )

	 INTEGER	CUTPNT,	INFO, K, LDQ, LDQ2, N

	 REAL		RHO

	 INTEGER	COLTYP(	* ), INDX( * ),	INDXC( * ), INDXP( * ),	INDXQ(
			* )

	 REAL		D( * ),	DLAMDA(	* ), Q(	LDQ, * ), Q2( LDQ2, * ), W( *
			), Z( *	)

PURPOSE    [Toc]    [Back]

     SLAED2 merges the two sets	of eigenvalues together	into a single sorted
     set.  Then	it tries to deflate the	size of	the problem.  There are	two
     ways in which deflation can occur:	 when two or more eigenvalues are
     close together or if there	is a tiny entry	in the Z vector.  For each
     such occurrence the order of the related secular equation problem is
     reduced by	one.

ARGUMENTS    [Toc]    [Back]

     K	    (output) INTEGER
	    The	number of non-deflated eigenvalues, and	the order of the
	    related secular equation. 0	<= K <=N.

     N	    (input) INTEGER
	    The	dimension of the symmetric tridiagonal matrix.	N >= 0.

     D	    (input/output) REAL	array, dimension (N)
	    On entry, D	contains the eigenvalues of the	two submatrices	to be
	    combined.  On exit,	D contains the trailing	(N-K) updated
	    eigenvalues	(those which were deflated) sorted into	increasing
	    order.

     Q	    (input/output) REAL	array, dimension (LDQ, N)
	    On entry, Q	contains the eigenvectors of two submatrices in	the
	    two	square blocks with corners at (1,1), (CUTPNT,CUTPNT) and
	    (CUTPNT+1, CUTPNT+1), (N,N).  On exit, Q contains the trailing
	    (N-K) updated eigenvectors (those which were deflated) in its last
	    N-K	columns.

     LDQ    (input) INTEGER
	    The	leading	dimension of the array Q.  LDQ >= max(1,N).





									Page 1






SLAED2(3F)							    SLAED2(3F)



     INDXQ  (input/output) INTEGER array, dimension (N)
	    The	permutation which separately sorts the two sub-problems	in D
	    into ascending order.  Note	that elements in the second half of
	    this permutation must first	have CUTPNT added to their values.
	    Destroyed on exit.

     RHO    (input/output) REAL
	    On entry, the off-diagonal element associated with the rank-1 cut
	    which originally split the two submatrices which are now being
	    recombined.	 On exit, RHO has been modified	to the value required
	    by SLAED3.

	    CUTPNT (input) INTEGER The location	of the last eigenvalue in the
	    leading sub-matrix.	 min(1,N) <= CUTPNT <= N.

     Z	    (input) REAL array,	dimension (N)
	    On entry, Z	contains the updating vector (the last row of the
	    first sub-eigenvector matrix and the first row of the second subeigenvector
	matrix).  On exit, the contents	of Z have been
	    destroyed by the updating process.

	    DLAMDA (output) REAL array,	dimension (N) A	copy of	the first K
	    eigenvalues	which will be used by SLAED3 to	form the secular
	    equation.

     Q2	    (output) REAL array, dimension (LDQ2, N)
	    A copy of the first	K eigenvectors which will be used by SLAED3 in
	    a matrix multiply (SGEMM) to solve for the new eigenvectors.   Q2
	    is arranged	into three blocks.  The	first block contains non-zero
	    elements only at and above CUTPNT, the second contains non-zero
	    elements only below	CUTPNT,	and the	third is dense.

     LDQ2   (input) INTEGER
	    The	leading	dimension of the array Q2.  LDQ2 >= max(1,N).

     INDXC  (output) INTEGER array, dimension (N)
	    The	permutation used to arrange the	columns	of the deflated	Q
	    matrix into	three groups:  the first group contains	non-zero
	    elements only at and above CUTPNT, the second contains non-zero
	    elements only below	CUTPNT,	and the	third is dense.

     W	    (output) REAL array, dimension (N)
	    The	first k	values of the final deflation-altered z-vector which
	    will be passed to SLAED3.

     INDXP  (workspace)	INTEGER	array, dimension (N)
	    The	permutation used to place deflated values of D at the end of
	    the	array.	INDXP(1:K) points to the nondeflated D-values
	    and	INDXP(K+1:N) points to the deflated eigenvalues.






									Page 2






SLAED2(3F)							    SLAED2(3F)



     INDX   (workspace)	INTEGER	array, dimension (N)
	    The	permutation used to sort the contents of D into	ascending
	    order.

	    COLTYP (workspace/output) INTEGER array, dimension (N) During
	    execution, a label which will indicate which of the	following
	    types a column in the Q2 matrix is:
	    1 :	non-zero in the	upper half only;
	    2 :	non-zero in the	lower half only;
	    3 :	dense;
	    4 :	deflated.  On exit, COLTYP(i) is the number of columns of type
	    i, for i=1 to 4 only.

     INFO   (output) INTEGER
	    = 0:  successful exit.
	    < 0:  if INFO = -i,	the i-th argument had an illegal value.
SLAED2(3F)							    SLAED2(3F)


NAME    [Toc]    [Back]

     SLAED2 - merge the	two sets of eigenvalues	together into a	single sorted
     set

SYNOPSIS    [Toc]    [Back]

     SUBROUTINE	SLAED2(	K, N, D, Q, LDQ, INDXQ,	RHO, CUTPNT, Z,	DLAMDA,	Q2,
			LDQ2, INDXC, W,	INDXP, INDX, COLTYP, INFO )

	 INTEGER	CUTPNT,	INFO, K, LDQ, LDQ2, N

	 REAL		RHO

	 INTEGER	COLTYP(	* ), INDX( * ),	INDXC( * ), INDXP( * ),	INDXQ(
			* )

	 REAL		D( * ),	DLAMDA(	* ), Q(	LDQ, * ), Q2( LDQ2, * ), W( *
			), Z( *	)

PURPOSE    [Toc]    [Back]

     SLAED2 merges the two sets	of eigenvalues together	into a single sorted
     set.  Then	it tries to deflate the	size of	the problem.  There are	two
     ways in which deflation can occur:	 when two or more eigenvalues are
     close together or if there	is a tiny entry	in the Z vector.  For each
     such occurrence the order of the related secular equation problem is
     reduced by	one.

ARGUMENTS    [Toc]    [Back]

     K	    (output) INTEGER
	    The	number of non-deflated eigenvalues, and	the order of the
	    related secular equation. 0	<= K <=N.

     N	    (input) INTEGER
	    The	dimension of the symmetric tridiagonal matrix.	N >= 0.

     D	    (input/output) REAL	array, dimension (N)
	    On entry, D	contains the eigenvalues of the	two submatrices	to be
	    combined.  On exit,	D contains the trailing	(N-K) updated
	    eigenvalues	(those which were deflated) sorted into	increasing
	    order.

     Q	    (input/output) REAL	array, dimension (LDQ, N)
	    On entry, Q	contains the eigenvectors of two submatrices in	the
	    two	square blocks with corners at (1,1), (CUTPNT,CUTPNT) and
	    (CUTPNT+1, CUTPNT+1), (N,N).  On exit, Q contains the trailing
	    (N-K) updated eigenvectors (those which were deflated) in its last
	    N-K	columns.

     LDQ    (input) INTEGER
	    The	leading	dimension of the array Q.  LDQ >= max(1,N).





									Page 1






SLAED2(3F)							    SLAED2(3F)



     INDXQ  (input/output) INTEGER array, dimension (N)
	    The	permutation which separately sorts the two sub-problems	in D
	    into ascending order.  Note	that elements in the second half of
	    this permutation must first	have CUTPNT added to their values.
	    Destroyed on exit.

     RHO    (input/output) REAL
	    On entry, the off-diagonal element associated with the rank-1 cut
	    which originally split the two submatrices which are now being
	    recombined.	 On exit, RHO has been modified	to the value required
	    by SLAED3.

	    CUTPNT (input) INTEGER The location	of the last eigenvalue in the
	    leading sub-matrix.	 min(1,N) <= CUTPNT <= N.

     Z	    (input) REAL array,	dimension (N)
	    On entry, Z	contains the updating vector (the last row of the
	    first sub-eigenvector matrix and the first row of the second subeigenvector
	matrix).  On exit, the contents	of Z have been
	    destroyed by the updating process.

	    DLAMDA (output) REAL array,	dimension (N) A	copy of	the first K
	    eigenvalues	which will be used by SLAED3 to	form the secular
	    equation.

     Q2	    (output) REAL array, dimension (LDQ2, N)
	    A copy of the first	K eigenvectors which will be used by SLAED3 in
	    a matrix multiply (SGEMM) to solve for the new eigenvectors.   Q2
	    is arranged	into three blocks.  The	first block contains non-zero
	    elements only at and above CUTPNT, the second contains non-zero
	    elements only below	CUTPNT,	and the	third is dense.

     LDQ2   (input) INTEGER
	    The	leading	dimension of the array Q2.  LDQ2 >= max(1,N).

     INDXC  (output) INTEGER array, dimension (N)
	    The	permutation used to arrange the	columns	of the deflated	Q
	    matrix into	three groups:  the first group contains	non-zero
	    elements only at and above CUTPNT, the second contains non-zero
	    elements only below	CUTPNT,	and the	third is dense.

     W	    (output) REAL array, dimension (N)
	    The	first k	values of the final deflation-altered z-vector which
	    will be passed to SLAED3.

     INDXP  (workspace)	INTEGER	array, dimension (N)
	    The	permutation used to place deflated values of D at the end of
	    the	array.	INDXP(1:K) points to the nondeflated D-values
	    and	INDXP(K+1:N) points to the deflated eigenvalues.






									Page 2






SLAED2(3F)							    SLAED2(3F)



     INDX   (workspace)	INTEGER	array, dimension (N)
	    The	permutation used to sort the contents of D into	ascending
	    order.

	    COLTYP (workspace/output) INTEGER array, dimension (N) During
	    execution, a label which will indicate which of the	following
	    types a column in the Q2 matrix is:
	    1 :	non-zero in the	upper half only;
	    2 :	non-zero in the	lower half only;
	    3 :	dense;
	    4 :	deflated.  On exit, COLTYP(i) is the number of columns of type
	    i, for i=1 to 4 only.

     INFO   (output) INTEGER
	    = 0:  successful exit.
	    < 0:  if INFO = -i,	the i-th argument had an illegal value.


									PPPPaaaaggggeeee 3333
[ Back ]
 Similar pages
Name OS Title
dlaeda IRIX compute the Z vector corresponding to the merge step in the CURLVLth step of the merge process with TLVLS step
slaeda IRIX compute the Z vector corresponding to the merge step in the CURLVLth step of the merge process with TLVLS step
comm Tru64 Compares two sorted files.
bsearch FreeBSD binary search of a sorted table
bsearch NetBSD binary search of a sorted table
bsearch IRIX binary search a sorted table
bsearch OpenBSD binary search of a sorted table
bsearch Linux binary search of a sorted array.
look Tru64 Finds lines in a sorted list
uniq Linux remove duplicate lines from a sorted file
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service