85 SUBROUTINE zlatsp( UPLO, N, X, ISEED )
105 parameter( eye = ( 0.0d0, 1.0d0 ) )
109 DOUBLE PRECISION alpha, alpha3, beta
110 COMPLEX*16 a,
b, c, r
123 alpha = ( 1.d0+sqrt( 17.d0 ) ) / 8.d0
124 beta = alpha - 1.d0 / 1000.d0
125 alpha3 = alpha*alpha*alpha
129 DO 10
j = 1, n*( n+1 ) / 2
135 IF( uplo.EQ.
'U' )
THEN
141 a = alpha3*
zlarnd( 5, iseed )
156 IF( abs(
x( jj+(
j-3 ) ) ).GT.abs(
x( jj ) ) )
THEN
157 x( jj+(
j-4 ) ) = 2.0d0*
x( jj+(
j-3 ) )
159 x( jj+(
j-4 ) ) = 2.0d0*
x( jj )
168 a = alpha3*
zlarnd( 5, iseed )
185 IF( abs(
x( jj ) ).GT.abs(
x( jj-
j ) ) )
THEN
186 x( jj-1 ) = 2.0d0*
x( jj )
188 x( jj-1 ) = 2.0d0*
x( jj-
j )
190 jj = jj -
j - (
j-1 )
192 ELSE IF(
j.EQ.1 )
THEN
205 a = alpha3*
zlarnd( 5, iseed )
220 IF( abs(
x( jj-( n-
j-2 ) ) ).GT.abs(
x( jj ) ) )
THEN
221 x( jj-( n-
j-2 )+1 ) = 2.0d0*
x( jj-( n-
j-2 ) )
223 x( jj-( n-
j-2 )+1 ) = 2.0d0*
x( jj )
232 a = alpha3*
zlarnd( 5, iseed )
248 x( jj+( n-
j+1 ) ) =
zlarnd( 2, iseed )
249 IF( abs(
x( jj ) ).GT.abs(
x( jj+( n-
j+1 ) ) ) )
THEN
250 x( jj+1 ) = 2.0d0*
x( jj )
252 x( jj+1 ) = 2.0d0*
x( jj+( n-
j+1 ) )
254 jj = jj + ( n-
j+1 ) + ( n-
j )
256 ELSE IF(
j.EQ.n )
THEN
COMPLEX *16 function zlarnd(IDIST, ISEED)
ZLARND
subroutine zlatsp(UPLO, N, X, ISEED)
ZLATSP
set ue cd $ADTTMP cat<< EOF > tmp f Program LinearEquations Implicit none Real b(3) integer i
set ue cd $ADTTMP cat<< EOF > tmp f Program LinearEquations Implicit none Real j