pyNFFT3 0.2.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (68) hide show
  1. pynfft3-0.2.1/.github/workflows/ci.yml +30 -0
  2. pynfft3-0.2.1/.github/workflows/format.yml +32 -0
  3. pynfft3-0.2.1/.github/workflows/release.yml +88 -0
  4. pynfft3-0.2.1/.github/workflows/sphinx.yml +24 -0
  5. pynfft3-0.2.1/.gitignore +8 -0
  6. pynfft3-0.2.1/LICENSE +674 -0
  7. pynfft3-0.2.1/PKG-INFO +40 -0
  8. pynfft3-0.2.1/README.md +28 -0
  9. pynfft3-0.2.1/docs/Makefile +20 -0
  10. pynfft3-0.2.1/docs/make.bat +35 -0
  11. pynfft3-0.2.1/docs/requirements.txt +2 -0
  12. pynfft3-0.2.1/docs/source/api/fastsum.rst +94 -0
  13. pynfft3-0.2.1/docs/source/api/nfct.rst +66 -0
  14. pynfft3-0.2.1/docs/source/api/nfft.rst +66 -0
  15. pynfft3-0.2.1/docs/source/api/nfst.rst +66 -0
  16. pynfft3-0.2.1/docs/source/api.rst +9 -0
  17. pynfft3-0.2.1/docs/source/conf.py +74 -0
  18. pynfft3-0.2.1/docs/source/index.rst +40 -0
  19. pynfft3-0.2.1/docs/source/tutorial.rst +198 -0
  20. pynfft3-0.2.1/pyproject.toml +20 -0
  21. pynfft3-0.2.1/src/pyNFFT3/NFCT.py +340 -0
  22. pynfft3-0.2.1/src/pyNFFT3/NFFT.py +326 -0
  23. pynfft3-0.2.1/src/pyNFFT3/NFMT.py +1 -0
  24. pynfft3-0.2.1/src/pyNFFT3/NFST.py +335 -0
  25. pynfft3-0.2.1/src/pyNFFT3/__init__.py +165 -0
  26. pynfft3-0.2.1/src/pyNFFT3/fastsum.py +325 -0
  27. pynfft3-0.2.1/src/pyNFFT3/flags.py +231 -0
  28. pynfft3-0.2.1/src/pyNFFT3/lib/AVX/libfastsumjulia.dll +0 -0
  29. pynfft3-0.2.1/src/pyNFFT3/lib/AVX/libfastsumjulia.dylib +0 -0
  30. pynfft3-0.2.1/src/pyNFFT3/lib/AVX/libfastsumjulia.so +0 -0
  31. pynfft3-0.2.1/src/pyNFFT3/lib/AVX/libnfctjulia.dll +0 -0
  32. pynfft3-0.2.1/src/pyNFFT3/lib/AVX/libnfctjulia.dylib +0 -0
  33. pynfft3-0.2.1/src/pyNFFT3/lib/AVX/libnfctjulia.so +0 -0
  34. pynfft3-0.2.1/src/pyNFFT3/lib/AVX/libnfftjulia.dll +0 -0
  35. pynfft3-0.2.1/src/pyNFFT3/lib/AVX/libnfftjulia.dylib +0 -0
  36. pynfft3-0.2.1/src/pyNFFT3/lib/AVX/libnfftjulia.so +0 -0
  37. pynfft3-0.2.1/src/pyNFFT3/lib/AVX/libnfstjulia.dll +0 -0
  38. pynfft3-0.2.1/src/pyNFFT3/lib/AVX/libnfstjulia.dylib +0 -0
  39. pynfft3-0.2.1/src/pyNFFT3/lib/AVX/libnfstjulia.so +0 -0
  40. pynfft3-0.2.1/src/pyNFFT3/lib/AVX2/libfastsumjulia.dll +0 -0
  41. pynfft3-0.2.1/src/pyNFFT3/lib/AVX2/libfastsumjulia.dylib +0 -0
  42. pynfft3-0.2.1/src/pyNFFT3/lib/AVX2/libfastsumjulia.so +0 -0
  43. pynfft3-0.2.1/src/pyNFFT3/lib/AVX2/libnfctjulia.dll +0 -0
  44. pynfft3-0.2.1/src/pyNFFT3/lib/AVX2/libnfctjulia.dylib +0 -0
  45. pynfft3-0.2.1/src/pyNFFT3/lib/AVX2/libnfctjulia.so +0 -0
  46. pynfft3-0.2.1/src/pyNFFT3/lib/AVX2/libnfftjulia.dll +0 -0
  47. pynfft3-0.2.1/src/pyNFFT3/lib/AVX2/libnfftjulia.dylib +0 -0
  48. pynfft3-0.2.1/src/pyNFFT3/lib/AVX2/libnfftjulia.so +0 -0
  49. pynfft3-0.2.1/src/pyNFFT3/lib/AVX2/libnfstjulia.dll +0 -0
  50. pynfft3-0.2.1/src/pyNFFT3/lib/AVX2/libnfstjulia.dylib +0 -0
  51. pynfft3-0.2.1/src/pyNFFT3/lib/AVX2/libnfstjulia.so +0 -0
  52. pynfft3-0.2.1/src/pyNFFT3/lib/SSE2/libfastsumjulia.dll +0 -0
  53. pynfft3-0.2.1/src/pyNFFT3/lib/SSE2/libfastsumjulia.dylib +0 -0
  54. pynfft3-0.2.1/src/pyNFFT3/lib/SSE2/libfastsumjulia.so +0 -0
  55. pynfft3-0.2.1/src/pyNFFT3/lib/SSE2/libnfctjulia.dll +0 -0
  56. pynfft3-0.2.1/src/pyNFFT3/lib/SSE2/libnfctjulia.dylib +0 -0
  57. pynfft3-0.2.1/src/pyNFFT3/lib/SSE2/libnfctjulia.so +0 -0
  58. pynfft3-0.2.1/src/pyNFFT3/lib/SSE2/libnfftjulia.dll +0 -0
  59. pynfft3-0.2.1/src/pyNFFT3/lib/SSE2/libnfftjulia.dylib +0 -0
  60. pynfft3-0.2.1/src/pyNFFT3/lib/SSE2/libnfftjulia.so +0 -0
  61. pynfft3-0.2.1/src/pyNFFT3/lib/SSE2/libnfstjulia.dll +0 -0
  62. pynfft3-0.2.1/src/pyNFFT3/lib/SSE2/libnfstjulia.dylib +0 -0
  63. pynfft3-0.2.1/src/pyNFFT3/lib/SSE2/libnfstjulia.so +0 -0
  64. pynfft3-0.2.1/tests/NFCT_test.py +84 -0
  65. pynfft3-0.2.1/tests/NFFT_test.py +87 -0
  66. pynfft3-0.2.1/tests/NFST_test.py +84 -0
  67. pynfft3-0.2.1/tests/fastsum_test.py +60 -0
  68. pynfft3-0.2.1/tests/run_tests.py +28 -0
