One of the major problems in numerically simulating waves traveling in the Earth is that an artificial boundary must be introduced to produce unique solutions. To eliminate the spurious reflections introduced by this artificial boundary, we use a damping expression based on analogies to shock absorbers. This method can reduce the amplitude of the reflected wave to any pre-specified value and is successful for waves at any angle of incidence. The method can eliminate unwanted reflections from the surface, reflections at the corners of the model, and waves reflected off an interface that strike the artificial boundary.Many of the boundary conditions currently used in the numerical solution of waves are approximations to perfectly absorbing boundary conditions and depend upon the angle of incidence of the incoming wave at the artificial boundary. Stability problems often occur with these boundary conditions. The method we use at the artificial boundary allows use of stable Dirichlet or von Neumann conditions.Since the surface motion is easily measured when the waves are induced by normal seismic techniques, approximations of surface waves are needed to obtain information on Rayleigh waves. An implicit finite-difference scheme that is relatively easy to incorporate into existing numerical simulators is used to obtain the surface data for the forward finite-difference approximations.