diff options
author | CoprDistGit <infra@openeuler.org> | 2023-03-09 15:53:33 +0000 |
---|---|---|
committer | CoprDistGit <infra@openeuler.org> | 2023-03-09 15:53:33 +0000 |
commit | 16bd93013ea3492cbb183e5097d69835ee6af5b2 (patch) | |
tree | 70398eba0978fdc6584d1507306e2f597b3f8464 | |
parent | a1c750ff470ddcf5c8682b31fb4ebf0fbbf7f2ed (diff) |
automatic import of python-pyshtools
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | python-pyshtools.spec | 563 | ||||
-rw-r--r-- | sources | 1 |
3 files changed, 565 insertions, 0 deletions
@@ -0,0 +1 @@ +/pyshtools-4.10.1.tar.gz diff --git a/python-pyshtools.spec b/python-pyshtools.spec new file mode 100644 index 0000000..5d5472f --- /dev/null +++ b/python-pyshtools.spec @@ -0,0 +1,563 @@ +%global _empty_manifest_terminate_build 0 +Name: python-pyshtools +Version: 4.10.1 +Release: 1 +Summary: SHTOOLS - Spherical Harmonic Tools +License: BSD-3-Clause +URL: https://shtools.github.io/SHTOOLS/ +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/f9/0c/b43cd8d46abac919d0a04a8c7f69d1b19be34b895e2993992ac8f0efacdb/pyshtools-4.10.1.tar.gz + + +%description +|Documentation| |DOI| |Paper| |Binder| |Chat on matrix| |Chat at gitter| +|Twitter| |Mastodon Follow| + +SHTOOLS/pyshtools is a Fortran-95/Python library that can be used for +spherical harmonic transforms, multitaper spectral analyses, expansions +of gridded data into Slepian basis functions, and standard operations on +global gravitational and magnetic field data. + +FEATURES +~~~~~~~~ + +- Supports all standard normalizations and phase conventions of the + spherical harmonic functions. + +- Effortless conversion between real and complex harmonics, between + phase conventions, and between 4π normalized, Schmidt + semi-normalized, orthonormalized, and unnormalized harmonics. + +- Use of both regularly sampled geographic grids and grids appropriate + for Gauss-Legendre quadrature. + +- Spherical harmonic transforms proven to be accurate up to about + degree 2800 for the Fortran 95 code, and beyond using the DUCC0 + backend. + +- Perform localized multitaper spectral analyses, or expand gridded + data in terms of localized Slepian basis functions. + +- Support for standard data and file formats, including *xarray* and + *netcdf*. + +- Import research-grade gravity, topography, and magnetic field + datasets with a single command. + +- Creation of publication quality maps using + `Cartopy <https://scitools.org.uk/cartopy>`__ and + `pygmt <https://www.pygmt.org/>`__. + +- OpenMP compatible and OpenMP thread-safe versions of the Fortran + routines. + +INSTALLATION +~~~~~~~~~~~~ + +pyshtools (for Python) +^^^^^^^^^^^^^^^^^^^^^^ + +Install using ``conda``: + +.. code:: bash + + conda install -c conda-forge pyshtools # Linux and macOS only + conda update -c conda-forge pyshtools # to upgrade a pre-existing installation + +Install using ``pip``: + +.. code:: bash + + pip install pyshtools + pip install --upgrade pyshtools # to upgrade a pre-existing installation + pip install pyshtools --no-binary pyshtools # build from source + pip install git+https://github.com/SHTOOLS/SHTOOLS@develop # install the develop branch from source + +For developers, install the requirements + +.. code:: bash + + # Linux: install gfortran, fftw3, blas, and lapack + sudo apt-get install g++ gfortran libfftw3-dev libblas-dev liblapack-dev + # macOS: install fftw using brew or macports + brew install fftw + sudo port install fftw-3 + # macOS: for LAPACK, link to the system '-framework Accelerate' or install openblas + +then clone the shtools repo and install manually: + +.. code:: bash + + git clone https://github.com/SHTOOLS/SHTOOLS.git + cd shtools + git checkout develop + pip install -e . # install into the shtools folder and link to the active python environment + +SHTOOLS (for Fortran 95) +^^^^^^^^^^^^^^^^^^^^^^^^ + +Install using the `brew <http://brew.sh/>`__ package manager (macOS, +linux, windows): + +.. code:: bash + + brew install shtools + +Install using the `macports <https://www.macports.org/>`__ package +manager (macOS) + +.. code:: bash + + sudo port install shtools + +Install from source. Clone or download the shtools repo, and then +execute one (or both) of the following commands in the shtools +directory: + +.. code:: bash + + make fortran + make fortran-mp # for OpenMP Fortran routines + +Further installation instructions and options can be found in the `web +documentation <https://shtools.github.io/SHTOOLS/>`__. + +HOW TO USE +~~~~~~~~~~ + +SHTOOLS can be invoked in any Fortran 95 or Python program. The core +software is written in Fortran 95, and Python wrappers and dedicated +classes allow simple access to the fortran-compiled routines. A variety +of Python tutorials and guides are included that demonstrate the major +features of the library. + +To get started, click on the following Python tutorials and then run +them interactively in Binder: + +- `Spherical harmonic coefficients and + grids <https://nbviewer.jupyter.org/github/SHTOOLS/SHTOOLS/blob/master/examples/notebooks/grids-and-coefficients.ipynb>`__ +- `Localization windows and spectral + analysis <https://nbviewer.jupyter.org/github/SHTOOLS/SHTOOLS/blob/master/examples/notebooks/localized-spectral-analysis.ipynb>`__ +- `Gravity and magnetic + fields <https://nbviewer.jupyter.org/github/SHTOOLS/SHTOOLS/blob/master/examples/notebooks/gravity-and-magnetic-fields.ipynb>`__ +- `Plotting + maps <https://nbviewer.jupyter.org/github/SHTOOLS/SHTOOLS/blob/master/examples/notebooks/plotting-maps.ipynb>`__ + +DEVELOPERS +~~~~~~~~~~ + +We work on the ``develop`` branch and only push releases to ``master``. +Please base all pull requests on ``develop``. + +REFERENCE +~~~~~~~~~ + +Mark A. Wieczorek and Matthias Meschede (2018). SHTools — Tools for +working with spherical harmonics, *Geochemistry, Geophysics, +Geosystems*, 19, 2574-2592, +doi:`10.1029/2018GC007529 <https://doi.org/10.1029/2018GC007529>`__. + +.. |Documentation| image:: https://img.shields.io/badge/documentation-shtools.github.io%2FSHTOOLS%2F-yellow.svg + :target: https://shtools.github.io/SHTOOLS/ +.. |DOI| image:: https://zenodo.org/badge/doi/10.5281/zenodo.592762.svg + :target: https://doi.org/10.5281/zenodo.592762 +.. |Paper| image:: https://img.shields.io/badge/paper-10.1029/2018GC007529-orange.svg + :target: https://doi.org/10.1029/2018GC007529 +.. |Binder| image:: https://mybinder.org/badge_logo.svg + :target: https://mybinder.org/v2/gh/SHTOOLS/SHTOOLS/master?filepath=examples%2Fnotebooks%2F +.. |Chat on matrix| image:: https://img.shields.io/badge/chat-on_%5Bmatrix%5D-4bb596.svg + :target: https://matrix.to/#/#pyshtools:matrix.org?via=matrix.org&via=gitter.im +.. |Chat at gitter| image:: https://badges.gitter.im/SHTOOLS/SHTOOLS.svg + :target: https://gitter.im/SHTOOLS/SHTOOLS?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge +.. |Twitter| image:: https://img.shields.io/twitter/follow/pyshtools.svg?style=social&label=Follow + :target: https://twitter.com/intent/follow?screen_name=pyshtools +.. |Mastodon Follow| image:: https://img.shields.io/mastodon/follow/108112567255227248?domain=https%3A%2F%2Ffosstodon.org&style=social + :target: https://fosstodon.org/users/shtools/remote_follow + + +%package -n python3-pyshtools +Summary: SHTOOLS - Spherical Harmonic Tools +Provides: python-pyshtools +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +BuildRequires: python3-cffi +BuildRequires: gcc +BuildRequires: gdb +%description -n python3-pyshtools +|Documentation| |DOI| |Paper| |Binder| |Chat on matrix| |Chat at gitter| +|Twitter| |Mastodon Follow| + +SHTOOLS/pyshtools is a Fortran-95/Python library that can be used for +spherical harmonic transforms, multitaper spectral analyses, expansions +of gridded data into Slepian basis functions, and standard operations on +global gravitational and magnetic field data. + +FEATURES +~~~~~~~~ + +- Supports all standard normalizations and phase conventions of the + spherical harmonic functions. + +- Effortless conversion between real and complex harmonics, between + phase conventions, and between 4π normalized, Schmidt + semi-normalized, orthonormalized, and unnormalized harmonics. + +- Use of both regularly sampled geographic grids and grids appropriate + for Gauss-Legendre quadrature. + +- Spherical harmonic transforms proven to be accurate up to about + degree 2800 for the Fortran 95 code, and beyond using the DUCC0 + backend. + +- Perform localized multitaper spectral analyses, or expand gridded + data in terms of localized Slepian basis functions. + +- Support for standard data and file formats, including *xarray* and + *netcdf*. + +- Import research-grade gravity, topography, and magnetic field + datasets with a single command. + +- Creation of publication quality maps using + `Cartopy <https://scitools.org.uk/cartopy>`__ and + `pygmt <https://www.pygmt.org/>`__. + +- OpenMP compatible and OpenMP thread-safe versions of the Fortran + routines. + +INSTALLATION +~~~~~~~~~~~~ + +pyshtools (for Python) +^^^^^^^^^^^^^^^^^^^^^^ + +Install using ``conda``: + +.. code:: bash + + conda install -c conda-forge pyshtools # Linux and macOS only + conda update -c conda-forge pyshtools # to upgrade a pre-existing installation + +Install using ``pip``: + +.. code:: bash + + pip install pyshtools + pip install --upgrade pyshtools # to upgrade a pre-existing installation + pip install pyshtools --no-binary pyshtools # build from source + pip install git+https://github.com/SHTOOLS/SHTOOLS@develop # install the develop branch from source + +For developers, install the requirements + +.. code:: bash + + # Linux: install gfortran, fftw3, blas, and lapack + sudo apt-get install g++ gfortran libfftw3-dev libblas-dev liblapack-dev + # macOS: install fftw using brew or macports + brew install fftw + sudo port install fftw-3 + # macOS: for LAPACK, link to the system '-framework Accelerate' or install openblas + +then clone the shtools repo and install manually: + +.. code:: bash + + git clone https://github.com/SHTOOLS/SHTOOLS.git + cd shtools + git checkout develop + pip install -e . # install into the shtools folder and link to the active python environment + +SHTOOLS (for Fortran 95) +^^^^^^^^^^^^^^^^^^^^^^^^ + +Install using the `brew <http://brew.sh/>`__ package manager (macOS, +linux, windows): + +.. code:: bash + + brew install shtools + +Install using the `macports <https://www.macports.org/>`__ package +manager (macOS) + +.. code:: bash + + sudo port install shtools + +Install from source. Clone or download the shtools repo, and then +execute one (or both) of the following commands in the shtools +directory: + +.. code:: bash + + make fortran + make fortran-mp # for OpenMP Fortran routines + +Further installation instructions and options can be found in the `web +documentation <https://shtools.github.io/SHTOOLS/>`__. + +HOW TO USE +~~~~~~~~~~ + +SHTOOLS can be invoked in any Fortran 95 or Python program. The core +software is written in Fortran 95, and Python wrappers and dedicated +classes allow simple access to the fortran-compiled routines. A variety +of Python tutorials and guides are included that demonstrate the major +features of the library. + +To get started, click on the following Python tutorials and then run +them interactively in Binder: + +- `Spherical harmonic coefficients and + grids <https://nbviewer.jupyter.org/github/SHTOOLS/SHTOOLS/blob/master/examples/notebooks/grids-and-coefficients.ipynb>`__ +- `Localization windows and spectral + analysis <https://nbviewer.jupyter.org/github/SHTOOLS/SHTOOLS/blob/master/examples/notebooks/localized-spectral-analysis.ipynb>`__ +- `Gravity and magnetic + fields <https://nbviewer.jupyter.org/github/SHTOOLS/SHTOOLS/blob/master/examples/notebooks/gravity-and-magnetic-fields.ipynb>`__ +- `Plotting + maps <https://nbviewer.jupyter.org/github/SHTOOLS/SHTOOLS/blob/master/examples/notebooks/plotting-maps.ipynb>`__ + +DEVELOPERS +~~~~~~~~~~ + +We work on the ``develop`` branch and only push releases to ``master``. +Please base all pull requests on ``develop``. + +REFERENCE +~~~~~~~~~ + +Mark A. Wieczorek and Matthias Meschede (2018). SHTools — Tools for +working with spherical harmonics, *Geochemistry, Geophysics, +Geosystems*, 19, 2574-2592, +doi:`10.1029/2018GC007529 <https://doi.org/10.1029/2018GC007529>`__. + +.. |Documentation| image:: https://img.shields.io/badge/documentation-shtools.github.io%2FSHTOOLS%2F-yellow.svg + :target: https://shtools.github.io/SHTOOLS/ +.. |DOI| image:: https://zenodo.org/badge/doi/10.5281/zenodo.592762.svg + :target: https://doi.org/10.5281/zenodo.592762 +.. |Paper| image:: https://img.shields.io/badge/paper-10.1029/2018GC007529-orange.svg + :target: https://doi.org/10.1029/2018GC007529 +.. |Binder| image:: https://mybinder.org/badge_logo.svg + :target: https://mybinder.org/v2/gh/SHTOOLS/SHTOOLS/master?filepath=examples%2Fnotebooks%2F +.. |Chat on matrix| image:: https://img.shields.io/badge/chat-on_%5Bmatrix%5D-4bb596.svg + :target: https://matrix.to/#/#pyshtools:matrix.org?via=matrix.org&via=gitter.im +.. |Chat at gitter| image:: https://badges.gitter.im/SHTOOLS/SHTOOLS.svg + :target: https://gitter.im/SHTOOLS/SHTOOLS?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge +.. |Twitter| image:: https://img.shields.io/twitter/follow/pyshtools.svg?style=social&label=Follow + :target: https://twitter.com/intent/follow?screen_name=pyshtools +.. |Mastodon Follow| image:: https://img.shields.io/mastodon/follow/108112567255227248?domain=https%3A%2F%2Ffosstodon.org&style=social + :target: https://fosstodon.org/users/shtools/remote_follow + + +%package help +Summary: Development documents and examples for pyshtools +Provides: python3-pyshtools-doc +%description help +|Documentation| |DOI| |Paper| |Binder| |Chat on matrix| |Chat at gitter| +|Twitter| |Mastodon Follow| + +SHTOOLS/pyshtools is a Fortran-95/Python library that can be used for +spherical harmonic transforms, multitaper spectral analyses, expansions +of gridded data into Slepian basis functions, and standard operations on +global gravitational and magnetic field data. + +FEATURES +~~~~~~~~ + +- Supports all standard normalizations and phase conventions of the + spherical harmonic functions. + +- Effortless conversion between real and complex harmonics, between + phase conventions, and between 4π normalized, Schmidt + semi-normalized, orthonormalized, and unnormalized harmonics. + +- Use of both regularly sampled geographic grids and grids appropriate + for Gauss-Legendre quadrature. + +- Spherical harmonic transforms proven to be accurate up to about + degree 2800 for the Fortran 95 code, and beyond using the DUCC0 + backend. + +- Perform localized multitaper spectral analyses, or expand gridded + data in terms of localized Slepian basis functions. + +- Support for standard data and file formats, including *xarray* and + *netcdf*. + +- Import research-grade gravity, topography, and magnetic field + datasets with a single command. + +- Creation of publication quality maps using + `Cartopy <https://scitools.org.uk/cartopy>`__ and + `pygmt <https://www.pygmt.org/>`__. + +- OpenMP compatible and OpenMP thread-safe versions of the Fortran + routines. + +INSTALLATION +~~~~~~~~~~~~ + +pyshtools (for Python) +^^^^^^^^^^^^^^^^^^^^^^ + +Install using ``conda``: + +.. code:: bash + + conda install -c conda-forge pyshtools # Linux and macOS only + conda update -c conda-forge pyshtools # to upgrade a pre-existing installation + +Install using ``pip``: + +.. code:: bash + + pip install pyshtools + pip install --upgrade pyshtools # to upgrade a pre-existing installation + pip install pyshtools --no-binary pyshtools # build from source + pip install git+https://github.com/SHTOOLS/SHTOOLS@develop # install the develop branch from source + +For developers, install the requirements + +.. code:: bash + + # Linux: install gfortran, fftw3, blas, and lapack + sudo apt-get install g++ gfortran libfftw3-dev libblas-dev liblapack-dev + # macOS: install fftw using brew or macports + brew install fftw + sudo port install fftw-3 + # macOS: for LAPACK, link to the system '-framework Accelerate' or install openblas + +then clone the shtools repo and install manually: + +.. code:: bash + + git clone https://github.com/SHTOOLS/SHTOOLS.git + cd shtools + git checkout develop + pip install -e . # install into the shtools folder and link to the active python environment + +SHTOOLS (for Fortran 95) +^^^^^^^^^^^^^^^^^^^^^^^^ + +Install using the `brew <http://brew.sh/>`__ package manager (macOS, +linux, windows): + +.. code:: bash + + brew install shtools + +Install using the `macports <https://www.macports.org/>`__ package +manager (macOS) + +.. code:: bash + + sudo port install shtools + +Install from source. Clone or download the shtools repo, and then +execute one (or both) of the following commands in the shtools +directory: + +.. code:: bash + + make fortran + make fortran-mp # for OpenMP Fortran routines + +Further installation instructions and options can be found in the `web +documentation <https://shtools.github.io/SHTOOLS/>`__. + +HOW TO USE +~~~~~~~~~~ + +SHTOOLS can be invoked in any Fortran 95 or Python program. The core +software is written in Fortran 95, and Python wrappers and dedicated +classes allow simple access to the fortran-compiled routines. A variety +of Python tutorials and guides are included that demonstrate the major +features of the library. + +To get started, click on the following Python tutorials and then run +them interactively in Binder: + +- `Spherical harmonic coefficients and + grids <https://nbviewer.jupyter.org/github/SHTOOLS/SHTOOLS/blob/master/examples/notebooks/grids-and-coefficients.ipynb>`__ +- `Localization windows and spectral + analysis <https://nbviewer.jupyter.org/github/SHTOOLS/SHTOOLS/blob/master/examples/notebooks/localized-spectral-analysis.ipynb>`__ +- `Gravity and magnetic + fields <https://nbviewer.jupyter.org/github/SHTOOLS/SHTOOLS/blob/master/examples/notebooks/gravity-and-magnetic-fields.ipynb>`__ +- `Plotting + maps <https://nbviewer.jupyter.org/github/SHTOOLS/SHTOOLS/blob/master/examples/notebooks/plotting-maps.ipynb>`__ + +DEVELOPERS +~~~~~~~~~~ + +We work on the ``develop`` branch and only push releases to ``master``. +Please base all pull requests on ``develop``. + +REFERENCE +~~~~~~~~~ + +Mark A. Wieczorek and Matthias Meschede (2018). SHTools — Tools for +working with spherical harmonics, *Geochemistry, Geophysics, +Geosystems*, 19, 2574-2592, +doi:`10.1029/2018GC007529 <https://doi.org/10.1029/2018GC007529>`__. + +.. |Documentation| image:: https://img.shields.io/badge/documentation-shtools.github.io%2FSHTOOLS%2F-yellow.svg + :target: https://shtools.github.io/SHTOOLS/ +.. |DOI| image:: https://zenodo.org/badge/doi/10.5281/zenodo.592762.svg + :target: https://doi.org/10.5281/zenodo.592762 +.. |Paper| image:: https://img.shields.io/badge/paper-10.1029/2018GC007529-orange.svg + :target: https://doi.org/10.1029/2018GC007529 +.. |Binder| image:: https://mybinder.org/badge_logo.svg + :target: https://mybinder.org/v2/gh/SHTOOLS/SHTOOLS/master?filepath=examples%2Fnotebooks%2F +.. |Chat on matrix| image:: https://img.shields.io/badge/chat-on_%5Bmatrix%5D-4bb596.svg + :target: https://matrix.to/#/#pyshtools:matrix.org?via=matrix.org&via=gitter.im +.. |Chat at gitter| image:: https://badges.gitter.im/SHTOOLS/SHTOOLS.svg + :target: https://gitter.im/SHTOOLS/SHTOOLS?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge +.. |Twitter| image:: https://img.shields.io/twitter/follow/pyshtools.svg?style=social&label=Follow + :target: https://twitter.com/intent/follow?screen_name=pyshtools +.. |Mastodon Follow| image:: https://img.shields.io/mastodon/follow/108112567255227248?domain=https%3A%2F%2Ffosstodon.org&style=social + :target: https://fosstodon.org/users/shtools/remote_follow + + +%prep +%autosetup -n pyshtools-4.10.1 + +%build +%py3_build + +%install +%py3_install +install -d -m755 %{buildroot}/%{_pkgdocdir} +if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi +if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi +if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi +if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi +pushd %{buildroot} +if [ -d usr/lib ]; then + find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/lib64 ]; then + find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/bin ]; then + find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/sbin ]; then + find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst +fi +touch doclist.lst +if [ -d usr/share/man ]; then + find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst +fi +popd +mv %{buildroot}/filelist.lst . +mv %{buildroot}/doclist.lst . + +%files -n python3-pyshtools -f filelist.lst +%dir %{python3_sitearch}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Thu Mar 09 2023 Python_Bot <Python_Bot@openeuler.org> - 4.10.1-1 +- Package Spec generated @@ -0,0 +1 @@ +eb3ef73d16c3c936abf215267c6ca334 pyshtools-4.10.1.tar.gz |