SAnTex
SAnTex: A Python-based Library for Seismic Anisotropy Calculation - Published in JOSS (2025)
Science Score: 93.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 7 DOI reference(s) in README and JOSS metadata -
✓Academic publication links
Links to: joss.theoj.org -
○Academic email domains
-
○Institutional organization owner
-
✓JOSS paper metadata
Published in Journal of Open Source Software
Scientific Fields
Repository
Basic Info
- Host: GitHub
- Owner: utpal-singh
- License: gpl-3.0
- Language: Jupyter Notebook
- Default Branch: main
- Homepage: https://santex.readthedocs.io/en/latest/
- Size: 191 MB
Statistics
- Stars: 4
- Watchers: 2
- Forks: 2
- Open Issues: 1
- Releases: 1
Metadata Files
README.md
SAnTex: Seismic Anisotropy from Texture
SAnTex is a Python library which calculates the full elastic tensor of rocks from modal mineral composition, crystallographic orientation, and a crystal stiffness tensor catalogue that accounts for the dependency of elasticity with pressure and temperature.
Features
- Pre-processing and cleaning of EBSD data: SAnTex facilitates the processing and cleaning of EBSD data. To enhance data completeness, SAnTex offers the option to fill not-indexed pixels or indexed pixels removed during the cleaning process, using machine learning techniques.
- Tensor operations: Tensor conversions between Voigt matrix and full stiffness tensors, as well as rotations based on euler angles.
- Material analysis: SAnTex provides a catalogue of minerals, users can load the catalogue and can either utilise them to load stiffness tensors for their EBSD phases or make a modal rock and can calculate seismic anisotropy for the modal rock.
- Seismic Anisotropy: SAnTex performs calculations of seismic anisotropy at a range of pressure and temperature conditions. It also offers visualisation capabilities, allowing users to view the calculated seismic anisotropy in 2D and 3D plots.
- Isotropic velocities: Calculates isotropic seismic wave velocities (Vp, Vs and vbulk), isothermal bulk modulus, and density at elevated temperatures and pressures (Hacker & Abers, 2004).
How to Cite
If you are using this library in a scientific publication, please consider citing the following paper:
- Singh, U., zaydn, S., Chatzaras, V., & Rey, P. (2025). SAnTex: A Python-based Library for Seismic Anisotropy Calculation. Journal of Open Source Software, 10(110), 6886, https://doi.org/10.21105/joss.06886.
Bibtex:
```bibtex @article{Sing2025, title={SAnTex: A Python-based Library for Seismic Anisotropy Calculation}, author={Singh, Utpal and {\"O}zayd{\i}n, Sinan and Chatzaras, Vasileios and Rey, Patrice}, journal={Journal of Open Source Software}, volume={10}, number={110}, pages={6886}, year={2025}, doi={10.21105/joss.06886} }
```
Installation
For Linux and Mac
You can install SAnTex using pip from your terminal:
bash
git clone https://github.com/utpal-singh/SAnTex.git
cd santex
pip install .
or
bash
pip install santex
For Windows
SAnTex depends on 'orix', which in turn uses 'PyCifrw' for ODF and PDF calculations. However, 'PyCifrw' requires a C compiler to function properly. Since Windows does not include a C compiler by default, you can create a conda environment and install the GCC compiler along with SAnTex using the following steps:
bash
conda create -n santex python=3.9
conda install -c conda-forge m2w64-gcc
pip install orix
pip install santex
Workflow

