dlarfx.f

Section: LAPACK (3)
Updated: Tue Nov 14 2017
Page Index

dlarfx.f

SYNOPSIS

Functions/Subroutines

subroutine dlarfx (SIDE, M, N, V, TAU, C, LDC, WORK)
DLARFX applies an elementary reflector to a general rectangular matrix, with loop unrolling when the reflector has order ≤ 10.

Function/Subroutine Documentation

subroutine dlarfx (character SIDE, integer M, integer N, double precision, dimension( * ) V, double precision TAU, double precision, dimension( ldc, * ) C, integer LDC, double precision, dimension( * ) WORK)

DLARFX applies an elementary reflector to a general rectangular matrix, with loop unrolling when the reflector has order ≤ 10.

Purpose:

``` DLARFX applies a real elementary reflector H to a real m by n
matrix C, from either the left or the right. H is represented in the
form

H = I - tau * v * v**T

where tau is a real scalar and v is a real vector.

If tau = 0, then H is taken to be the unit matrix

This version uses inline code if H has order < 11.
```

Parameters:

SIDE

```          SIDE is CHARACTER*1
= 'L': form  H * C
= 'R': form  C * H
```

M

```          M is INTEGER
The number of rows of the matrix C.
```

N

```          N is INTEGER
The number of columns of the matrix C.
```

V

```          V is DOUBLE PRECISION array, dimension (M) if SIDE = 'L'
or (N) if SIDE = 'R'
The vector v in the representation of H.
```

TAU

```          TAU is DOUBLE PRECISION
The value tau in the representation of H.
```

C

```          C is DOUBLE PRECISION array, dimension (LDC,N)
On entry, the m by n matrix C.
On exit, C is overwritten by the matrix H * C if SIDE = 'L',
or C * H if SIDE = 'R'.
```

LDC

```          LDC is INTEGER
The leading dimension of the array C. LDA >= (1,M).
```

WORK

```          WORK is DOUBLE PRECISION array, dimension
(N) if SIDE = 'L'
or (M) if SIDE = 'R'
WORK is not referenced if H has order < 11.
```

Author:

Univ. of Tennessee

Univ. of California Berkeley