pywavelet 0.0.1b0__tar.gz

Sign up to get free protection for your applications and to get access to all the features.
Files changed (56) hide show
  1. pywavelet-0.0.1b0/.github/workflows/ci.yml +42 -0
  2. pywavelet-0.0.1b0/.github/workflows/docs.yml +39 -0
  3. pywavelet-0.0.1b0/.github/workflows/pypi.yml +44 -0
  4. pywavelet-0.0.1b0/.gitignore +114 -0
  5. pywavelet-0.0.1b0/.pre-commit-config.yaml +24 -0
  6. pywavelet-0.0.1b0/CHANGELOG.rst +10 -0
  7. pywavelet-0.0.1b0/CITATION.cff +28 -0
  8. pywavelet-0.0.1b0/PKG-INFO +34 -0
  9. pywavelet-0.0.1b0/README.rst +29 -0
  10. pywavelet-0.0.1b0/docs/_config.yml +32 -0
  11. pywavelet-0.0.1b0/docs/_toc.yml +8 -0
  12. pywavelet-0.0.1b0/docs/demos/cbc_demo.ipynb +349 -0
  13. pywavelet-0.0.1b0/docs/demos/lisa_mcmc_demo.ipynb +644 -0
  14. pywavelet-0.0.1b0/docs/demos/roundtrip_demo.ipynb +347 -0
  15. pywavelet-0.0.1b0/docs/intro.md +27 -0
  16. pywavelet-0.0.1b0/docs/references.bib +38 -0
  17. pywavelet-0.0.1b0/docs/requirements.txt +3 -0
  18. pywavelet-0.0.1b0/pyproject.toml +116 -0
  19. pywavelet-0.0.1b0/setup.cfg +4 -0
  20. pywavelet-0.0.1b0/src/pywavelet/__init__.py +5 -0
  21. pywavelet-0.0.1b0/src/pywavelet/_version.py +16 -0
  22. pywavelet-0.0.1b0/src/pywavelet/fft_funcs.py +16 -0
  23. pywavelet-0.0.1b0/src/pywavelet/likelihood/__init__.py +0 -0
  24. pywavelet-0.0.1b0/src/pywavelet/likelihood/likelihood_base.py +9 -0
  25. pywavelet-0.0.1b0/src/pywavelet/likelihood/whittle.py +24 -0
  26. pywavelet-0.0.1b0/src/pywavelet/logger.py +15 -0
  27. pywavelet-0.0.1b0/src/pywavelet/transforms/__init__.py +10 -0
  28. pywavelet-0.0.1b0/src/pywavelet/transforms/common.py +77 -0
  29. pywavelet-0.0.1b0/src/pywavelet/transforms/from_wavelets/__init__.py +25 -0
  30. pywavelet-0.0.1b0/src/pywavelet/transforms/from_wavelets/inverse_wavelet_freq_funcs.py +76 -0
  31. pywavelet-0.0.1b0/src/pywavelet/transforms/from_wavelets/inverse_wavelet_time_funcs.py +133 -0
  32. pywavelet-0.0.1b0/src/pywavelet/transforms/to_wavelets/__init__.py +52 -0
  33. pywavelet-0.0.1b0/src/pywavelet/transforms/to_wavelets/transform_freq_funcs.py +84 -0
  34. pywavelet-0.0.1b0/src/pywavelet/transforms/to_wavelets/transform_time_funcs.py +63 -0
  35. pywavelet-0.0.1b0/src/pywavelet/utils/__init__.py +0 -0
  36. pywavelet-0.0.1b0/src/pywavelet/utils/fisher_matrix.py +6 -0
  37. pywavelet-0.0.1b0/src/pywavelet/utils/snr.py +37 -0
  38. pywavelet-0.0.1b0/src/pywavelet/waveform_generator/__init__.py +0 -0
  39. pywavelet-0.0.1b0/src/pywavelet/waveform_generator/build_lookup_table.py +0 -0
  40. pywavelet-0.0.1b0/src/pywavelet/waveform_generator/generators/__init__.py +2 -0
  41. pywavelet-0.0.1b0/src/pywavelet/waveform_generator/generators/functional_waveform_generator.py +33 -0
  42. pywavelet-0.0.1b0/src/pywavelet/waveform_generator/generators/lookuptable_waveform_generator.py +15 -0
  43. pywavelet-0.0.1b0/src/pywavelet/waveform_generator/generators/rom_waveform_generator.py +0 -0
  44. pywavelet-0.0.1b0/src/pywavelet/waveform_generator/waveform_generator.py +14 -0
  45. pywavelet-0.0.1b0/src/pywavelet.egg-info/PKG-INFO +34 -0
  46. pywavelet-0.0.1b0/src/pywavelet.egg-info/SOURCES.txt +54 -0
  47. pywavelet-0.0.1b0/src/pywavelet.egg-info/dependency_links.txt +1 -0
  48. pywavelet-0.0.1b0/src/pywavelet.egg-info/requires.txt +18 -0
  49. pywavelet-0.0.1b0/src/pywavelet.egg-info/top_level.txt +1 -0
  50. pywavelet-0.0.1b0/tests/conftest.py +15 -0
  51. pywavelet-0.0.1b0/tests/test_examples.py +1 -0
  52. pywavelet-0.0.1b0/tests/test_roundtrip_conversion.py +46 -0
  53. pywavelet-0.0.1b0/tests/test_snr.py +104 -0
  54. pywavelet-0.0.1b0/tests/test_version.py +6 -0
  55. pywavelet-0.0.1b0/tests/test_waveform_lookup_table.py +51 -0
  56. pywavelet-0.0.1b0/tests/utils.py +97 -0
