Note: before using this routine, please read the Users' Note for your implementation to check the interpretation of bold italicised terms and other implementation-dependent details.
F06FSF generates details of a real elementary reflection
(Householder matrix),
P, such that
Pαx=β0
where P is orthogonal, α and β are real scalars, and x is an n-element real vector.
P is given in the form
P=I-1ζζzζzT,
where z is an n-element real vector and ζ is a real scalar. (This form is compatible with that used by LINPACK.)
If the elements of x are all zero, or if the elements of x are all less than tol×α in absolute value, then ζ is set to 0 and P can be taken to be the unit matrix. Otherwise ζ always lies in the range 1,2.
4 References
None.
5 Parameters
1: N – INTEGERInput
On entry: n, the number of elements in x and z.
2: ALPHA – REAL (KIND=nag_wp)Input/Output
On entry: the scalar α.
On exit: the scalar β.
3: X(*) – REAL (KIND=nag_wp) arrayInput/Output
Note: the dimension of the array X
must be at least
max1,1+N-1×INCX.
On entry: the n-element vector x.
xi must be stored in X1+i-1×INCX, for i=1,2,…,N.