Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 0 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -155,8 +155,6 @@ If you use PyGPLA in your research, please cite the original GPLA method paper:
}
```

A dedicated software citation (JOSS) will be added here once the paper is published.

## License

BSD 2-Clause License. See `LICENSE`.
Expand Down
8 changes: 6 additions & 2 deletions paper/paper.md
Original file line number Diff line number Diff line change
Expand Up @@ -80,10 +80,14 @@ The `pygpla` package is distributed under the BSD-2-Clause license. PyGPLA follo

## Use of generative AI

Generative AI tools were used only to assist with drafting documentation and refactoring code for style. All AI-assisted output was reviewed, tested, and validated by the authors, who take full responsibility for the correctness of the software and the content of this paper. The scientific method, algorithmic design, and numerical implementation of GPLA were carried out by the authors.
Generative AI tools were used only to assist with drafting documentation and
refactoring code for style. All AI-assisted output was reviewed, tested, and
validated by the authors, who take full responsibility for the correctness of the
software and the content of this paper. The scientific method, algorithmic design,
and numerical implementation of GPLA were carried out by the authors.

## Acknowledgments

We acknowledge contributions from collaborators who provided feedback during the development of PyGPLA. Shervin Safavi acknowledges the support from the Max Planck Society and an add-on fellowship from the Joachim Herz Foundation.
We acknowledge contributions from collaborators who provided feedback during the development of pyGPLA. S.S. acknowledges support from the Max Planck Society and an add-on fellowship from the Joachim Herz Foundation. C.B. acknowledges support from the Federal Ministry of Research, Technology and Space (Bundesministerium für Forschung, Technologie und Raumfahrt; BMFTR) as part of the German Center for Child and Adolescent Health (DZKJ) under funding code 01GL2405B.

## References
32 changes: 29 additions & 3 deletions src/pygpla/__init__.py
Original file line number Diff line number Diff line change
@@ -1,9 +1,35 @@
"""
PyGPLA: Generalized Phase Locking Analysis tools for Python.

The package is under active development; upcoming releases will expose high-level
analysis helpers via ``pygpla.gpla`` alongside lower-level preprocessing and
statistics modules. See the project notes in ``notes/`` for the migration plan.
GPLA summarizes multichannel spike-LFP coupling by building a complex coupling
matrix and extracting its dominant low-rank structure via SVD, yielding a scalar
coupling strength (gPLV) together with an LFP vector and a spike vector.

The main entry point is :func:`pygpla.api.gpla`::

from pygpla.api import gpla

result = gpla(spikes, lfp_analytic, stats_config={"testType": "RMT-based"})
result.gplv, result.lfp_vector, result.spike_vector

Modules
-------
api
High-level :func:`~pygpla.api.gpla` entry point and its
:class:`~pygpla.api.GPLAResult` container.
core
Coupling-matrix construction, SVD factorization, and PCA whitening.
preprocessing
Trial concatenation, spike-count filtering, and related data preparation.
simulations
Phase-locked, transient-coupling, and Poisson spike-train generators.
stats
RMT-based and spike-jitter surrogate significance testing.
config
Dataclasses describing whitening, preprocessing, and statistical-test options.

The method is described in Safavi et al. (2023), *Uncovering the organization of
neural circuits with Generalized Phase Locking Analysis*, PLOS Computational Biology.
"""

from ._version import __version__
Expand Down
Loading