DASCore: a Python Library for Distributed Fiber Optic Sensing
DOI:
https://doi.org/10.26443/seismica.v3i2.1184Keywords:
DAS, Python, Open-source softwareAbstract
In the past decade, distributed acoustic sensing (DAS) has enabled many new monitoring applications in diverse fields including hydrocarbon exploration and extraction; induced, local, regional, and global seismology; infrastructure and urban monitoring; and several others. However, to date, the open-source software ecosystem for handling DAS data is relatively immature. Here we introduce DASCore, a Python library for analyzing, visualizing, and managing DAS data. DASCore implements an object-oriented interface for performing common data processing and transformations, reading and writing various DAS file types, creating simple visualizations, and managing file system-based DAS archives. DASCore also integrates with other Python-based tools which enable the processing of massive data sets in cloud environments. DASCore is the foundational package for the broader DAS data analysis ecosystem (DASDAE), and as such its main goal is to facilitate the development of other DAS libraries and applications.
References
Alted, F., & Fernández-Alonso, M. (2003). PyTables: processing and analyzing extremely large amounts of data in Python. PyCon2003. April, 1–9.
Bauer, P. C., & Landesvatter, C. (2023). Writing a reproducible paper with RStudio and Quarto. https://doi.org/https://doi.org/10.31219/osf.io/ur4xn DOI: https://doi.org/10.31219/osf.io/ur4xn
Bloch, W., & Audet, P. (2023). PyRaysum: Software for Modeling Ray-theoretical Plane Body-wave Propagation in Dipping Anisotropic Media. Seismica, 2(1). https://doi.org/https://doi.org/10.26443/seismica.v2i1.220 DOI: https://doi.org/10.26443/seismica.v2i1.220
Bueno, A., Zuccarello, L., Dı́az-Moreno, A., Woollam, J., Titos, M., Benı́tez, C., Álvarez, I., Prudencio, J., & De Angelis, S. (2020). PICOSS: Python interface for the classification of seismic signals. Computers & Geosciences, 142, 104531. https://doi.org/https://doi.org/10.1016/j.cageo.2020.104531 DOI: https://doi.org/10.1016/j.cageo.2020.104531
Chamberlain, C. J., Hopp, C. J., Boese, C. M., Warren-Smith, E., Chambers, D., Chu, S. X., Michailos, K., & Townend, J. (2018). EQcorrscan: Repeating and near-repeating earthquake detection and analysis in Python. Seismological Research Letters, 89(1), 173–181. https://doi.org/https://doi.org/10.1785/0220170151 DOI: https://doi.org/10.1785/0220170151
Chambers, D. J., Boltz, M. S., & Chamberlain, C. J. (2021). ObsPlus: A Pandas-centric ObsPy expansion pack. Journal of Open Source Software, 6(60), 2696. https://doi.org/https://doi.org/10.21105/joss.02696 DOI: https://doi.org/10.21105/joss.02696
Collette, A., Kluyver, T., Caswell, T. A., Tocknell, J., Kieffer, J., Scopatz, A., Dale, D., Jelenak, A., VINCENT, T., Sciarelli, P., & others. (2021). h5py/h5py: 3.1. 0. Zenodo. https://doi.org/https://doi.org/10.5281/zenodo.7568214
Hamman, J., Rocklin, M., & Abernathy, R. (2018). Pangeo: a big-data ecosystem for scalable earth system science. EGU General Assembly Conference Abstracts, 12146.
Harris, C. R., Millman, K. J., Van Der Walt, S. J., Gommers, R., Virtanen, P., Cournapeau, D., Wieser, E., Taylor, J., Berg, S., Smith, N. J., & others. (2020). Array programming with NumPy. Nature, 585(7825), 357–362. https://doi.org/https://doi.org/10.1038/s41586-020-2649-2 DOI: https://doi.org/10.1038/s41586-020-2649-2
Heimann, S., Kriegerowski, M., Isken, M., Cesca, S., Daout, S., Grigoli, F., Juretzek, C., Megies, T., Nooshiri, N., Steinberg, A., & others. (2017). Pyrocko-An open-source seismology toolbox and library. https://doi.org/https://doi.org/10.5880/GFZ.2.1.2017.001
Hoyer, S., & Hamman, J. (2017). Xarray: ND labeled arrays and datasets in Python. Journal of Open Research Software, 5(1). https://doi.org/https://doi.org/10.5334/jors.148 DOI: https://doi.org/10.5334/jors.148
Hunter, J. D. (2007). Matplotlib: A 2D graphics environment. Computing in Science & Engineering, 9(3), 90–95. https://doi.org/https://doi.org/10.1109/MCSE.2007.55 DOI: https://doi.org/10.1109/MCSE.2007.55
Jiang, C., & Denolle, M. A. (2020). NoisePy: A new high-performance python tool for ambient-noise seismology. Seismological Research Letters, 91(3), 1853–1866. https://doi.org/https://doi.org/10.1785/0220190364 DOI: https://doi.org/10.1785/0220190364
Krischer, L., Megies, T., Barsch, R., Beyreuther, M., Lecocq, T., Caudron, C., & Wassermann, J. (2015). ObsPy: A bridge for seismology into the scientific Python ecosystem. Computational Science & Discovery, 8(1), 014003. https://doi.org/https://doi.org/10.1088/1749-4699/8/1/014003 DOI: https://doi.org/10.1088/1749-4699/8/1/014003
Lindsey, N. J., & Martin, E. R. (2021). Fiber-optic seismology. Annual Review of Earth and Planetary Sciences, 49, 309–336. https://doi.org/https://doi.org/10.1146/annurev-earth-072420-065213 DOI: https://doi.org/10.1146/annurev-earth-072420-065213
Price-Whelan, A. M., Lim, P. L., Earl, N., Starkman, N., Bradley, L., Shupe, D. L., Patil, A. A., Corrales, L., Brasseur, C., Nöthe, M., & others. (2022). The Astropy Project: sustaining and growing a community-oriented open-source project and the latest major release (v5. 0) of the core package. The Astrophysical Journal, 935(2), 167. https://doi.org/https://doi.org/10.3847/1538-4357/ac7c74 DOI: https://doi.org/10.3847/1538-4357/ac7c74
Robitaille, T. P., Tollerud, E. J., Greenfield, P., Droettboom, M., Bray, E., Aldcroft, T., Davis, M., Ginsburg, A., Price-Whelan, A. M., Kerzendorf, W. E., & others. (2013). Astropy: A community Python package for astronomy. Astronomy & Astrophysics, 558, A33. https://doi.org/https://doi.org/10.1051/0004-6361/201322068 DOI: https://doi.org/10.1051/0004-6361/201322068
Rocklin, M. (2015). Dask: Parallel computation with blocked algorithms and task scheduling. Proceedings of the 14th Python in Science Conference, 130, 136. https://doi.org/https://doi.org/10.25080/Majora-7b98e3ed-013 DOI: https://doi.org/10.25080/Majora-7b98e3ed-013
Shipley, D., Weltevrede, B., Doniger, A., Klumpen, H. E., & Ormerod, L. (2008). Production data standards: The PRODML business case and evolution. SPE Intelligent Energy International Conference and Exhibition, SPE-112259. https://doi.org/https://doi.org/10.2118/112259-MS DOI: https://doi.org/10.2118/112259-MS
Spica, Z. J., Ajo-Franklin, J., Beroza, G. C., Biondi, B., Cheng, F., Gaite, B., Luo, B., Martin, E., Shen, J., Thurber, C., Viens, L., Wang, H., Wuestefeld, A., Xiao, H., & Zhu, T. (2023). PubDAS: A PUBlic Distributed Acoustic Sensing Datasets Repository for Geosciences. Seismological Research Letters, 94(2A), 983–998. https://doi.org/https://doi.org/10.1785/0220220279 DOI: https://doi.org/10.1785/0220220279
Staněk, F., Jin, G., & Simmons, J. (2022). Fracture imaging using DAS-recorded microseismic events. Frontiers in Earth Science, 10, 907749. https://doi.org/https://doi.org/10.3389/feart.2022.907749 DOI: https://doi.org/10.3389/feart.2022.907749
Uieda, L., Soler, S. R., Rampin, R., Van Kemenade, H., Turk, M., Shapero, D., Banihirwe, A., & Leeman, J. (2020). Pooch: A friend to fetch your data files. Journal of Open Source Software, 5(45), 1943. https://doi.org/https://doi.org/10.21105/joss.01943 DOI: https://doi.org/10.21105/joss.01943
Virtanen, P., Gommers, R., Oliphant, T. E., Haberland, M., Reddy, T., Cournapeau, D., Burovski, E., Peterson, P., Weckesser, W., Bright, J., & others. (2020). SciPy 1.0: fundamental algorithms for scientific computing in Python. Nature Methods, 17(3), 261–272. https://doi.org/https://doi.org/10.1038/s41592-019-0686-2 DOI: https://doi.org/10.1038/s41592-020-0772-5
Downloads
Additional Files
Published
How to Cite
Issue
Section
License
Copyright (c) 2024 Derrick Chambers, Ge Jin, Ahmad Tourei, Abdul Hafiz Saeed Issah, Ariel Lellouch, Eileen Martin, Donglin Zhu, Aaron Girard, Shihao Yuan, Thomas Cullison, Tomas Snyder, Seunghoo Kim, Nicholas Danes, Nikhil Punithan, M. Shawn Boltz, Manuel M. Mendoza
This work is licensed under a Creative Commons Attribution 4.0 International License.