is a 3D synthetic dataset that presents two geological challenges. Firstly, the structure is changing with depth, requiring multiple non-linear iterations. Secondly, a significant fault is present in the middle of the cube. Dips estimated at fault discontinuities are, in general, inaccurate and will compromise the quality of the flattening result. However, knowing the position of the fault, we pass it as a weight to equation (12). In this case, we used a binary weight of 0's at the fault (and a few samples on each side) and 1's everywhere else.
The flattening result is shown in Figure
. Notice the cube is very flat except in the area of the fault itself. This method is able to flatten this cube because we passed it a weight identifying the fault and the fault is limited laterally. That is, the tip-line of the fault is contained within the data cube, enabling dips to be summed around the fault.
The estimated
field used to flatten data can also be used to reverse the process. That is, we can use the time-shifts to unflatten data that is already flat. By unflattening flat surfaces and overlaying them on the data, we are essentially picking any or all of the horizons in the data-cube. Figure
displays every 20th horizon overlain on the synthetic data shown in Figure
. We could just as easily have displayed every horizon but the image would appear too cluttered. Notice that the horizons are well tracked even across a fault.
![]() |
![]() |
. Notice it is flat on both sides of the fault zone. (a) The horizon
slice at time=![]() |
. The gap between reflections is where the weight was applied. It successfully tracks the horizons. (a) The time slice at time=