pyCSEP
pyCSEP: A Python Toolkit For Earthquake Forecast Developers - Published in JOSS (2022)
Science Score: 100.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 4 DOI reference(s) in README and JOSS metadata -
✓Academic publication links
Links to: joss.theoj.org, zenodo.org -
✓Committers with academic emails
6 of 17 committers (35.3%) from academic institutions -
○Institutional organization owner
-
✓JOSS paper metadata
Published in Journal of Open Source Software
Scientific Fields
Repository
Tools to help earthquake forecast model developers build and evaluate their forecasts
Basic Info
- Host: GitHub
- Owner: SCECcode
- License: bsd-3-clause
- Language: Python
- Default Branch: main
- Homepage: https://docs.cseptesting.org
- Size: 64.4 MB
Statistics
- Stars: 58
- Watchers: 9
- Forks: 26
- Open Issues: 30
- Releases: 13
Metadata Files
README.md
pyCSEP: Collaboratory for the Study of Earthquake Predictability
Description:
The pyCSEP Toolkit helps earthquake forecast model developers evaluate their forecasts with the goal of understanding earthquake predictability.
pyCSEP should: 1. Help modelers become familiar with formats, procedures, and evaluations used in CSEP Testing Centers. 2. Provide vetted software for model developers to use in their research. 3. Provide quantitative and visual tools to assess earthquake forecast quality. 4. Promote open-science ideas by ensuring transparency and availability of scientific code and results. 5. Curate benchmark models and data sets for modelers to conduct retrospective experiments of their forecasts.
Table of Contents:
Installation:
pyCSEP can be installed in several ways. It can be installed using conda or pip package managers or from the source code found in the pyCSEP github repo. Researchers interested in contributing to pyCSEP development should install pyCSEP from source code. pyCSEP depends on the following software packages. These which may be installed automatically, or manually, depending on the installation method used. * Python 3.9 or later (https://python.org) * NumPy 1.21.3 or later (https://numpy.org) * SciPy 1.7.1 or later (https://scipy.org) * pandas 1.3.4 or later (https://pandas.pydata.org) * cartopy 0.22.0 or later (https://scitools.org.uk/cartopy/docs/latest)
Please see the requirements file for a complete list
of requirements. These are installed automatically when using the conda distribution.
Detailed pyCSEP installation instructions can be found in the online pyCSEP documentation.
Usage:
Once installed, pyCSEP methods can be invoked from python code by importing package csep. pyCSEP provides objects and utilities related to several key concepts: * Earthquake Catalogs * Earthquake Forecasts * Earthquake Forecast Evaluations * Regions
An simple example to download and plot an earthquake catalog from the USGS ComCat:
import csep
from csep.core import regions
from csep.utils import timeutils
starttime = timeutils.strptimetoutcdatetime('2019-01-01 00:00:00.0')
endtime = timeutils.utcnowdatetime()
catalog = csep.querycomcat(starttime, end_time)
catalog.plot(show=True)
Please see pyCSEP Getting Started documentation for more examples and tutorials.
Software Support:
Software support for pyCSEP is provided by that Southern California Earthquake Center (SCEC) Research Computing Group. This group supports several research software distributions including UCVM. Users can report issues and feature requests using the pyCSEP github-based issue tracking link below. Developers will also respond to emails sent to the SCEC software contact listed below. 1. pyCSEP Issues 2. Email Contact: software [at] scec [dot] org
Contributing:
We welcome contributions to the pyCSEP Toolkit. If you would like to contribute to this package, including software, tests, and documentation, please visit the contribution guidelines for guidelines on how to contribute to pyCSEP development. pyCSEP contributors agree to abide by the code of conduct found in our Code of Conduct guidelines.
Credits:
Development of pyCSEP is a group effort. A list of developers that have contributed to the PyCSEP Toolkit are listed in the credits file in this repository.
License:
The pyCSEP software is distributed under the BSD 3-Clause open-source license. Please see the license file for more information.
Owner
- Name: Southern California Earthquake Center
- Login: SCECcode
- Kind: organization
- Email: software@scec.org
- Location: California
- Website: https://www.scec.org/
- Repositories: 36
- Profile: https://github.com/SCECcode
Earthquake System Science Research Center
JOSS Publication
pyCSEP: A Python Toolkit For Earthquake Forecast Developers
Authors
University of Bristol
GFZ Potsdam
Southern California Earthquake Center, University of Southern California
Tags
python seismology forecasting statistical seismology seismic hazardCitation (CITATION.cff)
cff-version: 1.1.0
message: "If you use this software, please cite it as below."
authors:
- family-names: Savran
given-names: William H.
orcid: 0000-0001-5404-0778
- family-names: Werner
given-names: Maximilian J.
orcid: 0000-0002-2430-2631
- family-names: Schorlemmer
given-names: Danijel
orcid: 0000-0003-3969-1059
- family-names: Maechling
given-names: Philip J.
orcid: 0000-0002-9221-7068
title: "pyCSEP - Tools for Earthquake Forecast Developers"
version: 0.7.0
repository: https://github.com/SCECcode/pycsep
date-released: 2021-04-20
CodeMeta (codemeta.json)
{
"@context": "https://doi.org/10.5063/schema/codemeta-2.0",
"@type": "SoftwareSourceCode",
"license": "https://spdx.org/licenses/BSD-3-Clause",
"codeRepository": "https://github.com/SCECcode/pycsep.git",
"dateCreated": "2021-10-31",
"datePublished": "2020-10-20",
"dateModified": "2025-04-10",
"downloadUrl": "https://github.com/SCECcode/pycsep",
"issueTracker": "https://github.com/SCECcode/pycsep/issues",
"name": "pyCSEP",
"version": "v0.7.0",
"description": "The pyCSEP Toolkit helps earthquake forecast model developers evaluate their forecasts with the goal of understanding earthquake predictability.",
"applicationCategory": "Seismology",
"developmentStatus": "active",
"funder": {
"@type": "Organization",
"name": "Southern California Earthquake Center"
},
"keywords": [
"earthquake",
"forecasting",
"validation"
],
"programmingLanguage": [
"Python 3"
],
"softwareRequirements": [
"Python 3.7 or later (https://python.org)",
"NumPy 1.21.3 or later (https://numpy.org)",
"SciPy 1.7.1 or later (https://scipy.org)",
"pandas 1.3.4 or later (https://pandas.pydata.org)",
"cartopy 0.21.5 or later (https://scitools.org.uk/cartopy/docs/latest)",
"GEOS 3.7.2 or later (https://trac.osgeo.org/geos/)",
"PROJ 8.0.0 or later (https://proj.org/)"
],
"author": [
{
"@type": "Person",
"givenName": "Fabio",
"familyName": "Silva",
"email": "fsilva@usc.edu",
"affiliation": {
"@type": "Organization",
"name": "University of Southern California"
}
}
]
}
GitHub Events
Total
- Fork event: 1
- Create event: 5
- Commit comment event: 1
- Release event: 1
- Issues event: 9
- Watch event: 8
- Delete event: 1
- Member event: 2
- Issue comment event: 21
- Push event: 19
- Pull request event: 16
- Pull request review event: 27
- Pull request review comment event: 11
Last Year
- Fork event: 1
- Create event: 5
- Commit comment event: 1
- Release event: 1
- Issues event: 9
- Watch event: 8
- Delete event: 1
- Member event: 2
- Issue comment event: 21
- Push event: 19
- Pull request event: 16
- Pull request review event: 27
- Pull request review comment event: 11
Committers
Last synced: 5 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| William Savran | w****n@u****u | 469 |
| pciturri | p****i@g****e | 59 |
| khawajasim | a****6@g****m | 20 |
| Thomas Beutin ("tb") | tb@g****m | 16 |
| Marcus Herrmann | m****3@g****m | 15 |
| William | w****a@u****u | 12 |
| Philip Maechling | p****g | 12 |
| bayonato89 | 7****9 | 7 |
| Fabio Silva | f****a@u****u | 5 |
| Edric Pauk | p****k@u****u | 2 |
| Biondini | 1****i | 1 |
| Han Bao | 3****a | 1 |
| Kenny Graham | f****g@y****m | 1 |
| thbeutin | F****6 | 1 |
| William Savran | w****n@o****u | 1 |
| Francesco Serafini | j****3@b****k | 1 |
| Kirsty Bayliss | 3****s | 1 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 4 months ago
All Time
- Total issues: 66
- Total pull requests: 96
- Average time to close issues: 6 months
- Average time to close pull requests: about 2 months
- Total issue authors: 12
- Total pull request authors: 12
- Average comments per issue: 2.06
- Average comments per pull request: 2.18
- Merged pull requests: 80
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 5
- Pull requests: 15
- Average time to close issues: about 2 months
- Average time to close pull requests: about 1 month
- Issue authors: 2
- Pull request authors: 4
- Average comments per issue: 0.4
- Average comments per pull request: 1.47
- Merged pull requests: 13
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- wsavran (24)
- pabloitu (20)
- pjmaechling (7)
- mherrmann3 (4)
- khawajasim (4)
- xsg13 (1)
- mbarall (1)
- mjw98 (1)
- hanbao-ucla (1)
- nvanderelst (1)
- sbaccari (1)
- allenos-usgs (1)
Pull Request Authors
- pabloitu (42)
- wsavran (30)
- bayonato89 (10)
- khawajasim (6)
- Biondini (4)
- fabiolsilva (3)
- KennyGraham1 (3)
- mherrmann3 (3)
- pjmaechling (2)
- Serra314 (2)
- hanbao-ucla (1)
- kirstybayliss (1)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 2
-
Total downloads:
- pypi 157 last-month
-
Total dependent packages: 1
(may contain duplicates) -
Total dependent repositories: 2
(may contain duplicates) - Total versions: 23
- Total maintainers: 2
pypi.org: pycsep
Python tools from the Collaboratory for the Study of Earthquake Predictability
- Homepage: https://github.com/SCECCode/pycsep
- Documentation: https://pycsep.readthedocs.io/
- License: LICENSE
-
Latest release: 0.7.0
published 9 months ago
Rankings
Maintainers (2)
conda-forge.org: pycsep
- Homepage: https://github.com/SCECCode/pycsep
- License: BSD-3-Clause
-
Latest release: 0.6.0
published almost 4 years ago
Rankings
Dependencies
- cartopy *
- matplotlib *
- mercantile *
- numpy <=1.21.5
- obspy *
- pandas *
- pillow *
- pyproj *
- pytest *
- pytest-cov *
- python-dateutil *
- scipy *
- sphinx *
- sphinx-gallery *
- sphinx-rtd-theme *
- vcrpy *
- cartopy *
- matplotlib *
- mercantile *
- numpy *
- obspy *
- pandas *
- pyproj *
- python-dateutil *
- scipy *
- actions/checkout v2 composite
- conda-incubator/setup-miniconda v2 composite
- actions/checkout v2 composite
- conda-incubator/setup-miniconda v2 composite
- actions/checkout v2 composite
- conda-incubator/setup-miniconda v2 composite
- actions/checkout v2 composite
- conda-incubator/setup-miniconda v2 composite
- pypa/gh-action-pypi-publish master composite

