Basic operators and adjoints |

A **row** is a summation operation.

A **column** is an impulse response.

If the inner loop of a matrix multiply ranges within a

**row,** the operator is called *sum* or *pull*.

**column,** the operator is called *spray* or *push*.

Generally, inputs and outputs are high dimensional, such as signals or images.
Push gives ugly outputs. Some output locations may be empty,
each having an erratic number of contributions.
Consequently, most data processing (adjoint) is done by *pull*.

A basic aspect of adjointness is that the
adjoint of a row matrix operator is a column matrix operator.
For example,
the row operator

(1) |

(2) |

The adjoint of a sum of terms is a collection of assignments. |

- Adjoint derivative
- Transient convolution
- Internal convolution
- Zero padding is the transpose of truncation
- Adjoints of products are reverse-ordered products of adjoints.
- Nearest-neighbor coordinates
- Data-push binning
- Linear interpolation
- Spray and sum : scatter and gather
- Causal and leaky integration
- Backsolving, polynomial division and deconvolution
- The basic low-cut filter
- Smoothing with box and triangle
- Nearest-neighbor normal moveout (NMO)
- Coding chains and arrays

Basic operators and adjoints |

2014-09-27