This project is maintained by Marco A. Lopez-Sanchez - Last update: 2026-05-18
PyRockWave is a free, open-source Python tool used for reading single-crystal elasticity databases and modelling the elastic properties of materials found in the Earth. It computes and visualises the physical properties of minerals, rocks, and layered rock units, employing various averaging models. The tool focuses on seismic anisotropy, the directional variation of seismic wave velocities within materials. This provides valuable insights into mineral orientation, stress fields, and flow patterns within the Earth's mantle and crust.
Designed with modularity in mind, PyRockWave uses Python functions to facilitate development and integration with other tools. Example applications built using Jupyter notebooks ensure ease of use and reproducible workflows.
View repository on GitHub: https://github.com/marcoalopez/PyRockWave
Warning
PyRockWave is still in the alpha stage of development. The functionality may change significantly, which could potentially break backward compatibility. Some of the code has not been adequately tested, and there is no installation guide or detailed documentation yet. However, the code will always be free and open source. While there is no official release or comprehensive documentation, you are welcome to explore and use the software at your own risk.
Available soon 😊
-
Demonstration of the functionality of the
coordinatesmodule -
Demonstration of the functionality of the
tensor_toolsmodule -
Demonstration of the functionality of the
anisotropic_modelsmodule -
Demonstration of the functionality of the
christoffelmodule (I'm working on it! 😊) -
Demonstration of the functionality of the
layered_mediamodule (I'm working on it! 😊)
The GitHub website hosting the project provides several options (you will need a GitHub account, it’s free!):
- Open a discussion: This is a place to:
- Ask questions you are wondering about.
- Requests for specific features or share ideas.
- Interact with the developers (still just me).
- Open and issue: This is a place to report or track bugs.
- Create a pull request: You modified, corrected or added a feature to one of the notebooks and send it for one of the developers to review it and add it to the main page.
The seed of these codes has been made possible thanks to funding from the Government of the Principality of Asturias and the Foundation for the Promotion of Applied Research in Asturias (FICYT) (grant: SV-PA-21-AYUD/2021/57163) under the Asturias Plan for Science, Technology and Innovation (PCTI-Asturias) 2018-2022. I am currently seeking further funding to complete this project.
Copyright © 2023-present Marco A. Lopez-Sanchez
Note
The information on this website and in the script documentation is provided without any warranty of any kind, either expressed or implied, and may include technical inaccuracies or typographical errors; the author reserves the right to make changes or improvements to the content of this website and the script documentation at any time without notice. This website and its documentation are not responsible for the content of external links. Notebook content is licensed under Creative Commons Attribution license CC-BY 4.0 and codes are licensed under GNU General Public License v3 (https://www.gnu.org/licenses/gpl-3.0.en.html) unless otherwise noted.
Hosted on GitHub Pages — This website was created with Typora
