solar-dynamics-observatory 0.0.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 (24) hide show
  1. solar_dynamics_observatory-0.0.1/.github/workflows/black.yml +17 -0
  2. solar_dynamics_observatory-0.0.1/.github/workflows/publish.yml +33 -0
  3. solar_dynamics_observatory-0.0.1/.github/workflows/ruff.yml +14 -0
  4. solar_dynamics_observatory-0.0.1/.readthedocs.yml +18 -0
  5. solar_dynamics_observatory-0.0.1/PKG-INFO +27 -0
  6. solar_dynamics_observatory-0.0.1/README.md +2 -0
  7. solar_dynamics_observatory-0.0.1/docs/.gitignore +2 -0
  8. solar_dynamics_observatory-0.0.1/docs/Makefile +20 -0
  9. solar_dynamics_observatory-0.0.1/docs/_static/.gitkeep +0 -0
  10. solar_dynamics_observatory-0.0.1/docs/_templates/class_custom.rst +40 -0
  11. solar_dynamics_observatory-0.0.1/docs/_templates/function_custom.rst +5 -0
  12. solar_dynamics_observatory-0.0.1/docs/_templates/module_custom.rst +69 -0
  13. solar_dynamics_observatory-0.0.1/docs/conf.py +98 -0
  14. solar_dynamics_observatory-0.0.1/docs/index.rst +44 -0
  15. solar_dynamics_observatory-0.0.1/docs/make.bat +35 -0
  16. solar_dynamics_observatory-0.0.1/docs/refs.bib +14 -0
  17. solar_dynamics_observatory-0.0.1/pyproject.toml +42 -0
  18. solar_dynamics_observatory-0.0.1/sdo/__init__.py +3 -0
  19. solar_dynamics_observatory-0.0.1/setup.cfg +4 -0
  20. solar_dynamics_observatory-0.0.1/solar_dynamics_observatory.egg-info/PKG-INFO +27 -0
  21. solar_dynamics_observatory-0.0.1/solar_dynamics_observatory.egg-info/SOURCES.txt +22 -0
  22. solar_dynamics_observatory-0.0.1/solar_dynamics_observatory.egg-info/dependency_links.txt +1 -0
  23. solar_dynamics_observatory-0.0.1/solar_dynamics_observatory.egg-info/requires.txt +16 -0
  24. solar_dynamics_observatory-0.0.1/solar_dynamics_observatory.egg-info/top_level.txt +1 -0
