125 SUBROUTINE ssyt01_aa( UPLO, N, A, LDA, AFAC, LDAFAC, IPIV, C,
126 $ ldc, rwork, resid )
135 INTEGER LDA, LDAFAC, LDC, N
140 REAL A( lda, * ), AFAC( ldafac, * ), C( ldc, * ),
148 parameter ( zero = 0.0e+0, one = 1.0e+0 )
157 EXTERNAL lsame, slamch, slansy
176 eps = slamch(
'Epsilon' )
177 anorm = slansy(
'1', uplo, n, a, lda, rwork )
181 CALL slaset(
'Full', n, n, zero, zero, c, ldc )
182 CALL slacpy(
'F', 1, n, afac( 1, 1 ), ldafac+1, c( 1, 1 ), ldc+1 )
184 IF( lsame( uplo,
'U' ) )
THEN
185 CALL slacpy(
'F', 1, n-1, afac( 1, 2 ), ldafac+1, c( 1, 2 ),
187 CALL slacpy(
'F', 1, n-1, afac( 1, 2 ), ldafac+1, c( 2, 1 ),
190 CALL slacpy(
'F', 1, n-1, afac( 2, 1 ), ldafac+1, c( 1, 2 ),
192 CALL slacpy(
'F', 1, n-1, afac( 2, 1 ), ldafac+1, c( 2, 1 ),
198 IF( lsame( uplo,
'U' ) )
THEN
199 CALL strmm(
'Left', uplo,
'Transpose',
'Unit', n-1, n,
200 $ one, afac( 1, 2 ), ldafac, c( 2, 1 ), ldc )
202 CALL strmm(
'Left', uplo,
'No transpose',
'Unit', n-1, n,
203 $ one, afac( 2, 1 ), ldafac, c( 2, 1 ), ldc )
208 IF( lsame( uplo,
'U' ) )
THEN
209 CALL strmm(
'Right', uplo,
'No transpose',
'Unit', n, n-1,
210 $ one, afac( 1, 2 ), ldafac, c( 1, 2 ), ldc )
212 CALL strmm(
'Right', uplo,
'Transpose',
'Unit', n, n-1,
213 $ one, afac( 2, 1 ), ldafac, c( 1, 2 ), ldc )
222 $
CALL sswap( n, c( j, 1 ), ldc, c( i, 1 ), ldc )
227 $
CALL sswap( n, c( 1, j ), 1, c( 1, i ), 1 )
233 IF( lsame( uplo,
'U' ) )
THEN
236 c( i, j ) = c( i, j ) - a( i, j )
242 c( i, j ) = c( i, j ) - a( i, j )
249 resid = slansy(
'1', uplo, n, c, ldc, rwork )
251 IF( anorm.LE.zero )
THEN
255 resid = ( ( resid / dble( n ) ) / anorm ) / eps
subroutine ssyt01_aa(UPLO, N, A, LDA, AFAC, LDAFAC, IPIV, C, LDC, RWORK, RESID)
SSYT01_AA
subroutine slavsy(UPLO, TRANS, DIAG, N, NRHS, A, LDA, IPIV, B, LDB, INFO)
SLAVSY
subroutine strmm(SIDE, UPLO, TRANSA, DIAG, M, N, ALPHA, A, LDA, B, LDB)
STRMM
subroutine slaset(UPLO, M, N, ALPHA, BETA, A, LDA)
SLASET initializes the off-diagonal elements and the diagonal elements of a matrix to given values...
subroutine sswap(N, SX, INCX, SY, INCY)
SSWAP
subroutine slacpy(UPLO, M, N, A, LDA, B, LDB)
SLACPY copies all or part of one two-dimensional array to another.