Customarily, we have referred to data by the symbol .Now that we are dividing the data space into two parts, known and unknown (or missing), we will refer to this complete space as the model (or map) space .

There are 15 data points in Figures -.
Of the 15, 4 are known and 11 are missing.
Denote the known by *k* and the missing by *u*.
Then the sequence of missing and known
is (*u*,*u*,*u*,*u*,*k*,*u*,*k*,*k*,*k*,*u*,*u*,*u*,*u*,*u*,*u*).
Because I cannot print matrices,
please allow me to describe instead a data space of 6 values
(*m _{1}*,

Our approach is to minimize the energy in the residual, which is the filtered map (model) space. We state the fitting goals as

(1) |

(2) |

The trouble with this matrix approach is that it is awkward to program the partitioning of the operator into the known and missing parts, particularly if the application of the operator uses arcane techniques, such as those used by the fast-Fourier-transform operator or various numerical approximations to differential or partial differential operators that depend on regular data sampling. Even for the modest convolution operator, we already have a library of convolution programs that handle a variety of end effects, and it would be much nicer to use the library as it is rather than recode it for all possible geometrical arrangements of missing data values.

Note: Here I take the main goal to be the clarity of the code, not the efficiency or accuracy of the solution. So, if your problem consumes too many resources, and if you have many more known points than missing ones, maybe you should fit and ignore the suggestions below.

4/27/2004