@@ -0,0 +1,17 @@
1
+ name: Black
2
+
3
+ on:
4
+ push:
5
+ branches:
6
+ - main
7
+ pull_request:
8
+
9
+ jobs:
10
+ black:
11
+ runs-on: ubuntu-latest
12
+ steps:
13
+ - uses: actions/checkout@v3
14
+ - uses: psf/black@stable
15
+ with:
16
+ options: "--check --verbose --diff"
17
+ src: "./sdo"
@@ -0,0 +1,33 @@
1
+ name: Publish to PyPI
2
+
3
+ permissions:
4
+ id-token: write
5
+
6
+ on:
7
+ release:
8
+ types: [published]
9
+
10
+ jobs:
11
+ publish:
12
+ name: Build and publish to PyPI
13
+ if: startsWith(github.ref, 'refs/tags')
14
+ runs-on: ubuntu-latest
15
+ steps:
16
+ - uses: actions/checkout@master
17
+ - name: Set up Python
18
+ uses: actions/setup-python@v3
19
+ - name: Install pypa/build
20
+ run: >-
21
+ python -m
22
+ pip install
23
+ build
24
+ --user
25
+ - name: Build a binary wheel and a source tarball
26
+ run: >-
27
+ python -m
28
+ build
29
+ --sdist
30
+ --wheel
31
+ --outdir dist/
32
+ - name: Publish to PyPI
33
+ uses: pypa/gh-action-pypi-publish@release/v1
@@ -0,0 +1,14 @@
1
+ name: Ruff
2
+
3
+ on:
4
+ push:
5
+ branches:
6
+ - main
7
+ pull_request:
8
+
9
+ jobs:
10
+ ruff:
11
+ runs-on: ubuntu-latest
12
+ steps:
13
+ - uses: actions/checkout@v4
14
+ - uses: chartboost/ruff-action@v1
@@ -0,0 +1,18 @@
1
+ version: 2
2
+
3
+ build:
4
+ os: ubuntu-22.04
5
+ tools:
6
+ python: "3.12"
7
+ apt_packages:
8
+ - graphviz
9
+
10
+ sphinx:
11
+ configuration: docs/conf.py
12
+
13
+ python:
14
+ install:
15
+ - method: pip
16
+ path: .
17
+ extra_requirements:
18
+ - doc
@@ -0,0 +1,27 @@
1
+ Metadata-Version: 2.1
2
+ Name: solar-dynamics-observatory
3
+ Version: 0.0.1
4
+ Summary: A Python library to download and analyze images from the NASA Solar Dynamics Observatory (SDO).
5
+ Author-email: "Roy T. Smart" <roytsmart@gmail.com>
6
+ Project-URL: Homepage, https://github.com/sun-data/solar-dynamics-observatory
7
+ Project-URL: Documentation, https://sdo.readthedocs.io/en/latest
8
+ Classifier: Programming Language :: Python :: 3
9
+ Requires-Python: >=3.10
10
+ Description-Content-Type: text/markdown
11
+ Requires-Dist: astropy
12
+ Requires-Dist: named-arrays==0.8
13
+ Provides-Extra: test
14
+ Requires-Dist: pytest; extra == "test"
15
+ Provides-Extra: doc
16
+ Requires-Dist: pytest; extra == "doc"
17
+ Requires-Dist: matplotlib; extra == "doc"
18
+ Requires-Dist: graphviz; extra == "doc"
19
+ Requires-Dist: sphinx-autodoc-typehints; extra == "doc"
20
+ Requires-Dist: sphinxcontrib-bibtex; extra == "doc"
21
+ Requires-Dist: pydata-sphinx-theme; extra == "doc"
22
+ Requires-Dist: ipykernel; extra == "doc"
23
+ Requires-Dist: jupyter-sphinx; extra == "doc"
24
+ Requires-Dist: sphinx-favicon; extra == "doc"
25
+
26
+ # solar-dynamics-observatory
27
+ A Python library to download and analyze data from the NASA Solar Dynamics Observatory (SDO).
@@ -0,0 +1,2 @@
1
+ # solar-dynamics-observatory
2
+ A Python library to download and analyze data from the NASA Solar Dynamics Observatory (SDO).
@@ -0,0 +1,2 @@
1
+ _autosummary/
2
+ _build/
@@ -0,0 +1,20 @@
1
+ # Minimal makefile for Sphinx documentation
2
+ #
3
+
4
+ # You can set these variables from the command line, and also
5
+ # from the environment for the first two.
6
+ SPHINXOPTS ?=
7
+ SPHINXBUILD ?= sphinx-build
8
+ SOURCEDIR = .
9
+ BUILDDIR = _build
10
+
11
+ # Put it first so that "make" without argument is like "make help".
12
+ help:
13
+ @$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
14
+
15
+ .PHONY: help Makefile
16
+
17
+ # Catch-all target: route all unknown targets to Sphinx using the new
18
+ # "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
19
+ %: Makefile
20
+ @$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
File without changes
@@ -0,0 +1,40 @@
1
+ {{ name | escape | underline}}
2
+
3
+ .. currentmodule:: {{ module }}
4
+
5
+ .. autoclass:: {{ fullname }}
6
+ :members:
7
+ :show-inheritance:
8
+ :inherited-members:
9
+ :undoc-members:
10
+ :member-order: groupwise
11
+
12
+ {% block attributes %}
13
+ {% if attributes %}
14
+ .. rubric:: {{ _('Attributes') }}
15
+
16
+ .. autosummary::
17
+ {% for item in attributes %}
18
+ ~{{ name }}.{{ item }}
19
+ {%- endfor %}
20
+ {% endif %}
21
+ {% endblock %}
22
+
23
+ {% block methods %}
24
+ {% if methods %}
25
+ .. rubric:: {{ _('Methods') }}
26
+
27
+ .. autosummary::
28
+ {% for item in methods %}
29
+ ~{{ name }}.{{ item }}
30
+ {%- endfor %}
31
+ {% endif %}
32
+ {% endblock %}
33
+
34
+ {% block dia %}
35
+ .. rubric:: {{ _('Inheritance Diagram') }}
36
+
37
+ .. inheritance-diagram:: {{ fullname }}
38
+ :parts: 1
39
+ {% endblock %}
40
+
@@ -0,0 +1,5 @@
1
+ {{ name | escape | underline}}
2
+
3
+ .. currentmodule:: {{ module }}
4
+
5
+ .. autofunction:: {{ fullname }}
@@ -0,0 +1,69 @@
1
+ {{ name | escape | underline}}
2
+
3
+ .. automodule:: {{ fullname }}
4
+
5
+ {% block attributes %}
6
+ {% if attributes %}
7
+ .. rubric:: Module Attributes
8
+
9
+ .. autosummary::
10
+ :toctree:
11
+ {% for item in attributes %}
12
+ {{ item }}
13
+ {%- endfor %}
14
+ {% endif %}
15
+ {% endblock %}
16
+
17
+ {% block functions %}
18
+ {% if functions %}
19
+ .. rubric:: {{ _('Functions') }}
20
+
21
+ .. autosummary::
22
+ :toctree:
23
+ :template: function_custom.rst
24
+ {% for item in functions %}
25
+ {{ item }}
26
+ {%- endfor %}
27
+ {% endif %}
28
+ {% endblock %}
29
+
30
+ {% block classes %}
31
+ {% if classes %}
32
+ .. rubric:: {{ _('Classes') }}
33
+
34
+ .. autosummary::
35
+ :toctree:
36
+ :template: class_custom.rst
37
+ {% for item in classes %}
38
+ {{ item }}
39
+ {%- endfor %}
40
+ {% endif %}
41
+ {% endblock %}
42
+
43
+ {% block exceptions %}
44
+ {% if exceptions %}
45
+ .. rubric:: {{ _('Exceptions') }}
46
+
47
+ .. autosummary::
48
+ :toctree:
49
+ {% for item in exceptions %}
50
+ {{ item }}
51
+ {%- endfor %}
52
+ {% endif %}
53
+ {% endblock %}
54
+
55
+ {% block modules %}
56
+ {% if modules %}
57
+ .. rubric:: Modules
58
+
59
+ .. autosummary::
60
+ :toctree:
61
+ :template: module_custom.rst
62
+ :recursive:
63
+ {% for item in modules %}
64
+ {{ item }}
65
+ {%- endfor %}
66
+ {% endif %}
67
+ {% endblock %}
68
+
69
+
@@ -0,0 +1,98 @@
1
+ # Configuration file for the Sphinx documentation builder.
2
+ #
3
+ # This file only contains a selection of the most common options. For a full
4
+ # list see the documentation:
5
+ # https://www.sphinx-doc.org/en/master/usage/configuration.html
6
+
7
+ # -- Path setup --------------------------------------------------------------
8
+
9
+ # If extensions (or modules to document with autodoc) are in another directory,
10
+ # add these directories to sys.path here. If the directory is relative to the
11
+ # documentation root, use os.path.abspath to make it absolute, like shown here.
12
+ #
13
+ import os
14
+ import sys
15
+
16
+ package_path = os.path.abspath('../')
17
+ sys.path.insert(0, package_path)
18
+ os.environ['PYTHONPATH'] = ';'.join((package_path, os.environ.get('PYTHONPATH', '')))
19
+
20
+ # -- Project information -----------------------------------------------------
21
+
22
+ project = 'SDO'
23
+ copyright = '2024, Roy T. Smart'
24
+ author = 'Roy T. Smart'
25
+
26
+ # -- General configuration ---------------------------------------------------
27
+
28
+ # Add any Sphinx extension module names here, as strings. They can be
29
+ # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
30
+ # ones.
31
+ extensions = [
32
+ 'sphinx.ext.napoleon',
33
+ 'sphinx.ext.autodoc',
34
+ 'sphinx.ext.autosummary',
35
+ 'sphinx.ext.intersphinx',
36
+ 'sphinx.ext.inheritance_diagram',
37
+ 'sphinx.ext.viewcode',
38
+ 'sphinxcontrib.bibtex',
39
+ 'jupyter_sphinx',
40
+ ]
41
+ autosummary_generate = True # Turn on sphinx.ext.autosummary
42
+ autosummary_imported_members = True
43
+ autosummary_ignore_module_all = False
44
+ autodoc_typehints = "description"
45
+
46
+ graphviz_output_format = 'png'
47
+ inheritance_graph_attrs = dict(rankdir='TB')
48
+
49
+ # Add any paths that contain templates here, relative to this directory.
50
+ templates_path = ['_templates']
51
+
52
+ # List of patterns, relative to source directory, that match files and
53
+ # This pattern also affects html_static_path and html_extra_path.
54
+ # directories to ignore when looking for source files.
55
+ exclude_patterns = ['_build', 'Thumbs.db', '.DS_Store']
56
+
57
+ # -- Options for HTML output -------------------------------------------------
58
+
59
+ # The theme to use for HTML and HTML Help pages. See the documentation for
60
+ # a list of builtin themes.
61
+
62
+ html_theme = 'pydata_sphinx_theme'
63
+
64
+ # Add any paths that contain custom static files (such as style sheets) here,
65
+ # relative to this directory. They are copied after the builtin static files,
66
+ # so a file named "default.css" will overwrite the builtin "default.css".
67
+ html_static_path = ['_static']
68
+
69
+ html_theme_options = {
70
+ "icon_links": [
71
+ {
72
+ "name": "GitHub",
73
+ "url": "https://github.com/sun-data/solar-dynamics-observatory",
74
+ "icon": "fa-brands fa-github",
75
+ "type": "fontawesome",
76
+ },
77
+ {
78
+ "name": "PyPI",
79
+ "url": "https://pypi.org/project/solar-dynamics-observatory",
80
+ "icon": "fa-brands fa-python",
81
+ },
82
+ ],
83
+ }
84
+
85
+ # https://github.com/readthedocs/readthedocs.org/issues/2569
86
+ master_doc = 'index'
87
+
88
+ bibtex_bibfiles = ['refs.bib']
89
+ bibtex_default_style = 'plain'
90
+ bibtex_reference_style = 'author_year'
91
+
92
+ intersphinx_mapping = {
93
+ 'python': ('https://docs.python.org/3', None),
94
+ 'numpy': ('https://numpy.org/doc/stable/', None),
95
+ 'matplotlib': ('https://matplotlib.org/stable', None),
96
+ 'astropy': ('https://docs.astropy.org/en/stable/', None),
97
+ 'named_arrays': ('https://named-arrays.readthedocs.io/en/stable/', None)
98
+ }
@@ -0,0 +1,44 @@
1
+ Introduction
2
+ ============
3
+
4
+ The `Solar Dynamics Observatory <https://sdo.gsfc.nasa.gov>`_ (SDO)
5
+ :cite:p:`Pesnell2012` is a NASA satellite which has been continuously
6
+ observing the Sun since 2010.
7
+
8
+ This Python package aims to represent SDO imagery using :mod:`named_arrays`,
9
+ a named tensor implementation with :class:`astropy.units.Quantity` support.
10
+
11
+ Installation
12
+ ============
13
+
14
+ This package is published to PyPI and can be installed using pip.
15
+
16
+ .. code-block::
17
+
18
+ pip install solar-dynamics-observatory
19
+
20
+ API Reference
21
+ =============
22
+
23
+ .. autosummary::
24
+ :toctree: _autosummary
25
+ :template: module_custom.rst
26
+ :recursive:
27
+
28
+ sdo
29
+
30
+
31
+ Bibliography
32
+ ============
33
+
34
+ .. bibliography::
35
+
36
+ |
37
+
38
+
39
+ Indices and tables
40
+ ==================
41
+
42
+ * :ref:`genindex`
43
+ * :ref:`modindex`
44
+ * :ref:`search`
@@ -0,0 +1,35 @@
1
+ @ECHO OFF
2
+
3
+ pushd %~dp0
4
+
5
+ REM Command file for Sphinx documentation
6
+
7
+ if "%SPHINXBUILD%" == "" (
8
+ set SPHINXBUILD=sphinx-build
9
+ )
10
+ set SOURCEDIR=.
11
+ set BUILDDIR=_build
12
+
13
+ if "%1" == "" goto help
14
+
15
+ %SPHINXBUILD% >NUL 2>NUL
16
+ if errorlevel 9009 (
17
+ echo.
18
+ echo.The 'sphinx-build' command was not found. Make sure you have Sphinx
19
+ echo.installed, then set the SPHINXBUILD environment variable to point
20
+ echo.to the full path of the 'sphinx-build' executable. Alternatively you
21
+ echo.may add the Sphinx directory to PATH.
22
+ echo.
23
+ echo.If you don't have Sphinx installed, grab it from
24
+ echo.http://sphinx-doc.org/
25
+ exit /b 1
26
+ )
27
+
28
+ %SPHINXBUILD% -M %1 %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O%
29
+ goto end
30
+
31
+ :help
32
+ %SPHINXBUILD% -M help %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O%
33
+
34
+ :end
35
+ popd
@@ -0,0 +1,14 @@
1
+ @ARTICLE{Pesnell2012,
2
+ author = {{Pesnell}, W. Dean and {Thompson}, B.~J. and {Chamberlin}, P.~C.},
3
+ title = "{The Solar Dynamics Observatory (SDO)}",
4
+ journal = {\solphys},
5
+ keywords = {SDO, Solar cycle, Helioseismology, Coronal, Space weather},
6
+ year = 2012,
7
+ month = jan,
8
+ volume = {275},
9
+ number = {1-2},
10
+ pages = {3-15},
11
+ doi = {10.1007/s11207-011-9841-3},
12
+ adsurl = {https://ui.adsabs.harvard.edu/abs/2012SoPh..275....3P},
13
+ adsnote = {Provided by the SAO/NASA Astrophysics Data System}
14
+ }
@@ -0,0 +1,42 @@
1
+ [build-system]
2
+ requires = ["setuptools", "setuptools-scm"]
3
+ build-backend = "setuptools.build_meta"
4
+
5
+ [project]
6
+ name = "solar-dynamics-observatory"
7
+ authors = [
8
+ {name = "Roy T. Smart", email = "roytsmart@gmail.com"},
9
+ ]
10
+ description = "A Python library to download and analyze images from the NASA Solar Dynamics Observatory (SDO)."
11
+ readme = "README.md"
12
+ requires-python = ">=3.10"
13
+ classifiers = [
14
+ "Programming Language :: Python :: 3",
15
+ ]
16
+ dependencies = [
17
+ "astropy",
18
+ "named-arrays==0.8",
19
+ ]
20
+ dynamic = ["version"]
21
+
22
+ [project.optional-dependencies]
23
+ test = [
24
+ "pytest",
25
+ ]
26
+ doc = [
27
+ "pytest",
28
+ "matplotlib",
29
+ "graphviz",
30
+ "sphinx-autodoc-typehints",
31
+ "sphinxcontrib-bibtex",
32
+ "pydata-sphinx-theme",
33
+ "ipykernel",
34
+ "jupyter-sphinx",
35
+ "sphinx-favicon",
36
+ ]
37
+
38
+ [project.urls]
39
+ Homepage = "https://github.com/sun-data/solar-dynamics-observatory"
40
+ Documentation = "https://sdo.readthedocs.io/en/latest"
41
+
42
+ [tool.setuptools_scm]
@@ -0,0 +1,3 @@
1
+ """
2
+ Download and analyze SDO observations.
3
+ """
@@ -0,0 +1,4 @@
1
+ [egg_info]
2
+ tag_build =
3
+ tag_date = 0
4
+
@@ -0,0 +1,27 @@
1
+ Metadata-Version: 2.1
2
+ Name: solar-dynamics-observatory
3
+ Version: 0.0.1
4
+ Summary: A Python library to download and analyze images from the NASA Solar Dynamics Observatory (SDO).
5
+ Author-email: "Roy T. Smart" <roytsmart@gmail.com>
6
+ Project-URL: Homepage, https://github.com/sun-data/solar-dynamics-observatory
7
+ Project-URL: Documentation, https://sdo.readthedocs.io/en/latest
8
+ Classifier: Programming Language :: Python :: 3
9
+ Requires-Python: >=3.10
10
+ Description-Content-Type: text/markdown
11
+ Requires-Dist: astropy
12
+ Requires-Dist: named-arrays==0.8
13
+ Provides-Extra: test
14
+ Requires-Dist: pytest; extra == "test"
15
+ Provides-Extra: doc
16
+ Requires-Dist: pytest; extra == "doc"
17
+ Requires-Dist: matplotlib; extra == "doc"
18
+ Requires-Dist: graphviz; extra == "doc"
19
+ Requires-Dist: sphinx-autodoc-typehints; extra == "doc"
20
+ Requires-Dist: sphinxcontrib-bibtex; extra == "doc"
21
+ Requires-Dist: pydata-sphinx-theme; extra == "doc"
22
+ Requires-Dist: ipykernel; extra == "doc"
23
+ Requires-Dist: jupyter-sphinx; extra == "doc"
24
+ Requires-Dist: sphinx-favicon; extra == "doc"
25
+
26
+ # solar-dynamics-observatory
27
+ A Python library to download and analyze data from the NASA Solar Dynamics Observatory (SDO).
@@ -0,0 +1,22 @@
1
+ .readthedocs.yml
2
+ README.md
3
+ pyproject.toml
4
+ .github/workflows/black.yml
5
+ .github/workflows/publish.yml
6
+ .github/workflows/ruff.yml
7
+ docs/.gitignore
8
+ docs/Makefile
9
+ docs/conf.py
10
+ docs/index.rst
11
+ docs/make.bat
12
+ docs/refs.bib
13
+ docs/_static/.gitkeep
14
+ docs/_templates/class_custom.rst
15
+ docs/_templates/function_custom.rst
16
+ docs/_templates/module_custom.rst
17
+ sdo/__init__.py
18
+ solar_dynamics_observatory.egg-info/PKG-INFO
19
+ solar_dynamics_observatory.egg-info/SOURCES.txt
20
+ solar_dynamics_observatory.egg-info/dependency_links.txt
21
+ solar_dynamics_observatory.egg-info/requires.txt
22
+ solar_dynamics_observatory.egg-info/top_level.txt
@@ -0,0 +1,16 @@
1
+ astropy
2
+ named-arrays==0.8
3
+
4
+ [doc]
5
+ pytest
6
+ matplotlib
7
+ graphviz
8
+ sphinx-autodoc-typehints
9
+ sphinxcontrib-bibtex
10
+ pydata-sphinx-theme
11
+ ipykernel
12
+ jupyter-sphinx
13
+ sphinx-favicon
14
+
15
+ [test]
16
+ pytest