---
name: "gebak"
section: "3"
platform: "linux"
package: "lapack-doc"
version: "3.12.1-2"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/gebak"
---

# gebak(3)

gebak: back-transform eigvec

## NAME

gebak - gebak: back-transform eigvec

## SYNOPSIS

### Functions

subroutine **cgebak** (job, side, n, ilo, ihi, scale, m, v, ldv, info)\
 **CGEBAK**  subroutine **dgebak** (job, side, n, ilo, ihi, scale, m, v, ldv, info)\
 **DGEBAK**  subroutine **sgebak** (job, side, n, ilo, ihi, scale, m, v, ldv, info)\
 **SGEBAK**  subroutine **zgebak** (job, side, n, ilo, ihi, scale, m, v, ldv, info)\
 **ZGEBAK**

## Detailed Description

## Function Documentation

### subroutine cgebak (character job, character side, integer n, integer ilo, integer ihi, real, dimension( \* ) scale, integer m, complex, dimension( ldv, \* ) v, integer ldv, integer info)

**CGEBAK**

**Purpose:**

```
!>
!> CGEBAK forms the right or left eigenvectors of a complex general
!> matrix by backward transformation on the computed eigenvectors of the
!> balanced matrix output by CGEBAL.
!>
```

**Parameters**

*JOB*

```
!>          JOB is CHARACTER*1
!>          Specifies the type of backward transformation required:
!>          = 'N': do nothing, return immediately;
!>          = 'P': do backward transformation for permutation only;
!>          = 'S': do backward transformation for scaling only;
!>          = 'B': do backward transformations for both permutation and
!>                 scaling.
!>          JOB must be the same as the argument JOB supplied to CGEBAL.
!>
```

*SIDE*

```
!>          SIDE is CHARACTER*1
!>          = 'R':  V contains right eigenvectors;
!>          = 'L':  V contains left eigenvectors.
!>
```

*N*

```
!>          N is INTEGER
!>          The number of rows of the matrix V.  N >= 0.
!>
```

*ILO*

```
!>          ILO is INTEGER
!>
```

*IHI*

```
!>          IHI is INTEGER
!>          The integers ILO and IHI determined by CGEBAL.
!>          1 <= ILO <= IHI <= N, if N > 0; ILO=1 and IHI=0, if N=0.
!>
```

*SCALE*

```
!>          SCALE is REAL array, dimension (N)
!>          Details of the permutation and scaling factors, as returned
!>          by CGEBAL.
!>
```

*M*

```
!>          M is INTEGER
!>          The number of columns of the matrix V.  M >= 0.
!>
```

*V*

```
!>          V is COMPLEX array, dimension (LDV,M)
!>          On entry, the matrix of right or left eigenvectors to be
!>          transformed, as returned by CHSEIN or CTREVC.
!>          On exit, V is overwritten by the transformed eigenvectors.
!>
```

*LDV*

```
!>          LDV is INTEGER
!>          The leading dimension of the array V. LDV >= max(1,N).
!>
```

*INFO*

```
!>          INFO is INTEGER
!>          = 0:  successful exit
!>          < 0:  if INFO = -i, the i-th argument had an illegal value.
!>
```

**Author**

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

Definition at line **129** of file **cgebak.f**.

### subroutine dgebak (character job, character side, integer n, integer ilo, integer ihi, double precision, dimension( \* ) scale, integer m, double precision, dimension( ldv, \* ) v, integer ldv, integer info)

**DGEBAK**

**Purpose:**

```
!>
!> DGEBAK forms the right or left eigenvectors of a real general matrix
!> by backward transformation on the computed eigenvectors of the
!> balanced matrix output by DGEBAL.
!>
```

**Parameters**

*JOB*

```
!>          JOB is CHARACTER*1
!>          Specifies the type of backward transformation required:
!>          = 'N': do nothing, return immediately;
!>          = 'P': do backward transformation for permutation only;
!>          = 'S': do backward transformation for scaling only;
!>          = 'B': do backward transformations for both permutation and
!>                 scaling.
!>          JOB must be the same as the argument JOB supplied to DGEBAL.
!>
```

*SIDE*

```
!>          SIDE is CHARACTER*1
!>          = 'R':  V contains right eigenvectors;
!>          = 'L':  V contains left eigenvectors.
!>
```

*N*

```
!>          N is INTEGER
!>          The number of rows of the matrix V.  N >= 0.
!>
```

*ILO*

```
!>          ILO is INTEGER
!>
```

*IHI*

```
!>          IHI is INTEGER
!>          The integers ILO and IHI determined by DGEBAL.
!>          1 <= ILO <= IHI <= N, if N > 0; ILO=1 and IHI=0, if N=0.
!>
```

*SCALE*

```
!>          SCALE is DOUBLE PRECISION array, dimension (N)
!>          Details of the permutation and scaling factors, as returned
!>          by DGEBAL.
!>
```

*M*

```
!>          M is INTEGER
!>          The number of columns of the matrix V.  M >= 0.
!>
```

*V*

```
!>          V is DOUBLE PRECISION array, dimension (LDV,M)
!>          On entry, the matrix of right or left eigenvectors to be
!>          transformed, as returned by DHSEIN or DTREVC.
!>          On exit, V is overwritten by the transformed eigenvectors.
!>
```

