next up previous print clean
Next: INTERFACES FOR OTHER USER-DEFINABLE Up: INTERFACES FOR OPERATOR-DEFINITION MODULES Previous: Interface: map_amp

Interface: oper_domain

  The oper_domain function computes the operator domain for spraying-like operators. The operator is applied in two steps: first by spraying the input traces into an intermediate output space. Then, the intermediate traces are summed into the real output space.

The operator domain is defined in the intermediate output space. This intermediate output space is centered around the input traces, and is usually the most convenient to define the operator itself. The coordinates of the intermediate traces in the intermediate space are stored in the inp_cent_coord array. The operator aperture is defined by the shape of the array inp_cent_coord.

When the mapping between the intermediate space and the real output space is time-invariant, the midpoint coordinates of the intermediate traces in the real output space are stored in the out_geom%irr structure. When this mapping is time-variant, the midpoint coordinates in the real output space, of each sample in the intermediate traces, are stored in the out_coord array. The information on the ouput mapping is used by the spatial interpolator within Genkir3D.

function oper_domain (inv_map,inv_amp,inp_geom,out_geom, &
                      inp_cent_coord, out_coord) result (stat)

integer :: stat logical, intent(in) :: inv_map,inv_amp type (seis3d_geom_type), intent(in) :: inp_geom type (seis3d_geom_type), intent(inout) :: out_geom real, pointer, dimension (:,:,:) :: inp_cent_coord real, pointer, dimension (:,:,:) :: out_coord

2|c|Scalar arguments  
Name Description
stat Status of the call. Set to 0 if successful
inv_map Compute mapping of inverse operator
inv_amp Compute amplitude of inverse operator

2|c|Derived-type arguments  
Name Description
inp_geom Geometry of input traces
out_geom Geometry of output traces

3|c|Array arguments    
Name Description Shape
inp_cent_coord Input centered coordinates (-nh_z1:nh_z1,-nh_z2:nh_z2,2)
out_coord Map from intermediate (n_tz_out,
  samples to output samples (2*nh_z1+1)*(2*nh_z2+1),2)


next up previous print clean
Next: INTERFACES FOR OTHER USER-DEFINABLE Up: INTERFACES FOR OPERATOR-DEFINITION MODULES Previous: Interface: map_amp
Stanford Exploration Project
7/5/1998