Provided by: liblapack-doc_3.12.1-4_all bug

NAME

       larfx - larfx: apply Householder reflector, unrolled

SYNOPSIS

   Functions
       subroutine clarfx (side, m, n, v, tau, c, ldc, work)
           CLARFX applies an elementary reflector to a general rectangular matrix, with loop unrolling when the
           reflector has order ≤ 10.
       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.
       subroutine slarfx (side, m, n, v, tau, c, ldc, work)
           SLARFX applies an elementary reflector to a general rectangular matrix, with loop unrolling when the
           reflector has order ≤ 10.
       subroutine zlarfx (side, m, n, v, tau, c, ldc, work)
           ZLARFX applies an elementary reflector to a general rectangular matrix, with loop unrolling when the
           reflector has order ≤ 10.

Detailed Description

Function Documentation

   subroutine clarfx (character side, integer m, integer n, complex, dimension( * ) v, complex tau, complex,
       dimension( ldc, * ) c, integer ldc, complex, dimension( * ) work)
       CLARFX applies an elementary reflector to a general rectangular matrix, with loop unrolling when the
       reflector has order ≤ 10.

       Purpose:

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

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

            where tau is a complex scalar and v is a complex 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 COMPLEX array, dimension (M) if SIDE = 'L'
                                                   or (N) if SIDE = 'R'
                     The vector v in the representation of H.

           TAU

                     TAU is COMPLEX
                     The value tau in the representation of H.

           C

                     C is COMPLEX 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. LDC >= max(1,M).

           WORK

                     WORK is COMPLEX 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

           Univ. of Colorado Denver

           NAG Ltd.

   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. LDC >= (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

           Univ. of Colorado Denver

           NAG Ltd.

   subroutine slarfx (character side, integer m, integer n, real, dimension( * ) v, real tau, real, dimension(
       ldc, * ) c, integer ldc, real, dimension( * ) work)
       SLARFX applies an elementary reflector to a general rectangular matrix, with loop unrolling when the
       reflector has order ≤ 10.

       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**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 REAL array, dimension (M) if SIDE = 'L'
                                                or (N) if SIDE = 'R'
                     The vector v in the representation of H.

           TAU

                     TAU is REAL
                     The value tau in the representation of H.

           C

                     C is 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

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

           WORK

                     WORK is REAL 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

           Univ. of Colorado Denver

           NAG Ltd.

   subroutine zlarfx (character side, integer m, integer n, complex*16, dimension( * ) v, complex*16 tau,
       complex*16, dimension( ldc, * ) c, integer ldc, complex*16, dimension( * ) work)
       ZLARFX applies an elementary reflector to a general rectangular matrix, with loop unrolling when the
       reflector has order ≤ 10.

       Purpose:

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

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

            where tau is a complex scalar and v is a complex 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 COMPLEX*16 array, dimension (M) if SIDE = 'L'
                                                   or (N) if SIDE = 'R'
                     The vector v in the representation of H.

           TAU

                     TAU is COMPLEX*16
                     The value tau in the representation of H.

           C

                     C is COMPLEX*16 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. LDC >= max(1,M).

           WORK

                     WORK is COMPLEX*16 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

           Univ. of Colorado Denver

           NAG Ltd.

Author

       Generated automatically by Doxygen for LAPACK from the source code.

Version 3.12.0                              Sun Jul 20 2025 01:40:05                                    larfx(3)