A comprehensive Python package for Gravitational Wave experimental data analysis, extending GWpy with strict unit handling and advanced spectral methods.
Project description
gwexpy: GWpy Expansions for Experiments
gwexpy is an extension library for GWpy for experimental physics and gravitational-wave data analysis. It adds matrix-aware containers, field operations, fitting workflows, expanded I/O, and interoperability layers while staying close to GWpy-style analysis.
Install
git clone https://github.com/tatsuki-washimi/gwexpy.git
cd gwexpy
python -m pip install -e .
For optional extras, external dependencies, and environment-specific setup, use the official installation guides:
- English: https://tatsuki-washimi.github.io/gwexpy/docs/web/en/user_guide/installation.html
- 日本語: https://tatsuki-washimi.github.io/gwexpy/docs/web/ja/user_guide/installation.html
Documentation
The full documentation is maintained in the docs site and is the source of truth for usage details.
- Documentation hub: https://tatsuki-washimi.github.io/gwexpy/docs/web/en/
- ドキュメントハブ: https://tatsuki-washimi.github.io/gwexpy/docs/web/ja/
- Quick Start: https://tatsuki-washimi.github.io/gwexpy/docs/web/en/user_guide/quickstart.html
- Tutorials and case studies: https://tatsuki-washimi.github.io/gwexpy/docs/web/en/user_guide/tutorials/
- File formats and I/O: https://tatsuki-washimi.github.io/gwexpy/docs/web/en/user_guide/io_formats.html
- API reference: https://tatsuki-washimi.github.io/gwexpy/docs/web/en/reference/
- Examples gallery: https://tatsuki-washimi.github.io/gwexpy/docs/web/en/examples/
Why gwexpy?
- Matrix-native analysis:
TimeSeriesMatrix,FrequencySeriesMatrix, andSpectrogramMatrixsupport batch processing, transfer functions, and multichannel workflows. - Physics-oriented containers:
ScalarField,VectorField, andTensorFieldextend analysis beyond simple series into structured field data. - Practical workflows: fitting, noise hunting, time-frequency analysis, and interoperability are exposed as user-facing workflows rather than isolated utilities.
- Broad interoperability and I/O: gwexpy bridges scientific Python tools and extends format coverage beyond core GWpy workflows.
Quick Start
import numpy as np
import gwexpy
from gwexpy.timeseries import TimeSeries, TimeSeriesList
gwexpy.register_all()
ts1 = TimeSeries(np.arange(8.0), dt=1.0, name="A")
ts2 = TimeSeries(np.arange(8.0) * 2.0, dt=1.0, name="B")
matrix = TimeSeriesList([ts1, ts2]).to_matrix()
asd = matrix.asd(fftlength=2.0)
print(matrix.shape)
For fitting, I/O, interoperability, and notebook-based workflows, start from the docs hub or the tutorial index above.
More Resources
- Migration notes for GWpy users: https://tatsuki-washimi.github.io/gwexpy/docs/web/en/user_guide/gwexpy_for_gwpy_users_en.html
- Citation: https://tatsuki-washimi.github.io/gwexpy/docs/web/en/user_guide/citation.html
- Reproducibility notes: docs/repro/README.md
- Supported I/O matrix: SUPPORTED_IO_MATRIX.md
Support
- Issues: https://github.com/tatsuki-washimi/gwexpy/issues
- Discussions: https://github.com/tatsuki-washimi/gwexpy/discussions
- Contributions: pull requests are welcome on GitHub
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file gwexpy-0.1.2.tar.gz.
File metadata
- Download URL: gwexpy-0.1.2.tar.gz
- Upload date:
- Size: 611.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
69622a3553418484f5fb8f4aaecf5b0fbc604e5c6ffe9769b7ac63cc77d55d85
|
|
| MD5 |
d369285a8accf36b55f7de005ae2e093
|
|
| BLAKE2b-256 |
0b13df228218927ecff9cf2ae263c534db05019aca1a27f5fa24303f62442a05
|
Provenance
The following attestation bundles were made for gwexpy-0.1.2.tar.gz:
Publisher:
release.yml on tatsuki-washimi/gwexpy
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
gwexpy-0.1.2.tar.gz -
Subject digest:
69622a3553418484f5fb8f4aaecf5b0fbc604e5c6ffe9769b7ac63cc77d55d85 - Sigstore transparency entry: 1472680998
- Sigstore integration time:
-
Permalink:
tatsuki-washimi/gwexpy@853619023ac41039b15136e07cf330ef463613d0 -
Branch / Tag:
refs/tags/v0.1.2 - Owner: https://github.com/tatsuki-washimi
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@853619023ac41039b15136e07cf330ef463613d0 -
Trigger Event:
push
-
Statement type:
File details
Details for the file gwexpy-0.1.2-py3-none-any.whl.
File metadata
- Download URL: gwexpy-0.1.2-py3-none-any.whl
- Upload date:
- Size: 738.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
536aa6c93072951f2cfb9f181d3ddfe09e16a4d561f23c882dc801cdb7cdb8e2
|
|
| MD5 |
e4886a2930887cb95bbb34e41857c5e0
|
|
| BLAKE2b-256 |
2ca60aa62c56a979807eea46fc473f44592c0fc2a2a059ebf28b781d83b5aa52
|
Provenance
The following attestation bundles were made for gwexpy-0.1.2-py3-none-any.whl:
Publisher:
release.yml on tatsuki-washimi/gwexpy
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
gwexpy-0.1.2-py3-none-any.whl -
Subject digest:
536aa6c93072951f2cfb9f181d3ddfe09e16a4d561f23c882dc801cdb7cdb8e2 - Sigstore transparency entry: 1472681588
- Sigstore integration time:
-
Permalink:
tatsuki-washimi/gwexpy@853619023ac41039b15136e07cf330ef463613d0 -
Branch / Tag:
refs/tags/v0.1.2 - Owner: https://github.com/tatsuki-washimi
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@853619023ac41039b15136e07cf330ef463613d0 -
Trigger Event:
push
-
Statement type: