The residual correction method (RCM) is a numerically stable, computationally feasible iterative reconstruction algorithm that uses orthogonal decomposition with separable basis functions based on a priori information. RCM is a Gauss-Seidel algorithm that has been modified to take advantage of the special structure of the ionospheric tomography problem. Gauss-Seidel algorithms are iterative methods that are used to solve large systems of linear equations [Atk78]. RCM first solves for an approximate solution then uses the residual vector to calculate a better approximation.
The residual correction method is a new ionospheric tomography algorithm that provides a numerically stable way of inverting the system model equation (8). The well-conditioned submatrices exist because of the geometry of the problem and the way in which the basis functions are constructed. RCM iterates through the submatrices, using the residual vector from the previous iteration as the new data vector. In this way, an approximate solution is first obtained then improved as the iteration continues. In addition, the submatrices can be chosen so that the rate of convergence is accelerated during the first few iterations.
Suppose there are P vertical basis functions, Q horizontal basis
functions, and T data points. Then the system matrix A is
and contains a row for each data point (TEC value) and a
column for each basis function. Let the columns of A be ordered so
that all the basis functions containing the first vertical basis
function come first, followed by all the basis functions containing
the second vertical basis function, etc. The matrix A and vector
x can then be partitioned as
Since each of the submatrices of A contains the columns corresponding to only one vertical basis function, when the submatrices are considered separately the problem reduces from one two-dimensional reconstruction to a set of one-dimensional reconstructions. Each one of the one-dimensional reconstructions is much easier than the complete reconstruction, because each one-dimensional reconstruction solves only for the horizontal component. The condition numbers of the submatrices of A are typically several orders of magnitude smaller than the condition numbers of the complete matrix A. Therefore it is much easier to calculate an accurate inversion for each of the submatrices than for the complete matrix. Define the generalized inverses of the submatrices as
where it has been assumed that each of the submatrices defines an over determined problem. Then the RCM algorithm is initialized using
The vector
is the initial solution vector, and the vector
is the initial residual vector. The algorithm proceeds by
iterating through
where the subscripts on A and x are interpreted modulo P.
Equation (24) calculates a correction to the solution
on the basis of one submatrix of A. Equation (25) adds the
correction to the solution vector, and equation (26)
adjusts the residual vector to reflect the new solution. Each
iteration of (24), (25), and
(26) will be called a subiteration, and a set of P
subiterations, where P is the number of vertical basis functions, will
be called an iteration. The magnitude of the residual vector
is reduced at each subiteration, and the iteration is halted
when the magnitude of
is decreasing at a sufficiently slow
rate. RCM converges to a least squares solution, though not
necessarily the minimum norm least squares solution. In other words,
in cases where there is more than one solution that minimizes
, the solution calculated by RCM is not necessarily the one that
minimizes
.
Unlike many other algorithms, the RCM algorithm is initialized with a solution vector of zero, as shown by (22), rather than with a nonzero initial guess. The solution after the first subiteration functions as the initial guess, so there is no need for any other initialization. RCM does not guarantee a nonnegative solution; however, since RCM performs reconstruction by iteratively calculating successively better approximations, consistent data will tend to produce a nonnegative solution.