%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
* Fri Apr 07 2023 Python_Bot <Python_Bot@openeuler.org> - 4.10.1-1
- Package Spec generated