Compute forgetting factor required for streaming input data
The growth in the QR decomposition can be seen by looking at the magnitude of the first element of the upper-triangular factor , which is equal to the Euclidean norm of the first column of matrix ,
To see this, create matrix as a column of ones of length and compute of the economy-size QR decomposition.
n = 1e4; A = ones(n,1);
R = fixed.qlessQR(A)
R = 100.0000
ans = 100
ans = 100
The diagonal elements of the upper-triangular factor of the QR decomposition may be positive, negative, or zero, but
fixed.qrAB always return the diagonal elements of as non-negative.
In a real-time application, such as when data is streaming continuously from a radar array, you can update the QR decomposition with an exponential forgetting factor where . Use the
fixed.forgettingFactor function to compute a forgetting factor that acts as if the matrix were being integrated over rows to maintain a gain of about . The relationship between and is .
m = 16; alpha = fixed.forgettingFactor(m); R_alpha = fixed.qlessQR(A,alpha)
R_alpha = 3.9377
ans = 4
If you are working with a system and have been given a forgetting factor , and want to know the effective number of rows that you are integrating over, then you can use the
fixed.forgettingFactorInverse function. The relationship between and is .
ans = 16
m— Number of rows in matrix A
Number of rows in matrix A, specified as a positive integer-valued scalar.
alpha— Forgetting factor
Forgetting factor, returned as a scalar.
fixed.forgettingFactor to compute a forgetting factor for these
functions and blocks.
In real-time applications, such as when data is streaming continuously from a radar array , the QR decomposition is often computed continuously as each new row of data arrives. In these systems, the previously computed upper-triangular matrix, R, is updated and weighted by forgetting factor ɑ, where 0 < ɑ < 1. This computation treats the matrix A as if it is infinitely tall. The series of transformations is as follows.
Without the forgetting factor ɑ, the values of R would grow without bound.
With the forgetting factor, the gain in R is
The gain of computing R without a forgetting factor from an m-by-n matrix A is . Therefore,
 Rader, C.M. "VLSI Systolic Arrays for Adaptive Nulling." IEEE Signal Processing Magazine (July 1996): 29-49.