Blob Blame History Raw
# Enabled by default
# If the package needs to download data for the test which cannot be done in
# koji, these can be disabled in koji by using `bcond_with` instead, but the
# tests must be validated in mock with network enabled like so:
# mock -r fedora-rawhide-x86_64 rebuild <srpm> --enable-network --rpmbuild-opts="--with tests"
%bcond_without tests

# Requires m2r2 and other deps so disabled for the moment
%bcond_with docs

%global pypi_name LFPykit
%global lower_name lfpykit

%global _description %{expand:
This Python module contain freestanding implementations of electrostatic
forward models incorporated in LFPy (https://github.com/LFPy/LFPy,
https://LFPy.readthedocs.io).

The aim of the LFPykit module is to provide electrostatic models in a manner
that facilitates forward-model predictions of extracellular potentials and
related measures from multicompartment neuron models, but without explicit
dependencies on neural simulation software such as NEURON
(https://neuron.yale.edu, https://github.com/neuronsimulator/nrn), Arbor
(https://arbor.readthedocs.io, https://github.com/arbor-sim/arbor), or even
LFPy. The LFPykit module can then be more easily incorporated with these
simulators, or in various projects that utilize them such as LFPy
(https://LFPy.rtfd.io, https://github.com/LFPy/LFPy). BMTK
(https://alleninstitute.github.io/bmtk/,
https://github.com/AllenInstitute/bmtk), etc.

Its main functionality is providing class methods that return two-dimensional
linear transformation matrices M between transmembrane currents I of
multicompartment neuron models and some measurement Y given by Y=MI.

The presently incorporated volume conductor models have been incorporated in
LFPy (https://LFPy.rtfd.io, https://github.com/LFPy/LFPy), as described in
various papers and books:

- Linden H, Hagen E, Leski S, Norheim ES, Pettersen KH, Einevoll GT (2014) LFPy:
a tool for biophysical simulation of extracellular potentials generated by
detailed model neurons. Front. Neuroinform. 7:41. doi: 10.3389/fninf.2013.00041

- Hagen E, Næss S, Ness TV and Einevoll GT (2018) Multimodal Modeling of Neural
Network Activity: Computing LFP, ECoG, EEG, and MEG Signals With LFPy 2.0.
Front. Neuroinform. 12:92. doi: 10.3389/fninf.2018.00092

- Ness, T. V., Chintaluri, C., Potworowski, J., Leski, S., Glabska, H., Wójcik,
D. K., et al. (2015). Modelling and analysis of electrical potentials recorded
in microelectrode arrays (MEAs). Neuroinformatics 13:403–426. doi:
10.1007/s12021-015-9265-6

- Nunez and Srinivasan, Oxford University Press, 2006

- Næss S, Chintaluri C, Ness TV, Dale AM, Einevoll GT and Wójcik DK (2017).
Corrected Four-sphere Head Model for EEG Signals. Front. Hum. Neurosci. 11:490.
doi: 10.3389/fnhum.2017.00490}

Name:           python-%{lower_name}
Version:        0.3
Release:        4%{?dist}
Summary:        Electrostatic models for multicompartment neuron models

License:        GPLv3+
URL:            https://pypi.org/pypi/%{pypi_name}
Source0:        %pypi_source

BuildArch:      noarch

%description %_description

%package -n python3-%{lower_name}
Summary:        %{summary}
BuildRequires:  python3-devel
BuildRequires:  python3-setuptools
BuildRequires:  %{py3_dist h5py}
BuildRequires:  %{py3_dist meautility}
BuildRequires:  %{py3_dist numpy}
BuildRequires:  %{py3_dist pytest}
BuildRequires:  %{py3_dist scipy}

%if %{with docs}
# Documentation
BuildRequires:  make
BuildRequires:  %{py3_dist sphinx}
BuildRequires:  %{py3_dist numpydoc}
%endif

%description -n python3-%{lower_name} %_description

%package doc
Summary:        %{summary}

%description doc
Documentation for %{name}.

%prep
%autosetup -n %{pypi_name}-%{version}
rm -rf %{pypi_name}.egg-info

find . -type f -name "*.py" -exec sed -i '/^#![  ]*\/usr\/bin\/env.*$/ d' {} 2>/dev/null ';'

%build
%py3_build

%if %{with docs}
make -C doc/source SPHINXBUILD=sphinx-build-3 html
rm -rf doc/source/_build/html/{.doctrees,.buildinfo} -vf
%endif

%install
%py3_install

%check
%if %{with tests}
%{pytest}
%endif

%files -n python3-%{lower_name}
%license LICENSE
%doc README.md
%{python3_sitelib}/%{pypi_name}-%{version}-py%{python3_version}.egg-info
%{python3_sitelib}/%{lower_name}

%files doc
%license LICENSE
%doc examples
%if %{with docs}
%doc doc/source/_build/html
%endif

%changelog
* Fri Jan 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 0.3-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild

* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.3-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild

* Thu Jul 01 2021 Ankur Sinha <ankursinha AT fedoraproject DOT org> - 0.3-2
- Use lowername for sub package

* Sun Jun 27 2021 Ankur Sinha <ankursinha AT fedoraproject DOT org> - 0.3-1
- Initial package