Example Notebooks
To help users get started quickly, we provide example notebooks demonstrating typical usage and workflows.
You can find them here or in the notebooks/ directory of this repository.
The documentation is found here
Contributing
We welcome contributions from the community! To get started:
- Fork the repository
- Create a new branch (
git checkout -b feature-xyz) - Commit your changes (
git commit -am 'Add some feature') - Push to the branch (
git push origin feature-xyz) - Open a Pull Request
Reporting Issues
If you encounter any bugs, unexpected behavior, or have feature requests:
- Search the Issues to check if its already been reported.
- If not, open a new issue and include details such as:
- Steps to reproduce the problem
- Expected and actual behavior
- Relevant logs, screenshots, or code snippets
Support
Need help or have questions?
- Open an issue for reporting bugs or feature discussions.
- Use the Discussions tab.
- Alternatively, you can contact us at [utpal.singh@sydney.edu.au] or [sinan.ozaydin@sydney.edu.au].
Funding
This research was supported by the Australian Research Council grants ARC-DP220100709 and ARC-LP190100146, and the School of Geosciences at The University of Sydney.
Contacts
| Utpal Singh | utpal.singh@sydney.edu.au
Owner
- Name: Utpal Singh
- Login: utpal-singh
- Kind: user
- Location: Pune, India
- Website: https://utpalsingh.pythonanywhere.com
- Repositories: 2
- Profile: https://github.com/utpal-singh
MS, Earth and Climate Sciences
JOSS Publication
SAnTex: A Python-based Library for Seismic Anisotropy Calculation
Authors
The University of Sydney, School of Geosciences, Sydney, NSW, Australia
Tags
geoscience seismic anisotropy crystallographic orientationGitHub Events
Total
- Create event: 2
- Release event: 1
- Issues event: 30
- Watch event: 4
- Issue comment event: 26
- Push event: 47
- Pull request event: 4
- Fork event: 2
Last Year
- Create event: 2
- Release event: 1
- Issues event: 30
- Watch event: 4
- Issue comment event: 26
- Push event: 47
- Pull request event: 4
- Fork event: 2
Issues and Pull Requests
Last synced: 4 months ago
All Time
- Total issues: 15
- Total pull requests: 2
- Average time to close issues: 4 months
- Average time to close pull requests: 3 months
- Total issue authors: 2
- Total pull request authors: 2
- Average comments per issue: 1.67
- Average comments per pull request: 0.0
- Merged pull requests: 2
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 15
- Pull requests: 2
- Average time to close issues: 4 months
- Average time to close pull requests: 3 months
- Issue authors: 2
- Pull request authors: 2
- Average comments per issue: 1.67
- Average comments per pull request: 0.0
- Merged pull requests: 2
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- elena-pascal (11)
- hakonanes (8)
- sinanozaydin (2)
Pull Request Authors
- sinanozaydin (1)
- utpal-singh (1)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 1
-
Total downloads:
- pypi 74 last-month
- Total dependent packages: 1
- Total dependent repositories: 0
- Total versions: 7
- Total maintainers: 1
pypi.org: santex
SAnTeX is a Python library which calculates seismic anisotropy from full elastic tensor of rocks from modal mineral composition, crystallographic orientation, and a crystal stiffness tensor catalogue that accounts for the dependency of elasticity with pressure and temperature. SAnTex facilitates the processing and cleaning of EBSD data and calculation of Orientation Distribution Function (ODF) and Inverse pole figure (IPF)
- Homepage: https://github.com/utpal-singh/SAnTex
- Documentation: https://santex.readthedocs.io/
- License: GNU Lesser General Public License v3 (LGPLv3)
-
Latest release: 1.2.3
published 7 months ago
Rankings
Maintainers (1)
Dependencies
- actions/checkout v4 composite
- actions/upload-artifact v1 composite
- openjournals/openjournals-draft-action master composite
- openjournals/openjournals-draft-action v.1.0 composite
- commonmark ==0.9.1
- mock ==1.0.1
- recommonmark ==0.5.0
- sphinx ==6.2.1
- sphinx-rtd-theme ==1.2.2
- joblib *
- matplotlib *
- numpy *
- orix *
- pandas *
- plotly *
- scikit-learn *
- sphinx_rtd_theme *
- tabulate *
- tqdm *
- vtk *
