1. A method of steering a tool, the method comprising: applying at least one signal to a grid comprising a plurality of model cells, the grid forming a model space, each model cell having a plurality of stress values associated with a plurality of stress nodes and a plurality of velocity values associated with a plurality of velocity nodes staggered from the stress nodes, wherein the at least one signal represents a seismic shot or seismic traces received by an array of seismic sensors; propagating the at least one signal as a wave into the model space by alternately updating the stress values and the velocity values to obtain a time-dependent wave field associated with the signal, wherein said updating stress values includes, for each model cell; determining spatial derivatives of the velocity values for the model cell; interpolating the spatial derivatives to multiple stress nodes within the model cell; and for each stress node within the model cell, combining the spatial derivatives associated with that stress node to update at least one stress value associated with that stress node; and repeating said applying and propagating operations to obtain a plurality of time-dependent wave fields; analyzing a counterpart source and receive one or more wave fields to obtain matching information; stacking the matching information to generate an image of a subsurface region represented by the model space; and steering a tool to drill a wellbore using the generated image.