Loading...
Searching...
No Matches
larfy: Apply Householder reflector to symmetric/Hermitian matrix
Dense LA » MAGMA BLAS and Auxiliary » Householder reflectors

## Functions

void | magma_clarfy (magma_int_t n, magmaFloatComplex *A, magma_int_t lda, const magmaFloatComplex *V, const magmaFloatComplex *TAU, magmaFloatComplex *work)
| magma_clarfy applies an elementary reflector, or Householder matrix, H, to a n-by-n Hermitian matrix C, from both the left and the right.
void | magma_dlarfy (magma_int_t n, double *A, magma_int_t lda, const double *V, const double *TAU, double *work)
| magma_dlarfy applies an elementary reflector, or Householder matrix, H, to a n-by-n symmetric matrix C, from both the left and the right.
void | magma_slarfy (magma_int_t n, float *A, magma_int_t lda, const float *V, const float *TAU, float *work)
| magma_slarfy applies an elementary reflector, or Householder matrix, H, to a n-by-n symmetric matrix C, from both the left and the right.
void | magma_zlarfy (magma_int_t n, magmaDoubleComplex *A, magma_int_t lda, const magmaDoubleComplex *V, const magmaDoubleComplex *TAU, magmaDoubleComplex *work)
| magma_zlarfy applies an elementary reflector, or Householder matrix, H, to a n-by-n Hermitian matrix C, from both the left and the right.

## Detailed Description

## Function Documentation

## magma_clarfy()

void magma_clarfy | ( | magma_int_t | n,
|  | magmaFloatComplex * | A,
|  | magma_int_t | lda,
|  | const magmaFloatComplex * | V,
|  | const magmaFloatComplex * | TAU,
|  | magmaFloatComplex * | work )

magma_clarfy applies an elementary reflector, or Householder matrix, H, to a n-by-n Hermitian matrix C, from both the left and the right.

H is represented in the form

H = I - tau * v * v'

where tau is a scalar and v is a vector.

If tau is zero, then H is taken to be the unit matrix.

Parameters

  [in] | n | The number of rows and columns of the matrix C. n >= 0.
  [in,out] | A | COMPLEX array, dimension (lda, n) On entry, the Hermetian matrix A. On exit, A is overwritten by H * A * H'.
  [in] | lda | The leading dimension of the array A. lda >= max(1,n).
  [in] | V | The vector V that contains the Householder reflectors.
  [in] | TAU | The value tau.
  [out] | work | Workspace.

## magma_dlarfy()

void magma_dlarfy | ( | magma_int_t | n,
|  | double * | A,
|  | magma_int_t | lda,
|  | const double * | V,
|  | const double * | TAU,
|  | double * | work )

magma_dlarfy applies an elementary reflector, or Householder matrix, H, to a n-by-n symmetric matrix C, from both the left and the right.

H is represented in the form

H = I - tau * v * v'

where tau is a scalar and v is a vector.

If tau is zero, then H is taken to be the unit matrix.

Parameters

  [in] | n | The number of rows and columns of the matrix C. n >= 0.
  [in,out] | A | DOUBLE PRECISION array, dimension (lda, n) On entry, the Hermetian matrix A. On exit, A is overwritten by H * A * H'.
  [in] | lda | The leading dimension of the array A. lda >= max(1,n).
  [in] | V | The vector V that contains the Householder reflectors.
  [in] | TAU | The value tau.
  [out] | work | Workspace.

## magma_slarfy()

void magma_slarfy | ( | magma_int_t | n,
|  | float * | A,
|  | magma_int_t | lda,
|  | const float * | V,
|  | const float * | TAU,
|  | float * | work )

magma_slarfy applies an elementary reflector, or Householder matrix, H, to a n-by-n symmetric matrix C, from both the left and the right.

H is represented in the form

H = I - tau * v * v'

where tau is a scalar and v is a vector.

If tau is zero, then H is taken to be the unit matrix.

Parameters

  [in] | n | The number of rows and columns of the matrix C. n >= 0.
  [in,out] | A | REAL array, dimension (lda, n) On entry, the Hermetian matrix A. On exit, A is overwritten by H * A * H'.
  [in] | lda | The leading dimension of the array A. lda >= max(1,n).
  [in] | V | The vector V that contains the Householder reflectors.
  [in] | TAU | The value tau.
  [out] | work | Workspace.

## magma_zlarfy()

void magma_zlarfy | ( | magma_int_t | n,
|  | magmaDoubleComplex * | A,
|  | magma_int_t | lda,
|  | const magmaDoubleComplex * | V,
|  | const magmaDoubleComplex * | TAU,
|  | magmaDoubleComplex * | work )

magma_zlarfy applies an elementary reflector, or Householder matrix, H, to a n-by-n Hermitian matrix C, from both the left and the right.

H is represented in the form

H = I - tau * v * v'

where tau is a scalar and v is a vector.

If tau is zero, then H is taken to be the unit matrix.

Parameters

  [in] | n | The number of rows and columns of the matrix C. n >= 0.
  [in,out] | A | COMPLEX*16 array, dimension (lda, n) On entry, the Hermetian matrix A. On exit, A is overwritten by H * A * H'.
  [in] | lda | The leading dimension of the array A. lda >= max(1,n).
  [in] | V | The vector V that contains the Householder reflectors.
  [in] | TAU | The value tau.
  [out] | work | Workspace.