143      SUBROUTINE cgbcon( NORM, N, KL, KU, AB, LDAB, IPIV, ANORM,
 
  145     $                   WORK, RWORK, INFO )
 
  153      INTEGER            INFO, KL, KU, LDAB, N
 
  159      COMPLEX            AB( LDAB, * ), WORK( * )
 
  166      PARAMETER          ( ONE = 1.0e+0, zero = 0.0e+0 )
 
  169      LOGICAL            LNOTI, ONENRM
 
  171      INTEGER            IX, J, JP, KASE, KASE1, KD, LM
 
  172      REAL               AINVNM, SCALE, SMLNUM
 
  183      EXTERNAL           lsame, icamax, slamch, cdotc
 
  190      INTRINSIC          abs, aimag, min, real
 
  196      cabs1( zdum ) = abs( real( zdum ) ) + abs( aimag( zdum ) )
 
  203      onenrm = norm.EQ.
'1' .OR. lsame( norm, 
'O' )
 
  204      IF( .NOT.onenrm .AND. .NOT.lsame( norm, 
'I' ) ) 
THEN 
  206      ELSE IF( n.LT.0 ) 
THEN 
  208      ELSE IF( kl.LT.0 ) 
THEN 
  210      ELSE IF( ku.LT.0 ) 
THEN 
  212      ELSE IF( ldab.LT.2*kl+ku+1 ) 
THEN 
  214      ELSE IF( anorm.LT.zero ) 
THEN 
  218         CALL xerbla( 
'CGBCON', -info )
 
  228      ELSE IF( anorm.EQ.zero ) 
THEN 
  232      smlnum = slamch( 
'Safe minimum' )
 
  247      CALL clacn2( n, work( n+1 ), work, ainvnm, kase, isave )
 
  249         IF( kase.EQ.kase1 ) 
THEN 
  259                     work( jp ) = work( j )
 
  262                  CALL caxpy( lm, -t, ab( kd+1, j ), 1, work( j+1 ),
 
  269            CALL clatbs( 
'Upper', 
'No transpose', 
'Non-unit', normin,
 
  271     $                   kl+ku, ab, ldab, work, scale, rwork, info )
 
  276            CALL clatbs( 
'Upper', 
'Conjugate transpose', 
'Non-unit',
 
  277     $                   normin, n, kl+ku, ab, ldab, work, scale, rwork,
 
  283               DO 30 j = n - 1, 1, -1
 
  285                  work( j ) = work( j ) - cdotc( lm, ab( kd+1, j ),
 
  291                     work( jp ) = work( j )
 
  301         IF( scale.NE.one ) 
THEN 
  302            ix = icamax( n, work, 1 )
 
  303            IF( scale.LT.cabs1( work( ix ) )*smlnum .OR. scale.EQ.zero )
 
  305            CALL csrscl( n, scale, work, 1 )
 
  313     $   rcond = ( one / ainvnm ) / anorm
 
 
subroutine cgbcon(norm, n, kl, ku, ab, ldab, ipiv, anorm, rcond, work, rwork, info)
CGBCON
 
subroutine clacn2(n, v, x, est, kase, isave)
CLACN2 estimates the 1-norm of a square matrix, using reverse communication for evaluating matrix-vec...
 
subroutine clatbs(uplo, trans, diag, normin, n, kd, ab, ldab, x, scale, cnorm, info)
CLATBS solves a triangular banded system of equations.
 
subroutine csrscl(n, sa, sx, incx)
CSRSCL multiplies a vector by the reciprocal of a real scalar.