The whole process of de-migration and depth migration is carried out using GOCAD which is a software for handling 3-D surfaces. The initial data are the time migrated surfaces and a velocity model that will be used during the depth migration. We assume that there exists or that we can obtain a Vrms velocity at each point of the triangulated time migrated surface.
Provided with the initial data, one can perform the first step: the (time) de-migration, in order to obtain the observed time surfaces. In the second step, we have to do the ``exact'' inverse work of zero offset acquisition, that is to say, map migration is a process that uses ray-tracing to compute the path of a ray between the de-migrated surface, equivalent to a free surface, and the future depth migrated surface. From each atom of the de-migrated surface a ray is sent with an imposed initial direction of shooting. This ray is computed taking into account the refractions at each interface cut by the ray (and previously depth migrated) and the consumption of the time t0 given by de-migration.
To check the accuracy of the method described above, I have used several examples of synthetic data: horizontal layers, dipping layers, multi-layered time models and time syncline (that produces a triplication as a time de-migrated surface). All these examples have produced good results. In particular, I had the opportunity to observe the inverse effect of time migration produced by de-migration in the case of a dipping reflector model: the generated surface is moved down dip, is less steep and elongated Yilmaz (1987).