Home Man
Search
Today's Posts
Register

Linux & Unix Commands - Search Man Pages

RedHat 9 (Linux i386) - man page for ssytf2 (redhat section l)

SSYTF2(l)					)					SSYTF2(l)

NAME
       SSYTF2  -  compute  the factorization of a real symmetric matrix A using the Bunch-Kaufman
       diagonal pivoting method

SYNOPSIS
       SUBROUTINE SSYTF2( UPLO, N, A, LDA, IPIV, INFO )

	   CHARACTER	  UPLO

	   INTEGER	  INFO, LDA, N

	   INTEGER	  IPIV( * )

	   REAL 	  A( LDA, * )

PURPOSE
       SSYTF2 computes the factorization of a real symmetric matrix  A	using  the  Bunch-Kaufman
       diagonal pivoting method:
	  A = U*D*U'  or  A = L*D*L'

       where  U (or L) is a product of permutation and unit upper (lower) triangular matrices, U'
       is the transpose of U, and D is symmetric and block diagonal with 1-by-1 and 2-by-2 diago-
       nal blocks.

       This is the unblocked version of the algorithm, calling Level 2 BLAS.

ARGUMENTS
       UPLO    (input) CHARACTER*1
	       Specifies  whether the upper or lower triangular part of the symmetric matrix A is
	       stored:
	       = 'U':  Upper triangular
	       = 'L':  Lower triangular

       N       (input) INTEGER
	       The order of the matrix A.  N >= 0.

       A       (input/output) REAL array, dimension (LDA,N)
	       On entry, the symmetric matrix A.  If UPLO = 'U', the leading n-by-n upper  trian-
	       gular  part  of	A  contains  the  upper  triangular part of the matrix A, and the
	       strictly lower triangular part of A is not referenced.  If UPLO = 'L', the leading
	       n-by-n lower triangular part of A contains the lower triangular part of the matrix
	       A, and the strictly upper triangular part of A is not referenced.

	       On exit, the block diagonal matrix D and the multipliers used to obtain the factor
	       U or L (see below for further details).

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

       IPIV    (output) INTEGER array, dimension (N)
	       Details	of  the  interchanges and the block structure of D.  If IPIV(k) > 0, then
	       rows and columns k and IPIV(k) were interchanged and D(k,k) is a  1-by-1  diagonal
	       block.	If  UPLO = 'U' and IPIV(k) = IPIV(k-1) < 0, then rows and columns k-1 and
	       -IPIV(k) were interchanged and D(k-1:k,k-1:k) is a 2-by-2 diagonal block.  If UPLO
	       =  'L'  and  IPIV(k)  = IPIV(k+1) < 0, then rows and columns k+1 and -IPIV(k) were
	       interchanged and D(k:k+1,k:k+1) is a 2-by-2 diagonal block.

       INFO    (output) INTEGER
	       = 0: successful exit
	       < 0: if INFO = -k, the k-th argument had an illegal value
	       > 0: if INFO = k, D(k,k) is exactly zero.  The factorization has  been  completed,
	       but  the  block	diagonal  matrix D is exactly singular, and division by zero will
	       occur if it is used to solve a system of equations.

FURTHER DETAILS
       1-96 - Based on modifications by J. Lewis, Boeing Computer Services
	      Company

       If UPLO = 'U', then A = U*D*U', where
	  U = P(n)*U(n)* ... *P(k)U(k)* ...,
       i.e., U is a product of terms P(k)*U(k), where k decreases from n to 1 in steps of 1 or 2,
       and  D  is a block diagonal matrix with 1-by-1 and 2-by-2 diagonal blocks D(k).	P(k) is a
       permutation matrix as defined by IPIV(k), and U(k) is a unit upper triangular matrix, such
       that if the diagonal block D(k) is of order s (s = 1 or 2), then

		  (   I    v	0   )	k-s
	  U(k) =  (   0    I	0   )	s
		  (   0    0	I   )	n-k
		     k-s   s   n-k

       If s = 1, D(k) overwrites A(k,k), and v overwrites A(1:k-1,k).  If s = 2, the upper trian-
       gle of D(k) overwrites A(k-1,k-1), A(k-1,k), and A(k,k), and v overwrites A(1:k-2,k-1:k).

       If UPLO = 'L', then A = L*D*L', where
	  L = P(1)*L(1)* ... *P(k)*L(k)* ...,
       i.e., L is a product of terms P(k)*L(k), where k increases from 1 to n in steps of 1 or 2,
       and  D  is a block diagonal matrix with 1-by-1 and 2-by-2 diagonal blocks D(k).	P(k) is a
       permutation matrix as defined by IPIV(k), and L(k) is a unit lower triangular matrix, such
       that if the diagonal block D(k) is of order s (s = 1 or 2), then

		  (   I    0	 0   )	k-1
	  L(k) =  (   0    I	 0   )	s
		  (   0    v	 I   )	n-k-s+1
		     k-1   s  n-k-s+1

       If s = 1, D(k) overwrites A(k,k), and v overwrites A(k+1:n,k).  If s = 2, the lower trian-
       gle of D(k) overwrites A(k,k), A(k+1,k), and A(k+1,k+1), and v overwrites A(k+2:n,k:k+1).

LAPACK version 3.0			   15 June 2000 				SSYTF2(l)


All times are GMT -4. The time now is 08:20 AM.

Unix & Linux Forums Content Copyrightę1993-2018. All Rights Reserved.
UNIX.COM Login
Username:
Password:  
Show Password