@@ -0,0 +1,30 @@
1
+ name: CI
2
+
3
+ on:
4
+ push:
5
+ branches: [main, test]
6
+ tags: [v*]
7
+ pull_request:
8
+
9
+ jobs:
10
+ test:
11
+ strategy:
12
+ matrix:
13
+ python-version: ['3.8', '3.9', '3.10'] # Specify the Python versions you want to test against
14
+ os: [ubuntu-latest, windows-latest]
15
+ name: Python ${{ matrix.python-version }} - ${{ matrix.os }}
16
+ runs-on: ${{ matrix.os }}
17
+ steps:
18
+ - name: Checkout code
19
+ uses: actions/checkout@v4
20
+ - name: Set up Python
21
+ uses: actions/setup-python@v4
22
+ with:
23
+ python-version: ${{ matrix.python-version }}
24
+ - name: Install dependencies
25
+ run: |
26
+ python -m pip install --upgrade pip
27
+ pip install numpy cpufeature
28
+ - name: Run tests
29
+ run: |
30
+ python -m tests.run_tests
@@ -0,0 +1,32 @@
1
+ name: Format
2
+
3
+ on:
4
+ push:
5
+ branches: [main]
6
+ tags: [v*]
7
+ pull_request:
8
+
9
+ jobs:
10
+ format:
11
+ name: "Format Check"
12
+ runs-on: ubuntu-latest
13
+ steps:
14
+ - name: Checkout code
15
+ uses: actions/checkout@v4
16
+ - name: Set up Python
17
+ uses: actions/setup-python@v4
18
+ with:
19
+ python-version: '3.x'
20
+ - name: Install black
21
+ run: |
22
+ python -m pip install --upgrade pip
23
+ pip install black
24
+ - name: Format code with black
25
+ run: |
26
+ black . --check
27
+ - name: Suggest formatting changes
28
+ uses: reviewdog/action-suggester@v1
29
+ if: github.event_name == 'pull_request'
30
+ with:
31
+ tool_name: black
32
+ fail_on_error: true
@@ -0,0 +1,88 @@
1
+ name: Publish Python release
2
+
3
+ on:
4
+ push:
5
+ tags:
6
+ - 'v*.*.*' # Only run for version tags
7
+ paths:
8
+ - 'pyproject.toml' # Ensure the project details have been changed
9
+
10
+ jobs:
11
+ build:
12
+ name: Build distribution
13
+ runs-on: ubuntu-latest
14
+ steps:
15
+ - uses: actions/checkout@v4
16
+ - name: Set up Python
17
+ uses: actions/setup-python@v5
18
+ with:
19
+ python-version: "3.x"
20
+ - name: Install pypa/build
21
+ run: >-
22
+ python3 -m
23
+ pip install
24
+ build
25
+ --user
26
+ - name: Build a binary wheel and a source tarball
27
+ run: python3 -m build
28
+ - name: Store the distribution packages
29
+ uses: actions/upload-artifact@v3
30
+ with:
31
+ name: python-package-distributions
32
+ path: dist/
33
+
34
+ github-release:
35
+ name: >-
36
+ Sign distribution and upload to GitHub
37
+ needs:
38
+ - build
39
+ runs-on: ubuntu-latest
40
+ permissions:
41
+ contents: write
42
+ id-token: write
43
+ steps:
44
+ - name: Download the dists
45
+ uses: actions/download-artifact@v3
46
+ with:
47
+ name: python-package-distributions
48
+ path: dist/
49
+ - name: Sign the dists
50
+ uses: sigstore/gh-action-sigstore-python@v2.1.1
51
+ with:
52
+ inputs: >-
53
+ ./dist/*.tar.gz
54
+ ./dist/*.whl
55
+ - name: Create GitHub Release
56
+ env:
57
+ GITHUB_TOKEN: ${{ github.token }}
58
+ run: >-
59
+ gh release create
60
+ '${{ github.ref_name }}'
61
+ --repo '${{ github.repository }}'
62
+ --notes ""
63
+ - name: Upload artifact signatures to GitHub Release
64
+ env:
65
+ GITHUB_TOKEN: ${{ github.token }}
66
+ run: >-
67
+ gh release upload
68
+ '${{ github.ref_name }}' dist/**
69
+ --repo '${{ github.repository }}'
70
+
71
+ publish-to-pypi:
72
+ name: Publish Python distribution to PyPI
73
+ needs:
74
+ - build
75
+ runs-on: ubuntu-latest
76
+ environment:
77
+ name: pypi
78
+ url: https://pypi.org/p/pyNFFT3
79
+ permissions:
80
+ id-token: write
81
+ steps:
82
+ - name: Download the dists
83
+ uses: actions/download-artifact@v3
84
+ with:
85
+ name: python-package-distributions
86
+ path: dist/
87
+ - name: Publish distribution to PyPI
88
+ uses: pypa/gh-action-pypi-publish@release/v1
@@ -0,0 +1,24 @@
1
+ name: "Sphinx: Render docs"
2
+
3
+ on: push
4
+
5
+ jobs:
6
+ build:
7
+ runs-on: ubuntu-latest
8
+ permissions:
9
+ contents: write
10
+ steps:
11
+ - uses: actions/checkout@v4
12
+ - name: Build HTML
13
+ uses: ammaraskar/sphinx-action@master
14
+ - name: Upload artifacts
15
+ uses: actions/upload-artifact@v4
16
+ with:
17
+ name: html-docs
18
+ path: docs/build/html/
19
+ - name: Deploy
20
+ uses: peaceiris/actions-gh-pages@v3
21
+ if: github.ref == 'refs/heads/main'
22
+ with:
23
+ github_token: ${{ secrets.GITHUB_TOKEN }}
24
+ publish_dir: docs/build/html
@@ -0,0 +1,8 @@
1
+ .vscode/
2
+ build/
3
+ dist/
4
+ *.egg-info/
5
+ *.egg
6
+ *.py[cod]
7
+ __pycache__/
8
+ venv/