Skip to main content

Analyze confocal solution smFRET data

Project description

Don't FRET

Don't FRET! is a python package featuring a web application for performing burst search on confocal smFRET data.

pip install dont-fret

screenshot

Process photon files

dont-fret process filename.ptu

Will process the file. It will perform burst search as specified in the configuration file. Output (default) are burst photons and bursts as .pq files.

Run the web application

To launch with the default configuration file:

dont-fret serve

To create a local default configuration file:

dont-fret config

Then you can edit the created config file. To launch the web application with a specific config file:

dont-fret serve --config config.yaml

Configuration

Configuration for channels, photon streams and (default) burst search settings is done from the config .yaml file.

First, define your channels:

channels: # refactor channels in code to channel_identifiers
  laser_D:
    target: nanotimes
    value: [ 0, 1000 ]
  laser_A:
    target: nanotimes
    value: [ 1000, 2000 ] # intervals are inclusive, exclusive
  det_D:
    target: detectors
    value: 1
  det_A:
    target: detectors
    value: 0

Currently supported targets are nanotimes, detectors and timestamps. These are as read from the file and not converted to seconds. Modulo is supported (untested) for us-ALEX:

channels: # refactor channels in code to channel_identifiers
  laser_D:
    target: timestamps
    value: [ 0, 100 ]
    modulo: 200

This will assign photons with a timestamp modulo 200 in the range from 0 up to 100 to "laser_D".

Next, define your photon streams. Photons streams are combinations of channels ("AND"):

streams:
  DD: [laser_D, det_D]
  DA: [laser_D, det_A]
  AA: [laser_A, det_A]
  AD: [laser_A, det_D]

!IMPORTANT The notation used here is excitation then emission, thus the FRET stream is 'DA' while in literature the FRET photon stream is often written as A|D (Acceptor emission during donor excitation).

!IMPORTANT
At the moment apparent FRET and stoichiometry are calculated from the defined photon streams and it is required the following streams are defined: 'AA', 'DD', 'DA' (=FRET). This is expected to be changed in future updates.

Development

Download a test file:

wget https://kuleuven-my.sharepoint.com/:u:/g/personal/jochem_smit_kuleuven_be/Efy7ur779ARNiBlP05Ki7NMBabKX3auswj30xmpRLaIfPg?e=E6wWoZ&download=1

If autoreload (refresh web application upon code changes) doesnt work, run from: solara run dont_fret\tmp.py -- --config default_testing.yaml

Create a new release

  • Create a new release on github. Create a new tag with the version (format: v0.1.0)
  • github actions creates release on pypi
  • done!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dont_fret-0.2.1.tar.gz (20.6 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dont_fret-0.2.1-py3-none-any.whl (64.5 kB view details)

Uploaded Python 3

File details

Details for the file dont_fret-0.2.1.tar.gz.

File metadata

  • Download URL: dont_fret-0.2.1.tar.gz
  • Upload date:
  • Size: 20.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for dont_fret-0.2.1.tar.gz
Algorithm Hash digest
SHA256 c1e8d7017bfe7aef2e9fd75e2ddc030ac9b45c4e580255c6d4a16de65e017983
MD5 27142f0f3624e58423d0039efef07f7a
BLAKE2b-256 f6a29ae24e3f09f9e68ff8242622bcbbaeb165c23f17d6e05a4c7077e29e37cb

See more details on using hashes here.

File details

Details for the file dont_fret-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: dont_fret-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 64.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for dont_fret-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 f2b46dc45e27c094d8e5ea4781dd245ad34f325addf84526b360e8f26d59c958
MD5 a4c88176e773a18c561759fcf79ac69d
BLAKE2b-256 a0acd982cfcf10f9f3d1c0b8d7b3c16da3ecf2866896f464acd6a68405344037

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page