The theory for this section is based on this paper:
Zhou, X.-Y., Chang, X., Wang, Y.-B., Wen, X.-T., You, J.-C., & Sun, C. (2022). Non-artifact vector P- and S-wave separation for elastic reverse time migration. Petroleum Science, 19(6), 2695–2710. https://doi.org/10.1016/j.petsci.2022.08.006
One can separate the P- and S-wave components of a wavefield by
taking the divergence and the curl of the displacement field. An easy way to do
this in Salvus is to output the gradient-of-displacement and then use the
components from the resulting tensor to construct the divergence and curl
manually.
The following is an example demonstrating such a wavefield separation:
where the indices of ui represent which component of the output field to
select.
To get the divergence of the displacement field (P-wave component), simply apply
∇⋅u=∂xux+∂yuy=u0+u3.
Similarly, to get the curl of the displacement field (S-wave component), use
∇×u=∂xuy−∂yux=u2−u1.
Practical Advice
The wavefield which is computed during a Salvus simulation can be opened using the WavefieldOutput.
Note that the regularly gridded wavefield output has dimensions [n_time_slices, n_components, n_x, n_y]. The subscripts for u effectively represent which dimension in the wavefield output should be extracted along axis=1.
For example, the divergence of the wavefield output could be obtained using something anaologous to
We use cookies to analyze our traffic, but won't track you until explicit consent is given. Using our contact form will create relevant cookies and transmit data to third party services to keep track of your request. Read more about how we use personal information in our Privacy Policy.