# larfgp - Man Page

larfgp: generate Householder reflector, beta ≥ 0

## Synopsis

### Functions

subroutine clarfgp (n, alpha, x, incx, tau)
CLARFGP generates an elementary reflector (Householder matrix) with non-negative beta.
subroutine dlarfgp (n, alpha, x, incx, tau)
DLARFGP generates an elementary reflector (Householder matrix) with non-negative beta.
subroutine slarfgp (n, alpha, x, incx, tau)
SLARFGP generates an elementary reflector (Householder matrix) with non-negative beta.
subroutine zlarfgp (n, alpha, x, incx, tau)
ZLARFGP generates an elementary reflector (Householder matrix) with non-negative beta.

## Function Documentation

### subroutine clarfgp (integer n, complex alpha, complex, dimension( * ) x, integer incx, complex tau)

CLARFGP generates an elementary reflector (Householder matrix) with non-negative beta.

Purpose:

``` CLARFGP generates a complex elementary reflector H of order n, such
that

H**H * ( alpha ) = ( beta ),   H**H * H = I.
(   x   )   (   0  )

where alpha and beta are scalars, beta is real and non-negative, and
x is an (n-1)-element complex vector.  H is represented in the form

H = I - tau * ( 1 ) * ( 1 v**H ) ,
( v )

where tau is a complex scalar and v is a complex (n-1)-element
vector. Note that H is not hermitian.

If the elements of x are all zero and alpha is real, then tau = 0
and H is taken to be the unit matrix.```
Parameters

N

```          N is INTEGER
The order of the elementary reflector.```

ALPHA

```          ALPHA is COMPLEX
On entry, the value alpha.
On exit, it is overwritten with the value beta.```

X

```          X is COMPLEX array, dimension
(1+(N-2)*abs(INCX))
On entry, the vector x.
On exit, it is overwritten with the vector v.```

INCX

```          INCX is INTEGER
The increment between elements of X. INCX > 0.```

TAU

```          TAU is COMPLEX
The value tau.```
Author

Univ. of Tennessee

Univ. of California Berkeley

NAG Ltd.

Definition at line 103 of file clarfgp.f.

### subroutine dlarfgp (integer n, double precision alpha, double precision, dimension( * ) x, integer incx, double precision tau)

DLARFGP generates an elementary reflector (Householder matrix) with non-negative beta.

Purpose:

``` DLARFGP generates a real elementary reflector H of order n, such
that

H * ( alpha ) = ( beta ),   H**T * H = I.
(   x   )   (   0  )

where alpha and beta are scalars, beta is non-negative, and x is
an (n-1)-element real vector.  H is represented in the form

H = I - tau * ( 1 ) * ( 1 v**T ) ,
( v )

where tau is a real scalar and v is a real (n-1)-element
vector.

If the elements of x are all zero, then tau = 0 and H is taken to be
the unit matrix.```
Parameters

N

```          N is INTEGER
The order of the elementary reflector.```

ALPHA

```          ALPHA is DOUBLE PRECISION
On entry, the value alpha.
On exit, it is overwritten with the value beta.```

X

```          X is DOUBLE PRECISION array, dimension
(1+(N-2)*abs(INCX))
On entry, the vector x.
On exit, it is overwritten with the vector v.```

INCX

```          INCX is INTEGER
The increment between elements of X. INCX > 0.```

TAU

```          TAU is DOUBLE PRECISION
The value tau.```
Author

Univ. of Tennessee

Univ. of California Berkeley

NAG Ltd.

Definition at line 103 of file dlarfgp.f.

### subroutine slarfgp (integer n, real alpha, real, dimension( * ) x, integer incx, real tau)

SLARFGP generates an elementary reflector (Householder matrix) with non-negative beta.

Purpose:

``` SLARFGP generates a real elementary reflector H of order n, such
that

H * ( alpha ) = ( beta ),   H**T * H = I.
(   x   )   (   0  )

where alpha and beta are scalars, beta is non-negative, and x is
an (n-1)-element real vector.  H is represented in the form

H = I - tau * ( 1 ) * ( 1 v**T ) ,
( v )

where tau is a real scalar and v is a real (n-1)-element
vector.

If the elements of x are all zero, then tau = 0 and H is taken to be
the unit matrix.```
Parameters

N

```          N is INTEGER
The order of the elementary reflector.```

ALPHA

```          ALPHA is REAL
On entry, the value alpha.
On exit, it is overwritten with the value beta.```

X

```          X is REAL array, dimension
(1+(N-2)*abs(INCX))
On entry, the vector x.
On exit, it is overwritten with the vector v.```

INCX

```          INCX is INTEGER
The increment between elements of X. INCX > 0.```

TAU

```          TAU is REAL
The value tau.```
Author

Univ. of Tennessee

Univ. of California Berkeley

NAG Ltd.

Definition at line 103 of file slarfgp.f.

### subroutine zlarfgp (integer n, complex*16 alpha, complex*16, dimension( * ) x, integer incx, complex*16 tau)

ZLARFGP generates an elementary reflector (Householder matrix) with non-negative beta.

Purpose:

``` ZLARFGP generates a complex elementary reflector H of order n, such
that

H**H * ( alpha ) = ( beta ),   H**H * H = I.
(   x   )   (   0  )

where alpha and beta are scalars, beta is real and non-negative, and
x is an (n-1)-element complex vector.  H is represented in the form

H = I - tau * ( 1 ) * ( 1 v**H ) ,
( v )

where tau is a complex scalar and v is a complex (n-1)-element
vector. Note that H is not hermitian.

If the elements of x are all zero and alpha is real, then tau = 0
and H is taken to be the unit matrix.```
Parameters

N

```          N is INTEGER
The order of the elementary reflector.```

ALPHA

```          ALPHA is COMPLEX*16
On entry, the value alpha.
On exit, it is overwritten with the value beta.```

X

```          X is COMPLEX*16 array, dimension
(1+(N-2)*abs(INCX))
On entry, the vector x.
On exit, it is overwritten with the vector v.```

INCX

```          INCX is INTEGER
The increment between elements of X. INCX > 0.```

TAU

```          TAU is COMPLEX*16
The value tau.```
Author

Univ. of Tennessee

Univ. of California Berkeley