diff options
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | python-blimpy.spec | 456 | ||||
-rw-r--r-- | sources | 1 |
3 files changed, 458 insertions, 0 deletions
@@ -0,0 +1 @@ +/blimpy-2.1.4.tar.gz diff --git a/python-blimpy.spec b/python-blimpy.spec new file mode 100644 index 0000000..d3f8975 --- /dev/null +++ b/python-blimpy.spec @@ -0,0 +1,456 @@ +%global _empty_manifest_terminate_build 0 +Name: python-blimpy +Version: 2.1.4 +Release: 1 +Summary: Python utilities for Breakthrough Listen SETI observations +License: BSD +URL: https://github.com/ucberkeleyseti/blimpy +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/d2/0d/7ffc61a69a8582c810057c07445ed23d1617defe462ab9059981919bc2fc/blimpy-2.1.4.tar.gz +BuildArch: noarch + +Requires: python3-astropy +Requires: python3-numpy +Requires: python3-six +Requires: python3-setuptools +Requires: python3-matplotlib +Requires: python3-h5py +Requires: python3-scipy +Requires: python3-hdf5plugin +Requires: python3-pandas +Requires: python3-Pillow +Requires: python3-psutil +Requires: python3-pyparsing + +%description +[](https://github.com/UCBerkeleySETI/blimpy/actions) +[](https://blimpy.readthedocs.io/en/latest/?badge=latest) +[](https://codecov.io/gh/UCBerkeleySETI/blimpy) + [](http://joss.theoj.org/papers/e58ef21f0a924041bf9438fd75f8aed0) + +## Breakthrough Listen I/O Methods for Python. + +### Filterbank + Raw file readers + +This repository contains Python 2/3 readers for interacting with [Sigproc filterbank](http://sigproc.sourceforge.net/sigproc.pdf) (.fil), HDF5 (.h5) and [guppi raw](https://baseband.readthedocs.io/en/stable/guppi/) (.raw) files, +as used in the [Breakthrough Listen](https://seti.berkeley.edu) search for intelligent life. + + +### Installation + +#### System Dependencies +Sometimes the `pip` installation can fail if a system dependency is not installed. To fix this, make sure you have `curl` and install the required system dependencies with the command bellow: + +##### Debian/Ubuntu +``` +curl https://raw.githubusercontent.com/UCBerkeleySETI/blimpy/master/dependencies.txt | xargs -n 1 sudo apt install --no-install-recommends -y +``` + +#### Manual Installation + +The latest release can be installed via pip directly from this repository: + +``` +python3 -m pip install -U git+https://github.com/UCBerkeleySETI/blimpy +``` + +Or, the latest version of the development code can be installed from the github [repo](https://github.com/UCBerkeleySETI/blimpy) and then run `python setup.py install` or `pip install .` (with sudo if required), or by using the following terminal command: + +``` +python3 -m pip install -U https://github.com/UCBerkeleySETI/blimpy/tarball/master +``` + +To install everything required to run the unit tests, run: + +``` +python3 -m pip install -e .[full] +``` + +You will need `numpy`, `h5py`, `astropy`, `scipy`, and `matplotlib` as dependencies. A `pip install` should pull in numpy, h5py, and astropy, but you may still need to install scipy and matplotlib separately. +To interact with compressed files, you'll need the `hdf5plugin` package too. + +Note that h5py generally needs to be installed in this way: + +``` +$ python3 -m pip install --no-binary=h5py h5py +``` + +### Command line utilities + +After installation, the following command will display the metadata (header) values and some information about the data matrix: + +`watutil -i` + +Other command line utilities available post-installation: +* `bldice`, Extract a smaller frequency region from a Filterbank file (.fil or .h5 file). +* `calcload`, Calculate the Waterfall max_load value needed to load the entire data array for a given Filterbank file. +* `dsamp`, Down-sample (time-dimension only) from one Filterbank file to another. +* `fil2h5`, Convert a .fil file into .h5 format. +* `h52fil`, Convert an .h5 file into .fil format. +* `matchfils`, Check if two .fil files are the same. +* `peek`, Display a selected portion of values from the data matrix of a Filterbank file. +* `rawhdr`, Display the header fields of a raw guppi file. +* `rawutil`, Plot data in a guppi raw file. +* `srcname`, Patch the header source_name field in a .h5 file. +* `stax`, For a collection of .h5 or .fil files sharing the same frequency range, create a vertical stack of waterfall plots as a single PNG file. +* `stix`, For a single very large Filterbank file, create a horizontal or vertical stack of waterfall plots as a single PNG file. +* `watutil`, Information/read/write/plot utility for Filterbank files. + +Use the `-h` flag to any of the above command line utilities to display their available arguments. + +### Reading blimpy filterbank files in .fil or .h5 format + +The `blimpy.Waterfall` provides a Python API for interacting with filterbank data. It supports all BL filterbank data products; see this [example Jupyter notebook](https://github.com/UCBerkeleySETI/blimpy/blob/master/examples/voyager.ipynb) for an overview. + +From the python, ipython or jupiter notebook environments. + +```python +from blimpy import Waterfall +fb = Waterfall('/path/to/filterbank.fil') +#fb = Waterfall('/path/to/filterbank.h5') #works the same way +fb.info() +data = fb.data +``` + +### Reading guppi raw files +The [Guppi Raw format](https://github.com/UCBerkeleySETI/breakthrough/blob/master/doc/RAW-File-Format.md) can be read using the `GuppiRaw` class from `guppi.py`: + +```python +from blimpy import GuppiRaw +gr = GuppiRaw('/path/to/guppirawfile.raw') + +header, data = gr.read_next_data_block() +``` + +or + +```python +from blimpy import GuppiRaw +gr = GuppiRaw('/path/to/guppirawfile.raw') + +for header, data_x, data_y in gr.get_data(): + # process data +``` + +Note: most users should start analysis with filterbank files, which are smaller in size and have been generated from the guppi raw files. + +### Using blimpy inside Docker +The blimpy images are pushed to a public repository after each successful build on Travis. +If you have Docker installed, you can run the following commands to pull our images, which have the environment and dependencies set up for you. + +`docker pull fx196/blimpy:py3_kern_stable` + +Here is a [more complete guide](./docker_guide.md) on using blimpy in Docker. + +### Further reading + +A detailed overview of the data formats used in Breakthrough Listen can be found in our [data format paper](https://ui.adsabs.harvard.edu/abs/2019arXiv190607391L/abstract). An archive of data files from the Breakthrough Listen program is provided at [seti.berkeley.edu/opendata](http://seti.berkeley.edu/opendata). + +### If you have any requests or questions, please lets us know! + + +%package -n python3-blimpy +Summary: Python utilities for Breakthrough Listen SETI observations +Provides: python-blimpy +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-blimpy +[](https://github.com/UCBerkeleySETI/blimpy/actions) +[](https://blimpy.readthedocs.io/en/latest/?badge=latest) +[](https://codecov.io/gh/UCBerkeleySETI/blimpy) + [](http://joss.theoj.org/papers/e58ef21f0a924041bf9438fd75f8aed0) + +## Breakthrough Listen I/O Methods for Python. + +### Filterbank + Raw file readers + +This repository contains Python 2/3 readers for interacting with [Sigproc filterbank](http://sigproc.sourceforge.net/sigproc.pdf) (.fil), HDF5 (.h5) and [guppi raw](https://baseband.readthedocs.io/en/stable/guppi/) (.raw) files, +as used in the [Breakthrough Listen](https://seti.berkeley.edu) search for intelligent life. + + +### Installation + +#### System Dependencies +Sometimes the `pip` installation can fail if a system dependency is not installed. To fix this, make sure you have `curl` and install the required system dependencies with the command bellow: + +##### Debian/Ubuntu +``` +curl https://raw.githubusercontent.com/UCBerkeleySETI/blimpy/master/dependencies.txt | xargs -n 1 sudo apt install --no-install-recommends -y +``` + +#### Manual Installation + +The latest release can be installed via pip directly from this repository: + +``` +python3 -m pip install -U git+https://github.com/UCBerkeleySETI/blimpy +``` + +Or, the latest version of the development code can be installed from the github [repo](https://github.com/UCBerkeleySETI/blimpy) and then run `python setup.py install` or `pip install .` (with sudo if required), or by using the following terminal command: + +``` +python3 -m pip install -U https://github.com/UCBerkeleySETI/blimpy/tarball/master +``` + +To install everything required to run the unit tests, run: + +``` +python3 -m pip install -e .[full] +``` + +You will need `numpy`, `h5py`, `astropy`, `scipy`, and `matplotlib` as dependencies. A `pip install` should pull in numpy, h5py, and astropy, but you may still need to install scipy and matplotlib separately. +To interact with compressed files, you'll need the `hdf5plugin` package too. + +Note that h5py generally needs to be installed in this way: + +``` +$ python3 -m pip install --no-binary=h5py h5py +``` + +### Command line utilities + +After installation, the following command will display the metadata (header) values and some information about the data matrix: + +`watutil -i` + +Other command line utilities available post-installation: +* `bldice`, Extract a smaller frequency region from a Filterbank file (.fil or .h5 file). +* `calcload`, Calculate the Waterfall max_load value needed to load the entire data array for a given Filterbank file. +* `dsamp`, Down-sample (time-dimension only) from one Filterbank file to another. +* `fil2h5`, Convert a .fil file into .h5 format. +* `h52fil`, Convert an .h5 file into .fil format. +* `matchfils`, Check if two .fil files are the same. +* `peek`, Display a selected portion of values from the data matrix of a Filterbank file. +* `rawhdr`, Display the header fields of a raw guppi file. +* `rawutil`, Plot data in a guppi raw file. +* `srcname`, Patch the header source_name field in a .h5 file. +* `stax`, For a collection of .h5 or .fil files sharing the same frequency range, create a vertical stack of waterfall plots as a single PNG file. +* `stix`, For a single very large Filterbank file, create a horizontal or vertical stack of waterfall plots as a single PNG file. +* `watutil`, Information/read/write/plot utility for Filterbank files. + +Use the `-h` flag to any of the above command line utilities to display their available arguments. + +### Reading blimpy filterbank files in .fil or .h5 format + +The `blimpy.Waterfall` provides a Python API for interacting with filterbank data. It supports all BL filterbank data products; see this [example Jupyter notebook](https://github.com/UCBerkeleySETI/blimpy/blob/master/examples/voyager.ipynb) for an overview. + +From the python, ipython or jupiter notebook environments. + +```python +from blimpy import Waterfall +fb = Waterfall('/path/to/filterbank.fil') +#fb = Waterfall('/path/to/filterbank.h5') #works the same way +fb.info() +data = fb.data +``` + +### Reading guppi raw files +The [Guppi Raw format](https://github.com/UCBerkeleySETI/breakthrough/blob/master/doc/RAW-File-Format.md) can be read using the `GuppiRaw` class from `guppi.py`: + +```python +from blimpy import GuppiRaw +gr = GuppiRaw('/path/to/guppirawfile.raw') + +header, data = gr.read_next_data_block() +``` + +or + +```python +from blimpy import GuppiRaw +gr = GuppiRaw('/path/to/guppirawfile.raw') + +for header, data_x, data_y in gr.get_data(): + # process data +``` + +Note: most users should start analysis with filterbank files, which are smaller in size and have been generated from the guppi raw files. + +### Using blimpy inside Docker +The blimpy images are pushed to a public repository after each successful build on Travis. +If you have Docker installed, you can run the following commands to pull our images, which have the environment and dependencies set up for you. + +`docker pull fx196/blimpy:py3_kern_stable` + +Here is a [more complete guide](./docker_guide.md) on using blimpy in Docker. + +### Further reading + +A detailed overview of the data formats used in Breakthrough Listen can be found in our [data format paper](https://ui.adsabs.harvard.edu/abs/2019arXiv190607391L/abstract). An archive of data files from the Breakthrough Listen program is provided at [seti.berkeley.edu/opendata](http://seti.berkeley.edu/opendata). + +### If you have any requests or questions, please lets us know! + + +%package help +Summary: Development documents and examples for blimpy +Provides: python3-blimpy-doc +%description help +[](https://github.com/UCBerkeleySETI/blimpy/actions) +[](https://blimpy.readthedocs.io/en/latest/?badge=latest) +[](https://codecov.io/gh/UCBerkeleySETI/blimpy) + [](http://joss.theoj.org/papers/e58ef21f0a924041bf9438fd75f8aed0) + +## Breakthrough Listen I/O Methods for Python. + +### Filterbank + Raw file readers + +This repository contains Python 2/3 readers for interacting with [Sigproc filterbank](http://sigproc.sourceforge.net/sigproc.pdf) (.fil), HDF5 (.h5) and [guppi raw](https://baseband.readthedocs.io/en/stable/guppi/) (.raw) files, +as used in the [Breakthrough Listen](https://seti.berkeley.edu) search for intelligent life. + + +### Installation + +#### System Dependencies +Sometimes the `pip` installation can fail if a system dependency is not installed. To fix this, make sure you have `curl` and install the required system dependencies with the command bellow: + +##### Debian/Ubuntu +``` +curl https://raw.githubusercontent.com/UCBerkeleySETI/blimpy/master/dependencies.txt | xargs -n 1 sudo apt install --no-install-recommends -y +``` + +#### Manual Installation + +The latest release can be installed via pip directly from this repository: + +``` +python3 -m pip install -U git+https://github.com/UCBerkeleySETI/blimpy +``` + +Or, the latest version of the development code can be installed from the github [repo](https://github.com/UCBerkeleySETI/blimpy) and then run `python setup.py install` or `pip install .` (with sudo if required), or by using the following terminal command: + +``` +python3 -m pip install -U https://github.com/UCBerkeleySETI/blimpy/tarball/master +``` + +To install everything required to run the unit tests, run: + +``` +python3 -m pip install -e .[full] +``` + +You will need `numpy`, `h5py`, `astropy`, `scipy`, and `matplotlib` as dependencies. A `pip install` should pull in numpy, h5py, and astropy, but you may still need to install scipy and matplotlib separately. +To interact with compressed files, you'll need the `hdf5plugin` package too. + +Note that h5py generally needs to be installed in this way: + +``` +$ python3 -m pip install --no-binary=h5py h5py +``` + +### Command line utilities + +After installation, the following command will display the metadata (header) values and some information about the data matrix: + +`watutil -i` + +Other command line utilities available post-installation: +* `bldice`, Extract a smaller frequency region from a Filterbank file (.fil or .h5 file). +* `calcload`, Calculate the Waterfall max_load value needed to load the entire data array for a given Filterbank file. +* `dsamp`, Down-sample (time-dimension only) from one Filterbank file to another. +* `fil2h5`, Convert a .fil file into .h5 format. +* `h52fil`, Convert an .h5 file into .fil format. +* `matchfils`, Check if two .fil files are the same. +* `peek`, Display a selected portion of values from the data matrix of a Filterbank file. +* `rawhdr`, Display the header fields of a raw guppi file. +* `rawutil`, Plot data in a guppi raw file. +* `srcname`, Patch the header source_name field in a .h5 file. +* `stax`, For a collection of .h5 or .fil files sharing the same frequency range, create a vertical stack of waterfall plots as a single PNG file. +* `stix`, For a single very large Filterbank file, create a horizontal or vertical stack of waterfall plots as a single PNG file. +* `watutil`, Information/read/write/plot utility for Filterbank files. + +Use the `-h` flag to any of the above command line utilities to display their available arguments. + +### Reading blimpy filterbank files in .fil or .h5 format + +The `blimpy.Waterfall` provides a Python API for interacting with filterbank data. It supports all BL filterbank data products; see this [example Jupyter notebook](https://github.com/UCBerkeleySETI/blimpy/blob/master/examples/voyager.ipynb) for an overview. + +From the python, ipython or jupiter notebook environments. + +```python +from blimpy import Waterfall +fb = Waterfall('/path/to/filterbank.fil') +#fb = Waterfall('/path/to/filterbank.h5') #works the same way +fb.info() +data = fb.data +``` + +### Reading guppi raw files +The [Guppi Raw format](https://github.com/UCBerkeleySETI/breakthrough/blob/master/doc/RAW-File-Format.md) can be read using the `GuppiRaw` class from `guppi.py`: + +```python +from blimpy import GuppiRaw +gr = GuppiRaw('/path/to/guppirawfile.raw') + +header, data = gr.read_next_data_block() +``` + +or + +```python +from blimpy import GuppiRaw +gr = GuppiRaw('/path/to/guppirawfile.raw') + +for header, data_x, data_y in gr.get_data(): + # process data +``` + +Note: most users should start analysis with filterbank files, which are smaller in size and have been generated from the guppi raw files. + +### Using blimpy inside Docker +The blimpy images are pushed to a public repository after each successful build on Travis. +If you have Docker installed, you can run the following commands to pull our images, which have the environment and dependencies set up for you. + +`docker pull fx196/blimpy:py3_kern_stable` + +Here is a [more complete guide](./docker_guide.md) on using blimpy in Docker. + +### Further reading + +A detailed overview of the data formats used in Breakthrough Listen can be found in our [data format paper](https://ui.adsabs.harvard.edu/abs/2019arXiv190607391L/abstract). An archive of data files from the Breakthrough Listen program is provided at [seti.berkeley.edu/opendata](http://seti.berkeley.edu/opendata). + +### If you have any requests or questions, please lets us know! + + +%prep +%autosetup -n blimpy-2.1.4 + +%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-blimpy -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Mon May 15 2023 Python_Bot <Python_Bot@openeuler.org> - 2.1.4-1 +- Package Spec generated @@ -0,0 +1 @@ +f3aeb510fd6d319fa8283f09c06e76cc blimpy-2.1.4.tar.gz |