.TH "gebal" 3 "Version 3.12.0" "LAPACK" \" -*- nroff -*- .ad l .nh .SH NAME gebal \- gebal: balance matrix .SH SYNOPSIS .br .PP .SS "Functions" .in +1c .ti -1c .RI "subroutine \fBcgebal\fP (job, n, a, lda, ilo, ihi, scale, info)" .br .RI "\fBCGEBAL\fP " .ti -1c .RI "subroutine \fBdgebal\fP (job, n, a, lda, ilo, ihi, scale, info)" .br .RI "\fBDGEBAL\fP " .ti -1c .RI "subroutine \fBsgebal\fP (job, n, a, lda, ilo, ihi, scale, info)" .br .RI "\fBSGEBAL\fP " .ti -1c .RI "subroutine \fBzgebal\fP (job, n, a, lda, ilo, ihi, scale, info)" .br .RI "\fBZGEBAL\fP " .in -1c .SH "Detailed Description" .PP .SH "Function Documentation" .PP .SS "subroutine cgebal (character job, integer n, complex, dimension( lda, * ) a, integer lda, integer ilo, integer ihi, real, dimension( * ) scale, integer info)" .PP \fBCGEBAL\fP .PP \fBPurpose:\fP .RS 4 .PP .nf !> !> CGEBAL balances a general complex matrix A\&. This involves, first, !> permuting A by a similarity transformation to isolate eigenvalues !> in the first 1 to ILO-1 and last IHI+1 to N elements on the !> diagonal; and second, applying a diagonal similarity transformation !> to rows and columns ILO to IHI to make the rows and columns as !> close in norm as possible\&. Both steps are optional\&. !> !> Balancing may reduce the 1-norm of the matrix, and improve the !> accuracy of the computed eigenvalues and/or eigenvectors\&. !> .fi .PP .RE .PP \fBParameters\fP .RS 4 \fIJOB\fP .PP .nf !> JOB is CHARACTER*1 !> Specifies the operations to be performed on A: !> = 'N': none: simply set ILO = 1, IHI = N, SCALE(I) = 1\&.0 !> for i = 1,\&.\&.\&.,N; !> = 'P': permute only; !> = 'S': scale only; !> = 'B': both permute and scale\&. !> .fi .PP .br \fIN\fP .PP .nf !> N is INTEGER !> The order of the matrix A\&. N >= 0\&. !> .fi .PP .br \fIA\fP .PP .nf !> A is COMPLEX array, dimension (LDA,N) !> On entry, the input matrix A\&. !> On exit, A is overwritten by the balanced matrix\&. !> If JOB = 'N', A is not referenced\&. !> See Further Details\&. !> .fi .PP .br \fILDA\fP .PP .nf !> LDA is INTEGER !> The leading dimension of the array A\&. LDA >= max(1,N)\&. !> .fi .PP .br \fIILO\fP .PP .nf !> ILO is INTEGER !> .fi .PP .br \fIIHI\fP .PP .nf !> IHI is INTEGER !> ILO and IHI are set to integers such that on exit !> A(i,j) = 0 if i > j and j = 1,\&.\&.\&.,ILO-1 or I = IHI+1,\&.\&.\&.,N\&. !> If JOB = 'N' or 'S', ILO = 1 and IHI = N\&. !> .fi .PP .br \fISCALE\fP .PP .nf !> SCALE is REAL array, dimension (N) !> Details of the permutations and scaling factors applied to !> A\&. If P(j) is the index of the row and column interchanged !> with row and column j and D(j) is the scaling factor !> applied to row and column j, then !> SCALE(j) = P(j) for j = 1,\&.\&.\&.,ILO-1 !> = D(j) for j = ILO,\&.\&.\&.,IHI !> = P(j) for j = IHI+1,\&.\&.\&.,N\&. !> The order in which the interchanges are made is N to IHI+1, !> then 1 to ILO-1\&. !> .fi .PP .br \fIINFO\fP .PP .nf !> INFO is INTEGER !> = 0: successful exit\&. !> < 0: if INFO = -i, the i-th argument had an illegal value\&. !> .fi .PP .RE .PP \fBAuthor\fP .RS 4 Univ\&. of Tennessee .PP Univ\&. of California Berkeley .PP Univ\&. of Colorado Denver .PP NAG Ltd\&. .RE .PP \fBFurther Details:\fP .RS 4 .PP .nf !> !> The permutations consist of row and column interchanges which put !> the matrix in the form !> !> ( T1 X Y ) !> P A P = ( 0 B Z ) !> ( 0 0 T2 ) !> !> where T1 and T2 are upper triangular matrices whose eigenvalues lie !> along the diagonal\&. The column indices ILO and IHI mark the starting !> and ending columns of the submatrix B\&. Balancing consists of applying !> a diagonal similarity transformation inv(D) * B * D to make the !> 1-norms of each row of B and its corresponding column nearly equal\&. !> The output matrix is !> !> ( T1 X*D Y ) !> ( 0 inv(D)*B*D inv(D)*Z )\&. !> ( 0 0 T2 ) !> !> Information about the permutations P and the diagonal matrix D is !> returned in the vector SCALE\&. !> !> This subroutine is based on the EISPACK routine CBAL\&. !> !> Modified by Tzu-Yi Chen, Computer Science Division, University of !> California at Berkeley, USA !> !> Refactored by Evert Provoost, Department of Computer Science, !> KU Leuven, Belgium !> .fi .PP .RE .PP .PP Definition at line \fB164\fP of file \fBcgebal\&.f\fP\&. .SS "subroutine dgebal (character job, integer n, double precision, dimension( lda, * ) a, integer lda, integer ilo, integer ihi, double precision, dimension( * ) scale, integer info)" .PP \fBDGEBAL\fP .PP \fBPurpose:\fP .RS 4 .PP .nf !> !> DGEBAL balances a general real matrix A\&. This involves, first, !> permuting A by a similarity transformation to isolate eigenvalues !> in the first 1 to ILO-1 and last IHI+1 to N elements on the !> diagonal; and second, applying a diagonal similarity transformation !> to rows and columns ILO to IHI to make the rows and columns as !> close in norm as possible\&. Both steps are optional\&. !> !> Balancing may reduce the 1-norm of the matrix, and improve the !> accuracy of the computed eigenvalues and/or eigenvectors\&. !> .fi .PP .RE .PP \fBParameters\fP .RS 4 \fIJOB\fP .PP .nf !> JOB is CHARACTER*1 !> Specifies the operations to be performed on A: !> = 'N': none: simply set ILO = 1, IHI = N, SCALE(I) = 1\&.0 !> for i = 1,\&.\&.\&.,N; !> = 'P': permute only; !> = 'S': scale only; !> = 'B': both permute and scale\&. !> .fi .PP .br \fIN\fP .PP .nf !> N is INTEGER !> The order of the matrix A\&. N >= 0\&. !> .fi .PP .br \fIA\fP .PP .nf !> A is DOUBLE PRECISION array, dimension (LDA,N) !> On entry, the input matrix A\&. !> On exit, A is overwritten by the balanced matrix\&. !> If JOB = 'N', A is not referenced\&. !> See Further Details\&. !> .fi .PP .br \fILDA\fP .PP .nf !> LDA is INTEGER !> The leading dimension of the array A\&. LDA >= max(1,N)\&. !> .fi .PP .br \fIILO\fP .PP .nf !> ILO is INTEGER !> .fi .PP .br \fIIHI\fP .PP .nf !> IHI is INTEGER !> ILO and IHI are set to integers such that on exit !> A(i,j) = 0 if i > j and j = 1,\&.\&.\&.,ILO-1 or I = IHI+1,\&.\&.\&.,N\&. !> If JOB = 'N' or 'S', ILO = 1 and IHI = N\&. !> .fi .PP .br \fISCALE\fP .PP .nf !> SCALE is DOUBLE PRECISION array, dimension (N) !> Details of the permutations and scaling factors applied to !> A\&. If P(j) is the index of the row and column interchanged !> with row and column j and D(j) is the scaling factor !> applied to row and column j, then !> SCALE(j) = P(j) for j = 1,\&.\&.\&.,ILO-1 !> = D(j) for j = ILO,\&.\&.\&.,IHI !> = P(j) for j = IHI+1,\&.\&.\&.,N\&. !> The order in which the interchanges are made is N to IHI+1, !> then 1 to ILO-1\&. !> .fi .PP .br \fIINFO\fP .PP .nf !> INFO is INTEGER !> = 0: successful exit\&. !> < 0: if INFO = -i, the i-th argument had an illegal value\&. !> .fi .PP .RE .PP \fBAuthor\fP .RS 4 Univ\&. of Tennessee .PP Univ\&. of California Berkeley .PP Univ\&. of Colorado Denver .PP NAG Ltd\&. .RE .PP \fBFurther Details:\fP .RS 4 .PP .nf !> !> The permutations consist of row and column interchanges which put !> the matrix in the form !> !> ( T1 X Y ) !> P A P = ( 0 B Z ) !> ( 0 0 T2 ) !> !> where T1 and T2 are upper triangular matrices whose eigenvalues lie !> along the diagonal\&. The column indices ILO and IHI mark the starting !> and ending columns of the submatrix B\&. Balancing consists of applying !> a diagonal similarity transformation inv(D) * B * D to make the !> 1-norms of each row of B and its corresponding column nearly equal\&. !> The output matrix is !> !> ( T1 X*D Y ) !> ( 0 inv(D)*B*D inv(D)*Z )\&. !> ( 0 0 T2 ) !> !> Information about the permutations P and the diagonal matrix D is !> returned in the vector SCALE\&. !> !> This subroutine is based on the EISPACK routine BALANC\&. !> !> Modified by Tzu-Yi Chen, Computer Science Division, University of !> California at Berkeley, USA !> !> Refactored by Evert Provoost, Department of Computer Science, !> KU Leuven, Belgium !> .fi .PP .RE .PP .PP Definition at line \fB162\fP of file \fBdgebal\&.f\fP\&. .SS "subroutine sgebal (character job, integer n, real, dimension( lda, * ) a, integer lda, integer ilo, integer ihi, real, dimension( * ) scale, integer info)" .PP \fBSGEBAL\fP .PP \fBPurpose:\fP .RS 4 .PP .nf !> !> SGEBAL balances a general real matrix A\&. This involves, first, !> permuting A by a similarity transformation to isolate eigenvalues !> in the first 1 to ILO-1 and last IHI+1 to N elements on the !> diagonal; and second, applying a diagonal similarity transformation !> to rows and columns ILO to IHI to make the rows and columns as !> close in norm as possible\&. Both steps are optional\&. !> !> Balancing may reduce the 1-norm of the matrix, and improve the !> accuracy of the computed eigenvalues and/or eigenvectors\&. !> .fi .PP .RE .PP \fBParameters\fP .RS 4 \fIJOB\fP .PP .nf !> JOB is CHARACTER*1 !> Specifies the operations to be performed on A: !> = 'N': none: simply set ILO = 1, IHI = N, SCALE(I) = 1\&.0 !> for i = 1,\&.\&.\&.,N; !> = 'P': permute only; !> = 'S': scale only; !> = 'B': both permute and scale\&. !> .fi .PP .br \fIN\fP .PP .nf !> N is INTEGER !> The order of the matrix A\&. N >= 0\&. !> .fi .PP .br \fIA\fP .PP .nf !> A is REAL array, dimension (LDA,N) !> On entry, the input matrix A\&. !> On exit, A is overwritten by the balanced matrix\&. !> If JOB = 'N', A is not referenced\&. !> See Further Details\&. !> .fi .PP .br \fILDA\fP .PP .nf !> LDA is INTEGER !> The leading dimension of the array A\&. LDA >= max(1,N)\&. !> .fi .PP .br \fIILO\fP .PP .nf !> ILO is INTEGER !> .fi .PP .br \fIIHI\fP .PP .nf !> IHI is INTEGER !> ILO and IHI are set to integers such that on exit !> A(i,j) = 0 if i > j and j = 1,\&.\&.\&.,ILO-1 or I = IHI+1,\&.\&.\&.,N\&. !> If JOB = 'N' or 'S', ILO = 1 and IHI = N\&. !> .fi .PP .br \fISCALE\fP .PP .nf !> SCALE is REAL array, dimension (N) !> Details of the permutations and scaling factors applied to !> A\&. If P(j) is the index of the row and column interchanged !> with row and column j and D(j) is the scaling factor !> applied to row and column j, then !> SCALE(j) = P(j) for j = 1,\&.\&.\&.,ILO-1 !> = D(j) for j = ILO,\&.\&.\&.,IHI !> = P(j) for j = IHI+1,\&.\&.\&.,N\&. !> The order in which the interchanges are made is N to IHI+1, !> then 1 to ILO-1\&. !> .fi .PP .br \fIINFO\fP .PP .nf !> INFO is INTEGER !> = 0: successful exit\&. !> < 0: if INFO = -i, the i-th argument had an illegal value\&. !> .fi .PP .RE .PP \fBAuthor\fP .RS 4 Univ\&. of Tennessee .PP Univ\&. of California Berkeley .PP Univ\&. of Colorado Denver .PP NAG Ltd\&. .RE .PP \fBFurther Details:\fP .RS 4 .PP .nf !> !> The permutations consist of row and column interchanges which put !> the matrix in the form !> !> ( T1 X Y ) !> P A P = ( 0 B Z ) !> ( 0 0 T2 ) !> !> where T1 and T2 are upper triangular matrices whose eigenvalues lie !> along the diagonal\&. The column indices ILO and IHI mark the starting !> and ending columns of the submatrix B\&. Balancing consists of applying !> a diagonal similarity transformation inv(D) * B * D to make the !> 1-norms of each row of B and its corresponding column nearly equal\&. !> The output matrix is !> !> ( T1 X*D Y ) !> ( 0 inv(D)*B*D inv(D)*Z )\&. !> ( 0 0 T2 ) !> !> Information about the permutations P and the diagonal matrix D is !> returned in the vector SCALE\&. !> !> This subroutine is based on the EISPACK routine BALANC\&. !> !> Modified by Tzu-Yi Chen, Computer Science Division, University of !> California at Berkeley, USA !> !> Refactored by Evert Provoost, Department of Computer Science, !> KU Leuven, Belgium !> .fi .PP .RE .PP .PP Definition at line \fB162\fP of file \fBsgebal\&.f\fP\&. .SS "subroutine zgebal (character job, integer n, complex*16, dimension( lda, * ) a, integer lda, integer ilo, integer ihi, double precision, dimension( * ) scale, integer info)" .PP \fBZGEBAL\fP .PP \fBPurpose:\fP .RS 4 .PP .nf !> !> ZGEBAL balances a general complex matrix A\&. This involves, first, !> permuting A by a similarity transformation to isolate eigenvalues !> in the first 1 to ILO-1 and last IHI+1 to N elements on the !> diagonal; and second, applying a diagonal similarity transformation !> to rows and columns ILO to IHI to make the rows and columns as !> close in norm as possible\&. Both steps are optional\&. !> !> Balancing may reduce the 1-norm of the matrix, and improve the !> accuracy of the computed eigenvalues and/or eigenvectors\&. !> .fi .PP .RE .PP \fBParameters\fP .RS 4 \fIJOB\fP .PP .nf !> JOB is CHARACTER*1 !> Specifies the operations to be performed on A: !> = 'N': none: simply set ILO = 1, IHI = N, SCALE(I) = 1\&.0 !> for i = 1,\&.\&.\&.,N; !> = 'P': permute only; !> = 'S': scale only; !> = 'B': both permute and scale\&. !> .fi .PP .br \fIN\fP .PP .nf !> N is INTEGER !> The order of the matrix A\&. N >= 0\&. !> .fi .PP .br \fIA\fP .PP .nf !> A is COMPLEX*16 array, dimension (LDA,N) !> On entry, the input matrix A\&. !> On exit, A is overwritten by the balanced matrix\&. !> If JOB = 'N', A is not referenced\&. !> See Further Details\&. !> .fi .PP .br \fILDA\fP .PP .nf !> LDA is INTEGER !> The leading dimension of the array A\&. LDA >= max(1,N)\&. !> .fi .PP .br \fIILO\fP .PP .nf !> ILO is INTEGER !> .fi .PP .br \fIIHI\fP .PP .nf !> IHI is INTEGER !> ILO and IHI are set to integers such that on exit !> A(i,j) = 0 if i > j and j = 1,\&.\&.\&.,ILO-1 or I = IHI+1,\&.\&.\&.,N\&. !> If JOB = 'N' or 'S', ILO = 1 and IHI = N\&. !> .fi .PP .br \fISCALE\fP .PP .nf !> SCALE is DOUBLE PRECISION array, dimension (N) !> Details of the permutations and scaling factors applied to !> A\&. If P(j) is the index of the row and column interchanged !> with row and column j and D(j) is the scaling factor !> applied to row and column j, then !> SCALE(j) = P(j) for j = 1,\&.\&.\&.,ILO-1 !> = D(j) for j = ILO,\&.\&.\&.,IHI !> = P(j) for j = IHI+1,\&.\&.\&.,N\&. !> The order in which the interchanges are made is N to IHI+1, !> then 1 to ILO-1\&. !> .fi .PP .br \fIINFO\fP .PP .nf !> INFO is INTEGER !> = 0: successful exit\&. !> < 0: if INFO = -i, the i-th argument had an illegal value\&. !> .fi .PP .RE .PP \fBAuthor\fP .RS 4 Univ\&. of Tennessee .PP Univ\&. of California Berkeley .PP Univ\&. of Colorado Denver .PP NAG Ltd\&. .RE .PP \fBFurther Details:\fP .RS 4 .PP .nf !> !> The permutations consist of row and column interchanges which put !> the matrix in the form !> !> ( T1 X Y ) !> P A P = ( 0 B Z ) !> ( 0 0 T2 ) !> !> where T1 and T2 are upper triangular matrices whose eigenvalues lie !> along the diagonal\&. The column indices ILO and IHI mark the starting !> and ending columns of the submatrix B\&. Balancing consists of applying !> a diagonal similarity transformation inv(D) * B * D to make the !> 1-norms of each row of B and its corresponding column nearly equal\&. !> The output matrix is !> !> ( T1 X*D Y ) !> ( 0 inv(D)*B*D inv(D)*Z )\&. !> ( 0 0 T2 ) !> !> Information about the permutations P and the diagonal matrix D is !> returned in the vector SCALE\&. !> !> This subroutine is based on the EISPACK routine CBAL\&. !> !> Modified by Tzu-Yi Chen, Computer Science Division, University of !> California at Berkeley, USA !> !> Refactored by Evert Provoost, Department of Computer Science, !> KU Leuven, Belgium !> .fi .PP .RE .PP .PP Definition at line \fB164\fP of file \fBzgebal\&.f\fP\&. .SH "Author" .PP Generated automatically by Doxygen for LAPACK from the source code\&.