*LDV*

```
!>          LDV is INTEGER
!>          The leading dimension of the array V. LDV >= max(1,N).
!>
```

*INFO*

```
!>          INFO is INTEGER
!>          = 0:  successful exit
!>          < 0:  if INFO = -i, the i-th argument had an illegal value.
!>
```

**Author**

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

Definition at line **128** of file **dgebak.f**.

### subroutine sgebak (character job, character side, integer n, integer ilo, integer ihi, real, dimension( \* ) scale, integer m, real, dimension( ldv, \* ) v, integer ldv, integer info)

**SGEBAK**

**Purpose:**

```
!>
!> SGEBAK forms the right or left eigenvectors of a real general matrix
!> by backward transformation on the computed eigenvectors of the
!> balanced matrix output by SGEBAL.
!>
```

**Parameters**

*JOB*

```
!>          JOB is CHARACTER*1
!>          Specifies the type of backward transformation required:
!>          = 'N': do nothing, return immediately;
!>          = 'P': do backward transformation for permutation only;
!>          = 'S': do backward transformation for scaling only;
!>          = 'B': do backward transformations for both permutation and
!>                 scaling.
!>          JOB must be the same as the argument JOB supplied to SGEBAL.
!>
```

*SIDE*

```
!>          SIDE is CHARACTER*1
!>          = 'R':  V contains right eigenvectors;
!>          = 'L':  V contains left eigenvectors.
!>
```

*N*

```
!>          N is INTEGER
!>          The number of rows of the matrix V.  N >= 0.
!>
```

*ILO*

```
!>          ILO is INTEGER
!>
```

*IHI*

```
!>          IHI is INTEGER
!>          The integers ILO and IHI determined by SGEBAL.
!>          1 <= ILO <= IHI <= N, if N > 0; ILO=1 and IHI=0, if N=0.
!>
```

*SCALE*

```
!>          SCALE is REAL array, dimension (N)
!>          Details of the permutation and scaling factors, as returned
!>          by SGEBAL.
!>
```

*M*

```
!>          M is INTEGER
!>          The number of columns of the matrix V.  M >= 0.
!>
```

*V*

```
!>          V is REAL array, dimension (LDV,M)
!>          On entry, the matrix of right or left eigenvectors to be
!>          transformed, as returned by SHSEIN or STREVC.
!>          On exit, V is overwritten by the transformed eigenvectors.
!>
```

*LDV*

```
!>          LDV is INTEGER
!>          The leading dimension of the array V. LDV >= max(1,N).
!>
```

*INFO*

```
!>          INFO is INTEGER
!>          = 0:  successful exit
!>          < 0:  if INFO = -i, the i-th argument had an illegal value.
!>
```

**Author**

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

Definition at line **128** of file **sgebak.f**.

### subroutine zgebak (character job, character side, integer n, integer ilo, integer ihi, double precision, dimension( \* ) scale, integer m, complex\*16, dimension( ldv, \* ) v, integer ldv, integer info)

**ZGEBAK**

**Purpose:**

```
!>
!> ZGEBAK forms the right or left eigenvectors of a complex general
!> matrix by backward transformation on the computed eigenvectors of the
!> balanced matrix output by ZGEBAL.
!>
```

**Parameters**

*JOB*

```
!>          JOB is CHARACTER*1
!>          Specifies the type of backward transformation required:
!>          = 'N': do nothing, return immediately;
!>          = 'P': do backward transformation for permutation only;
!>          = 'S': do backward transformation for scaling only;
!>          = 'B': do backward transformations for both permutation and
!>                 scaling.
!>          JOB must be the same as the argument JOB supplied to ZGEBAL.
!>
```

*SIDE*

```
!>          SIDE is CHARACTER*1
!>          = 'R':  V contains right eigenvectors;
!>          = 'L':  V contains left eigenvectors.
!>
```

*N*

```
!>          N is INTEGER
!>          The number of rows of the matrix V.  N >= 0.
!>
```

*ILO*

```
!>          ILO is INTEGER
!>
```

*IHI*

```
!>          IHI is INTEGER
!>          The integers ILO and IHI determined by ZGEBAL.
!>          1 <= ILO <= IHI <= N, if N > 0; ILO=1 and IHI=0, if N=0.
!>
```

*SCALE*

```
!>          SCALE is DOUBLE PRECISION array, dimension (N)
!>          Details of the permutation and scaling factors, as returned
!>          by ZGEBAL.
!>
```

*M*

```
!>          M is INTEGER
!>          The number of columns of the matrix V.  M >= 0.
!>
```

*V*

```
!>          V is COMPLEX*16 array, dimension (LDV,M)
!>          On entry, the matrix of right or left eigenvectors to be
!>          transformed, as returned by ZHSEIN or ZTREVC.
!>          On exit, V is overwritten by the transformed eigenvectors.
!>
```

*LDV*

```
!>          LDV is INTEGER
!>          The leading dimension of the array V. LDV >= max(1,N).
!>
```

*INFO*

```
!>          INFO is INTEGER
!>          = 0:  successful exit
!>          < 0:  if INFO = -i, the i-th argument had an illegal value.
!>
```

**Author**

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

Definition at line **129** of file **zgebak.f**.

## Author

Generated automatically by Doxygen for LAPACK from the source code.
