Skip to main content

A tool to calculate FRET observables for MD trajectories by accessible volume calculations.Here, spatial density of flexible coupled dyes/labels is approximated by the sterically allowedspace for labels modeled by ellipsoids attached by a flexible cylinder.

Project description


MDTrajFPS is tool to calculate FRET observables from MD-trajectories.

MDTrajFPS depends on MDTraj and utilizes the original libraries published together with the "FRET Positioning System" (FPS) in Nature Methods 9, 1218–1225 (2012) "A toolkit and benchmark study for FRET-restrained high-precision structural modeling".

The implicit model of the label is being improved to support the latest developments DOI for Citing COSB. Hence, the library for the calculation of the implicit labels are currently only provided as pre-compiled binaries for (Windows x32, x64, MacOS, and Linux x32, x64).

With MDTrajFPS, you can

  • Process every MD format supported by MDTraj
  • Calculate FRET efficienes using a fast implicit dye model
  • Save calculated positional distributions of dyes for later vizualization

The original FPS-software package is available at



conda --add channels tpeulen
conda install mdtraj_fps

Code Example

import mdtraj as md
from mdtraj_fps import fps

# First load an MD trajectory by mdtraj
traj = md.load('./examples/hGBP1_out_3.h5')

# Pass a trajectory to fps.AVTrajectory. This creates an object, which can be 
# accessed as a list. The objects within the "list" are accessible volumes  
av_traj = fps.AVTrajectory(traj, '18D', attachment_atom_selection='resSeq 7 and name CB')
# These accessible volumes can be saved as xyz-file

# The dye parameters can either be passed explicitly on creation of the object
av_traj = fps.AVTrajectory(traj, '18D', attachment_atom_selection='resSeq 7 and name CB', linker_length=25., linker_width=1.5, radius_1=6.0)

# or they can be selected from a predefined set of parameters found in the JSON file dye_definition.json located within
# the package directory 
av_traj = fps.AVTrajectory(traj, '18D', attachment_atom_selection='resSeq 7 and name CB', dye_parameter_set='D3Alexa488')

# To calculate a trajectory of distances and distance distributions first a labeling file and a "distance file" 
# needs to be specified. The distance file contains a set of labeling positions and distances and should be compatible
# to the labeling files used by the software "Olga". By default the 
av_dist = fps.AvDistanceTrajectory(traj, './examples/hGBP1_distance.json')


The windows dll requires the following redistributables (not included)

MS-visual studio 2005 vcredist_x64 vcredist_x86


  • MDTraj - DOI for Citing MDTraj
  • FPS - DOI for Citing FPS


GNU LGPL version 2.1, or at your option a later version of the license. Various sub-portions of this library may be independently distributed under different licenses. See those files for their specific terms.

Project details

Release history Release notifications

Download files

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

Filename, size & hash SHA256 hash help File type Python version Upload date
avtraj-0.0.6.tar.gz (265.6 kB) Copy SHA256 hash SHA256 Source None May 23, 2018

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page