# 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.

## Detailed Description

## 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

Univ. of Colorado Denver

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

Univ. of Colorado Denver

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

Univ. of Colorado Denver

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

Univ. of Colorado Denver

NAG Ltd.

Definition at line **103** of file **zlarfgp.f**.

## Author

Generated automatically by Doxygen for LAPACK from the source code.