@@ -0,0 +1,42 @@
1
+ name: Python Package Workflow
2
+
3
+ on:
4
+ push:
5
+ branches: [ main ]
6
+ pull_request:
7
+ branches: [ main ]
8
+ workflow_dispatch:
9
+
10
+ jobs:
11
+ build:
12
+
13
+ runs-on: ubuntu-latest
14
+
15
+ steps:
16
+ # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
17
+ - uses: actions/checkout@v3
18
+ - uses: actions/setup-python@v4
19
+ with:
20
+ python-version: '3.8'
21
+ cache: 'pip'
22
+
23
+ - name: Install dependencies
24
+ run: |
25
+ python -m pip install --upgrade pip
26
+ python -m pip install -e .[dev]
27
+ pre-commit install
28
+
29
+ - name: pre-commit
30
+ run: pre-commit run --all-files --verbose --show-diff-on-failure
31
+
32
+ - name: pytest
33
+ run: pytest --cov='pywavelet' --cov-report term-missing
34
+
35
+ - name: Upload Coverage to Coveralls
36
+ if: ${{ github.ref == 'refs/heads/main' }}
37
+ run: |
38
+ coverage xml
39
+ pip install coveralls
40
+ coveralls
41
+ env:
42
+ COVERALLS_REPO_TOKEN: ${{ secrets.COVERALLS_REPO_TOKEN }}
@@ -0,0 +1,39 @@
1
+ name: build-docs
2
+
3
+ on:
4
+ push:
5
+ branches:
6
+ - main
7
+ paths:
8
+ - 'docs/**'
9
+
10
+ # This job installs dependencies, builds the book, and pushes it to `gh-pages`
11
+ jobs:
12
+ deploy-book:
13
+ runs-on: ubuntu-latest
14
+ permissions:
15
+ contents: write
16
+ steps:
17
+ - uses: actions/checkout@v3
18
+
19
+ # Install dependencies
20
+ - name: Set up Python 3.8
21
+ uses: actions/setup-python@v2
22
+ with:
23
+ python-version: 3.8
24
+
25
+ - name: Install dependencies
26
+ run: |
27
+ pip install -r docs/requirements.txt
28
+
29
+ # Build the book
30
+ - name: Build the book
31
+ run: |
32
+ jupyter-book build docs/
33
+
34
+ # Push the book's HTML to github-pages
35
+ - name: GitHub Pages action
36
+ uses: peaceiris/actions-gh-pages@v3.9.3
37
+ with:
38
+ github_token: ${{ secrets.GITHUB_TOKEN }}
39
+ publish_dir: ./docs/_build/html
@@ -0,0 +1,44 @@
1
+ name: Publish Python 🐍 distributions 📦 to PyPI and TestPyPI
2
+
3
+ on:
4
+ workflow_dispatch:
5
+ inputs:
6
+ logLevel:
7
+ description: 'Log level'
8
+ required: true
9
+ default: 'warning'
10
+ push:
11
+ # Pattern matched against refs/tags
12
+ tags:
13
+ - '*'
14
+
15
+ jobs:
16
+ build-n-publish:
17
+ environment:
18
+ name: pypi
19
+ url: https://pypi.org/p/pywavelet
20
+ permissions:
21
+ id-token: write # Needed for publishing to PyPI
22
+ name: Build and publish Python 🐍 distributions 📦 to PyPI and TestPyPI
23
+ runs-on: ubuntu-20.04
24
+ steps:
25
+ - uses: actions/checkout@v3
26
+ - uses: actions/setup-python@v4
27
+ with:
28
+ python-version: '3.8'
29
+ cache: 'pip'
30
+
31
+ - name: Install dependencies
32
+ run: |
33
+ python -m pip install --upgrade pip
34
+ pip install setuptools wheel twine build
35
+ - name: Build a binary wheel and a source tarball
36
+ run: >-
37
+ python -m
38
+ build
39
+ --sdist
40
+ --wheel
41
+ --outdir dist/
42
+
43
+ - name: Publish distribution 📦 to PyPI
44
+ uses: pypa/gh-action-pypi-publish@release/v1
@@ -0,0 +1,114 @@
1
+ # Byte-compiled / optimized / DLL files
2
+ __pycache__/
3
+ *.py[cod]
4
+ *$py.class
5
+ *.png
6
+ *.dat
7
+ *.idea
8
+ *.DS_Store
9
+ # C extensions
10
+ *.so
11
+ out_*
12
+ *_version.py
13
+
14
+ # Distribution / packaging
15
+ .Python
16
+ build/
17
+ develop-eggs/
18
+ dist/
19
+ downloads/
20
+ eggs/
21
+ .eggs/
22
+ lib/
23
+ lib64/
24
+ parts/
25
+ sdist/
26
+ var/
27
+ wheels/
28
+ *.egg-info/
29
+ .installed.cfg
30
+ *.egg
31
+ MANIFEST
32
+
33
+ # PyInstaller
34
+ # Usually these files are written by a python script from a template
35
+ # before PyInstaller builds the exe, so as to inject date/other infos into it.
36
+ *.manifest
37
+ *.spec
38
+
39
+ # Installer logs
40
+ pip-log.txt
41
+ pip-delete-this-directory.txt
42
+
43
+ # Unit test / coverage reports
44
+ htmlcov/
45
+ .tox/
46
+ .coverage
47
+ .coverage.*
48
+ .cache
49
+ nosetests.xml
50
+ coverage.xml
51
+ *.cover
52
+ .hypothesis/
53
+
54
+ # Translations
55
+ *.mo
56
+ *.pot
57
+
58
+ # Django stuff:
59
+ *.log
60
+ .static_storage/
61
+ .media/
62
+ local_settings.py
63
+
64
+ # Flask stuff:
65
+ instance/
66
+ .webassets-cache
67
+
68
+ # Scrapy stuff:
69
+ .scrapy
70
+
71
+ # Sphinx documentation
72
+ docs/_build/
73
+ docs/build/
74
+ docs/source/api/
75
+
76
+ # PyBuilder
77
+ target/
78
+
79
+ # Jupyter Notebook
80
+ .ipynb_checkpoints
81
+
82
+ # pyenv
83
+ .python-version
84
+
85
+ # celery beat schedule file
86
+ celerybeat-schedule
87
+
88
+ # SageMath parsed files
89
+ *.sage.py
90
+
91
+ # Environments
92
+ .env
93
+ .venv
94
+ env/
95
+ venv/
96
+ ENV/
97
+ env.bak/
98
+ venv.bak/
99
+
100
+ # Spyder project settings
101
+ .spyderproject
102
+ .spyproject
103
+
104
+ # Rope project settings
105
+ .ropeproject
106
+
107
+ # mkdocs documentation
108
+ /site
109
+
110
+ # mypy
111
+ .mypy_cache/
112
+
113
+ # VSCode
114
+ .vscode/
@@ -0,0 +1,24 @@
1
+ repos:
2
+ - repo: https://github.com/Lucas-C/pre-commit-hooks
3
+ rev: v1.3.1
4
+ hooks:
5
+ - id: forbid-crlf
6
+ - id: remove-crlf
7
+ - repo: https://github.com/pre-commit/pre-commit-hooks
8
+ rev: v4.4.0
9
+ hooks:
10
+ - id: trailing-whitespace
11
+ - id: end-of-file-fixer
12
+ - id: check-merge-conflict
13
+ - id: check-yaml
14
+ args: [ --unsafe ]
15
+ - repo: https://github.com/pre-commit/mirrors-isort
16
+ rev: v5.10.1
17
+ hooks:
18
+ - id: isort
19
+ args: ["--profile", "black"]
20
+ - repo: https://github.com/ambv/black
21
+ rev: 22.12.0
22
+ hooks:
23
+ - id: black
24
+ language_version: python3.8
@@ -0,0 +1,10 @@
1
+ .. _change-log-label:
2
+
3
+ Change Log
4
+ ==========
5
+
6
+ Version History
7
+ ---------------
8
+
9
+ 0.0.1
10
+ * Project created.
@@ -0,0 +1,28 @@
1
+ cff-version: 1.2.0
2
+ title: pywavelet
3
+ message: >-
4
+ If you use this software, please cite it using the
5
+ metadata from this file.
6
+ type: software
7
+ authors:
8
+ - given-names: pywavelet
9
+ family-names: pywavelet
10
+ email: pywavelet@aut.ac.nz
11
+ affiliation: >-
12
+ Science Centre 303S, 38 Princes st,
13
+ Auckland, 1010, New Zealand
14
+ orcid: 'https://orcid.org/0000-0002-4146-1132'
15
+ identifiers:
16
+ - type: url
17
+ value: ''
18
+ description: The paper describing the method behind this work.
19
+ repository-code: 'https://github.com/avivajpeyi/pywavelet'
20
+ url: 'http://avivajpeyi.github.io/pywavelet/'
21
+ repository-artifact: 'https://pypi.org/project/pywavelet/'
22
+ abstract: >-
23
+ Source code for the pywavelet package (for WDM wavelet analysis).
24
+ keywords:
25
+ - GW
26
+ - Bayesian Inference
27
+ - WDM
28
+ license: MIT
@@ -0,0 +1,34 @@
1
+ Metadata-Version: 2.1
2
+ Name: pywavelet
3
+ Version: 0.0.1b0
4
+ Summary: WDM wavelet transform your timeseries!
5
+ Author-email: Pywavelet Team <pywavelet@gmail.com>
6
+ Project-URL: Homepage, https://github.com/pypa/pywavelet
7
+ Project-URL: Bug Reports, https://github.com/pypa/pywavelet/issues
8
+ Project-URL: Funding, https://donate.pypi.org
9
+ Project-URL: Say Thanks!, http://saythanks.io/to/example
10
+ Project-URL: Source, https://github.com/pypa/pywavelet/
11
+ Classifier: Development Status :: 3 - Alpha
12
+ Classifier: Intended Audience :: Science/Research
13
+ Classifier: License :: OSI Approved :: MIT License
14
+ Classifier: Operating System :: OS Independent
15
+ Classifier: Programming Language :: Python :: 3.8
16
+ Requires-Python: >=3.8
17
+ Description-Content-Type: text/markdown
18
+ Requires-Dist: numpy
19
+ Requires-Dist: numba
20
+ Requires-Dist: matplotlib
21
+ Requires-Dist: tqdm
22
+ Requires-Dist: loguru
23
+ Requires-Dist: bilby
24
+ Provides-Extra: dev
25
+ Requires-Dist: pytest>=6.0; extra == "dev"
26
+ Requires-Dist: pytest-cov>=4.1.0; extra == "dev"
27
+ Requires-Dist: pre-commit; extra == "dev"
28
+ Requires-Dist: flake8>=5.0.4; extra == "dev"
29
+ Requires-Dist: black>=22.12.0; extra == "dev"
30
+ Requires-Dist: isort; extra == "dev"
31
+ Requires-Dist: mypy; extra == "dev"
32
+ Requires-Dist: pycbc; extra == "dev"
33
+ Requires-Dist: bilby; extra == "dev"
34
+ Requires-Dist: jupyter-book; extra == "dev"
@@ -0,0 +1,29 @@
1
+ pywavelet
2
+ #########
3
+ .. image:: https://coveralls.io/repos/github/avivajpeyi/pywavelet/badge.svg?branch=main
4
+ :target: https://coveralls.io/github/avivajpeyi/pywavelet?branch=main
5
+
6
+
7
+
8
+ WDM Wavelet transform
9
+
10
+
11
+ Quickstart
12
+ ==========
13
+
14
+ pywavelet is available on PyPI and can be installed with `pip <https://pip.pypa.io>`_.
15
+
16
+ .. code-block:: console
17
+
18
+ $ pip install pywavelet
19
+
20
+ After installing pywavelet you can use it like any other Python module.
21
+
22
+ Here is a simple example:
23
+
24
+ .. code-block:: python
25
+
26
+ import pywavelet
27
+ # Fill this section in with the common use-case.
28
+
29
+ The `API Reference <http://pywavelet.readthedocs.io>`_ provides API-level documentation.
@@ -0,0 +1,32 @@
1
+ # Book settings
2
+ # Learn more at https://jupyterbook.org/customize/config.html
3
+
4
+ title: My sample book
5
+ author: The Jupyter Book Community
6
+ logo: logo.png
7
+
8
+ # Force re-execution of notebooks on each build.
9
+ # See https://jupyterbook.org/content/execute.html
10
+ execute:
11
+ execute_notebooks: 'off'
12
+
13
+ # Define the name of the latex output file for PDF builds
14
+ latex:
15
+ latex_documents:
16
+ targetname: book.tex
17
+
18
+ # Add a bibtex file so that we can create citations
19
+ bibtex_bibfiles:
20
+ - references.bib
21
+
22
+ # Information about where the book exists on the web
23
+ repository:
24
+ url: https://github.com/executablebooks/jupyter-book # Online location of your book
25
+ path_to_book: docs # Optional path to your book, relative to the repository root
26
+ branch: master # Which branch of the repository should be used when creating links (optional)
27
+
28
+ # Add GitHub buttons to your book
29
+ # See https://jupyterbook.org/customize/config.html#add-a-link-to-your-repository
30
+ html:
31
+ use_issues_button: true
32
+ use_repository_button: true
@@ -0,0 +1,8 @@
1
+ # Table of contents
2
+ # Learn more at https://jupyterbook.org/customize/toc.html
3
+
4
+ format: jb-book
5
+ root: intro
6
+ chapters:
7
+ - file: demos/roundtrip_demo
8
+ - file: demos/lisa_mcmc_demo