Skip to content

python scripts for analyzing recordings of efish electric fields.

License

Notifications You must be signed in to change notification settings

janscience/thunderfish

 
 

Repository files navigation

license tests codecov PyPI version downloads contributors commits

ThunderFish

Algorithms and programs for analysing electric field recordings of weakly electric fish.

Documentation | API Reference

Weakly electric fish generate an electric organ discharge (EOD). In wave-type fish the EOD resembles a sinewave of a specific frequency and with higher harmonics. In pulse-type fish EODs have a distinct waveform and are separated in time. The thunderfish package provides algorithms and tools for analysing both wavefish and pulsefish EODs.

thunderfish

Installation

ThunderFish is available from PyPi. Simply run:

pip install thunderfish

This should also install:

Software

The thunderfish package provides the following software:

Algorithms

The following modules provide the algorithms for analyzing EOD recordings. Look into the modules for more information.

Input/output

EOD analysis

  • bestwindow: Select the region within a recording with the most stable signal of largest amplitude that is not clipped.
  • checkpulse: Check whether a pulse-type or a wave-type weakly electric fish is present in a recording.
  • consistentfishes: Create a list of EOD frequencies with fishes present in all provided fish lists.
  • eodanalysis: Analyse EOD waveforms.
  • harmonics: Extract and analyze harmonic frequencies from power spectra.
  • pulses: Extract and cluster EOD waverforms of pulse-type electric fish.

EOD simulations

  • fakefish: Simulate EOD waveforms.
  • efield: Simulations of spatial electric fields.
  • fishshapes: Manipulate and plot fish outlines.

About

python scripts for analyzing recordings of efish electric fields.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 99.6%
  • Shell 0.4%