.. DO NOT EDIT. .. THIS FILE WAS AUTOMATICALLY GENERATED BY SPHINX-GALLERY. .. TO MAKE CHANGES, EDIT THE SOURCE PYTHON FILE: .. "api/gallery/seismology/plot_01_poisson_two_elastic_waves.py" .. LINE NUMBERS ARE GIVEN BELOW. .. only:: html .. note:: :class: sphx-glr-download-link-note :ref:`Go to the end ` to download the full example code or to run this example in your browser via JupyterLite. .. rst-class:: sphx-glr-example-title .. _sphx_glr_api_gallery_seismology_plot_01_poisson_two_elastic_waves.py: Poisson's two elastic waves (1829) ================================== Siméon Denis Poisson showed that an elastic solid carries two kinds of wave: a faster compressional wave and a slower shear wave. When the two Lamé constants are equal (a Poisson solid) the speed ratio is exactly sqrt(3) and Poisson's ratio is 1/4. With no rigidity the shear wave vanishes, as in a fluid. .. GENERATED FROM PYTHON SOURCE LINES 10-36 .. image-sg:: /api/gallery/seismology/images/sphx_glr_plot_01_poisson_two_elastic_waves_001.png :alt: Bulk modulus 130 GPa: no rigidity, no S wave :srcset: /api/gallery/seismology/images/sphx_glr_plot_01_poisson_two_elastic_waves_001.png :class: sphx-glr-single-img .. code-block:: Python import matplotlib.pyplot as plt import numpy as np from earthsciencekit.seismology import p_wave_speed, poisson_ratio, s_wave_speed density, bulk = 3300.0, 1.3e11 shear = np.linspace(0, 1.0e11, 201) vp = p_wave_speed(bulk, shear, density) vs = s_wave_speed(shear, density) # Poisson solid: lambda = mu, so the bulk modulus is 5 mu / 3. mu = 6e10 vp_poisson, vs_poisson = p_wave_speed(5 * mu / 3, mu, density), s_wave_speed(mu, density) assert np.isclose(vp_poisson / vs_poisson, np.sqrt(3)) assert np.isclose(poisson_ratio(vp_poisson, vs_poisson), 0.25) assert vs[0] == 0 and vp[0] > 0 fig, ax = plt.subplots() ax.plot(shear / 1e9, vp / 1e3, label="P (compressional)") ax.plot(shear / 1e9, vs / 1e3, label="S (shear)") ax.axvline(mu / 1e9, color="k", ls=":", lw=1) ax.set(xlabel="shear modulus [GPa]", ylabel="wave speed [km/s]", title=f"Bulk modulus {bulk / 1e9:.0f} GPa: no rigidity, no S wave") ax.legend() plt.show() .. rst-class:: sphx-glr-timing **Total running time of the script:** (0 minutes 0.075 seconds) .. _sphx_glr_download_api_gallery_seismology_plot_01_poisson_two_elastic_waves.py: .. only:: html .. container:: sphx-glr-footer sphx-glr-footer-example .. container:: lite-badge .. image:: images/jupyterlite_badge_logo.svg :target: ../../../lite/lab/index.html?path=api/gallery/seismology/plot_01_poisson_two_elastic_waves.ipynb :alt: Launch JupyterLite :width: 150 px .. container:: sphx-glr-download sphx-glr-download-jupyter :download:`Download Jupyter notebook: plot_01_poisson_two_elastic_waves.ipynb ` .. container:: sphx-glr-download sphx-glr-download-python :download:`Download Python source code: plot_01_poisson_two_elastic_waves.py ` .. container:: sphx-glr-download sphx-glr-download-zip :download:`Download zipped: plot_01_poisson_two_elastic_waves.zip ` .. only:: html .. rst-class:: sphx-glr-signature `Gallery generated by Sphinx-Gallery `_