Description of the files

Here a brief descriprion of the main FRETBursts files.

burstlib.py

This module contains all the main FRETBursts analysis functions.

burstslib.py defines the fundamental object Data() that contains both the experimental data (attributes) and the high-level analysis routines (methods).

Furthermore it loads all the remaining FRETBursts modules (except for loaders.py).

For usage example see the IPython Notebooks in sub-folder “notebooks”.

loader.py

The loader module contains functions to load each supported data format. The loader functions load data from a specific format and return a new fretbursts.burstlib.Data() object containing the data.

This module contains the high-level function to load a data-file and to return a Data() object. The low-level functions that perform the binary loading and preprocessing can be found in the dataload folder.

select_bursts.py

See fretbursts.select_bursts.

burst_plot.py

This module defines all the plotting functions for the fretbursts.burstlib.Data object.

The main plot function is dplot() that takes, as parameters, a Data() object and a 1-ch-plot-function and creates a subplot for each channel.

The 1-ch plot functions are usually called through dplot but can also be called directly to make a single channel plot.

The 1-ch plot functions names all start with the plot type (timetrace, ratetrace, hist or scatter).

Example 1 - Plot the timetrace for all ch:

dplot(d, timetrace, scroll=True)

Example 2 - Plot a FRET histogramm for each ch with a fit overlay:

dplot(d, hist_fret, show_model=True)

For more examples refer to FRETBurst notebooks.

background.py

Routines to compute the background from an array of timestamps. This module is normally imported as bg when fretbursts is imported.

The important functions are exp_fit() and exp_cdf_fit() that provide two (fast) algorithms to estimate the background without binning. These functions are not usually called directly but passed to Data.calc_bg() to compute the background of a measurement.

See also exp_hist_fit() for background estimation using an histogram fit.

phtools (folder)

This folder contains the core functions to manipulate timestamps, including burst search and photon rates computations. Additionally, data structures for storing and manipulating bursts data are provided.

Burst search and photon counting functions (to count number of donor and acceptor photons in each burts) are provided both as a pure python implementation and as an optimized Cython (compiled) version. The cython version is usually 10 or 20 times faster. burstlib.py will load the Cython functions, falling back to the pure python version if the compiled version is not found.

dataload (folder)

This folder contains one file per each supported data file.

Each file contains the binary load and preprocessing functions needed for the specific format. Functions defined here are used by loader functions in loaders.py to properly initialize a Data() variable.

fit (folder)

This folder contains generic fit functions for Gaussian and exponential fit of a sample.

See Fit framework.