Metadata-Version: 2.1
Name: pyFFS
Version: 2.2.3
Summary: Fast Fourier Series library
Home-page: https://github.com/imagingofthings/pyFFS
Author: Sepand KASHANI, Eric BEZZAM, Matthieu SIMEONI
Author-email: kashani.sepand@gmail.com
License: BSD
Download-URL: https://github.com/imagingofthings/pyFFS
Description: .. #############################################################################
        .. README.rst
        .. ==========
        .. Author : Sepand KASHANI [kashani.sepand@gmail.com]
        .. #############################################################################
        
        #####
        pyFFS
        #####
        
        *pyFFS* is a collection of efficient algorithms to compute Fourier Series and
        related transforms.
        
        
        Installation
        ------------
        
        ::
        
            $ pip install pyFFS
        
        
        Developer Install
        -----------------
        
        Recommended setup using Anaconda, for optimized numerical libraries:
        
        ::
        
            # Create Anaconda environment
            $ conda create --name pyffs python=3
            $ conda activate pyffs
        
            # Clone repository
            $ git clone https://github.com/imagingofthings/pyFFS.git
            $ cd pyFFS
            $ # git checkout <commit>
        
            # Install requirements with conda
            $ conda install --file requirements.txt
        
            # Optionally install CuPy for GPU support
            $ conda install -c conda-forge cupy
        
            # Install pyFFS
            $ pip install -e .[dev]
            $ pytest                        # Run test suite
            $ python setup.py build_sphinx  # Generate documentation
        
        More information about CuPy setup can be found `here <https://docs.cupy.dev/en/stable/install.html#installation)>`_.
        
        New release
        -----------
        From master branch of original repo:
        
        ::
        
            # Create tag and upload
            $ git tag -a vX.X.X -m "Description."
            $ git push origin vX.X.X
        
            # Create package and upload to Pypi
            $ python setup.py sdist
            $ python -m twine upload  dist/pyFFS-X.X.X.tar.gz
        
        You will need a username and password for uploading to PyPi.
        
        Finally, `on GitHub <https://github.com/imagingofthings/pyFFS/releases>`_ set the new tag as the latest release by
        pressing on it, at top right selecting "Edit tag", and at the bottom pressing "Publish release".
        
        Remarks
        -------
        
        pyFFS is developed and tested on x86_64 systems running Linux and macOS
        Catalina.
        
        Citing this work
        ----------------
        
        If you use this package in your own research, please cite `our paper <https://arxiv.org/abs/2110.00262>`_.
        
        ::
        
            @article{10.1137/21M1448641,
                author = {Bezzam, Eric and Kashani, Sepand and Hurley, Paul and Vetterli, Martin and Simeoni, Matthieu},
                title = {PyFFS: A Python Library for Fast Fourier Series Computation and Interpolation with GPU Acceleration},
                year = {2022},
                issue_date = {Aug 2022},
                publisher = {Society for Industrial and Applied Mathematics},
                address = {USA},
                volume = {44},
                number = {4},
                issn = {1064-8275},
                url = {https://doi.org/10.1137/21M1448641},
                doi = {10.1137/21M1448641},
                journal = {SIAM J. Sci. Comput.},
                month = {jan},
                pages = {C346–C366},
                numpages = {21},
                keywords = {GPU, chirp Z-transform, numerical library, 97N80, fast Fourier series, bandlimited interpolation, 65T40, 42B05, 97N50, Python}
            }
        
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: BSD License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Topic :: Scientific/Engineering
Requires-Python: >=3.6
Description-Content-Type: text/x-rst; charset=UTF-8
Provides-Extra: dev
Provides-Extra: cuda110
