slarfx(3F)

SLARFX - applie a real elementary reflector H to a real m by n matrix C, from either the left or the right

Showing IRIX 6.5.30 (default release). Unchanged since IRIX 6.5.

NAME
     SLARFX - applie a real elementary reflector H to a real m by n matrix C,
     from either the left or the right

SYNOPSIS
     SUBROUTINE SLARFX( SIDE, M, N, V, TAU, C, LDC, WORK )

         CHARACTER      SIDE

         INTEGER        LDC, M, N

         REAL           TAU

         REAL           C( LDC, * ), V( * ), WORK( * )

PURPOSE
     SLARFX 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'

     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.


ARGUMENTS
     SIDE    (input) CHARACTER*1
             = 'L': form  H * C
             = 'R': form  C * H

     M       (input) INTEGER
             The number of rows of the matrix C.

     N       (input) INTEGER
             The number of columns of the matrix C.

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

     TAU     (input) REAL
             The value tau in the representation of H.

     C       (input/output) REAL 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     (input) INTEGER
             The leading dimension of the array C. LDA >= (1,M).
     WORK    (workspace) REAL array, dimension
             (N) if SIDE = 'L' or (M) if SIDE = 'R' WORK is not referenced if
             H has order < 11.