---
name: "slarfgp.f"
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/slarfgp.f"
---

# slarfgp.f(3)

## NAME

SRC/slarfgp.f

## SYNOPSIS

### Functions/Subroutines

subroutine **slarfgp** (n, alpha, x, incx, tau)\
 **SLARFGP** generates an elementary reflector (Householder matrix) with non-negative beta.

## Function/Subroutine Documentation

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

## Author

Generated automatically by Doxygen for LAPACK from the source code.
