The flattening corrections for a 3-D volume can be generated in two different ways. In 2-D integration, the dips across each time-slice are integrated separately. In 3-D integration, the dips for all slices are integrated at once.
Integrating time slices independently: Beginning with input dip information across each horizon I have:
![]() |
(4) |
The analytical solution to equation (3) is found with:
![]() |
(5) |
The chief stumbling block for this approach is that the zero frequency component is neglected from the denominator of equation (5). This means that each time slice has a constant shift applied to it. It works out that this shift is equal to the average absolute time value. The danger here is if there is any noisy dip values in one slice not present in adjacent slices, the time correction to flatten a volume of data may actually swap data values. One way to prevent this is to regularize in 3-D by integrating all time-slices at once. Another way would be to adequately smooth the dip values.
Integrating all time slices at once: Beginning with my input dip data:
![]() |
(6) |
The analytical solution is found with:
![]() |
(7) |
The denominator is the Z-transform of the 3-D Laplacian. The zero frequency term of the Z-transform of the denominator is neglected. This means that the resulting surface in space will have an unknown constant shift applied to it. However, by adding the t dimension and assuming the gradient in the t direction to be all ones, I am ensuring that the integrated time varies smoothly in the t direction.
Integrating in three dimensions enforces vertical smoothness. In this case, the dip in the t direction is all ones. However, it isn't necessary to use ones. If zeros were used instead then this would ensure that the time-shifts do not change much in the t direction. By integrating in 3-D, I prevent my method from swapping sample positions in time. Unfortunately, by preventing swapping of sample values this method cannot flatten data with overturned reflections. As will be discussed later, having a smooth output is beneficial if I plan to iterate on the result to remove any residual structure caused by dip changing with depth.
A major drawback to this approach rather than the 2-D approach is it involves taking a 3-D FFT. This is more computationally taxing and may restrict the size of the data volumes being integrated.