next up previous print clean
Next: Spraying mapping Up: SPATIAL MAPPING BETWEEN INPUT Previous: Trace-to-trace mapping

Gathering mapping

 This kind of mapping is ideal when the operator is function of the output location through a complex relationship that is usually precomputed and appropriately stored in tables. Important example of such operators are Kirchhoff depth migrations, that need tables of precomputed Green functions. The associated data flow is optimal for accessing the mapping tables in small subsets, and maximizing their reuse and consequently minimizing the associated I/Os.

This output-oriented mapping requires that the data structure that describes the geometry of the whole output (out_geom) is passed to genkir3d. The access to the output data can be blocked along all the output space dimensions; that is the midpoint axes and the offset and azimuth axes. The geometry of the blocks is specified with the argument out_geom_block. To localize the access to the mapping tables, the inner loops over the output space are in the midpoint coordinates (cmp_x and cmp_y) of out_geom_block.

A Sep3d data set can be either gridded or ungridded. An ungridded data set is accessed sequentially. The data are read multiple times, as many times as the number of output blocks. A gridded data set is accessed selectively according to the offset and the azimuth of the output block being currently built. Furthermore, for efficiency purposes, the maximum aperture of the operator along the midpoint dimensions can be specified in the param data structure, limiting the ranges of midpoints of the input data being accessed for each output block.


next up previous print clean
Next: Spraying mapping Up: SPATIAL MAPPING BETWEEN INPUT Previous: Trace-to-trace mapping
Stanford Exploration Project
7/5/1998