.. DO NOT EDIT. .. THIS FILE WAS AUTOMATICALLY GENERATED BY SPHINX-GALLERY. .. TO MAKE CHANGES, EDIT THE SOURCE PYTHON FILE: .. "api/gallery/plate_tectonics/plot_09_wilson_transform_faults.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_plate_tectonics_plot_09_wilson_transform_faults.py: Wilson's transform faults (1965) ================================ J. Tuzo Wilson recognised that the faults offsetting mid-ocean ridges slip only between the two ridge tips, and in the opposite sense to the apparent offset. There the boundary is parallel to the relative motion, so all of the full spreading rate is strike slip and none of it is convergence. .. GENERATED FROM PYTHON SOURCE LINES 10-40 .. image-sg:: /api/gallery/plate_tectonics/images/sphx_glr_plot_09_wilson_transform_faults_001.png :alt: Slip only between the ridge tips :srcset: /api/gallery/plate_tectonics/images/sphx_glr_plot_09_wilson_transform_faults_001.png :class: sphx-glr-single-img .. code-block:: Python import matplotlib.pyplot as plt import numpy as np from earthsciencekit.plate_tectonics import convergence_rate, fault_slip_rate, full_spreading_rate from earthsciencekit.units import convert full = full_spreading_rate(convert(2.0, "cm/year", "m/s")) offset = 200e3 x = np.linspace(-150e3, offset + 150e3, 701) active = (x > 0) & (x < offset) slip = np.where(active, fault_slip_rate(full, np.pi / 2), 0.0) assert np.isclose(float(fault_slip_rate(full, np.pi / 2)), full) assert abs(float(convergence_rate(full, np.pi / 2))) < 1e-12 * full fig, (top, bottom) = plt.subplots(2, 1, sharex=True, figsize=(8, 5), height_ratios=[3, 2]) top.plot([0, 0], [0, 150], "r", lw=3, label="ridge") top.plot([offset / 1e3] * 2, [-150, 0], "r", lw=3) top.plot([0, offset / 1e3], [0, 0], "k", lw=2, label="transform fault") top.plot([-150, 0], [0, 0], "k:", label="fracture zone") top.plot([offset / 1e3, (offset + 150e3) / 1e3], [0, 0], "k:") top.annotate("", (140, 15), (60, 15), arrowprops={"arrowstyle": "->"}) top.annotate("", (60, -15), (140, -15), arrowprops={"arrowstyle": "->"}) top.set(ylabel="along ridge [km]", title="Slip only between the ridge tips") top.legend(loc="upper right") bottom.plot(x / 1e3, convert(slip, "m/s", "cm/year")) bottom.set(xlabel="along the fault [km]", ylabel="slip rate [cm/year]") fig.tight_layout() plt.show() .. rst-class:: sphx-glr-timing **Total running time of the script:** (0 minutes 0.166 seconds) .. _sphx_glr_download_api_gallery_plate_tectonics_plot_09_wilson_transform_faults.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/plate_tectonics/plot_09_wilson_transform_faults.ipynb :alt: Launch JupyterLite :width: 150 px .. container:: sphx-glr-download sphx-glr-download-jupyter :download:`Download Jupyter notebook: plot_09_wilson_transform_faults.ipynb ` .. container:: sphx-glr-download sphx-glr-download-python :download:`Download Python source code: plot_09_wilson_transform_faults.py ` .. container:: sphx-glr-download sphx-glr-download-zip :download:`Download zipped: plot_09_wilson_transform_faults.zip ` .. only:: html .. rst-class:: sphx-glr-signature `Gallery generated by Sphinx-Gallery `_