Home > rax

rax

Rax is a project mainly written in Python, it's free.

(Results@X) Manage analyses for F@H/F@W data

Description

This python modules provides wrappers for dealing with Folding@Home/Folding@Work (FaH/FaW) style analysis results. It provides classes and methods abstracting the reading and manipulation of the raw data to make the higher level analysis easier.

Data must be organized using a specific directory structure and file: Each FaH/FaW generation should have a corresponding comma-separated-file storing the run, clone, generation, frame, and analysis value:

path/to/root/RUN0000/CLONE0001/GEN0002.dat

For example:

$ head -4 analysis/rmsd/C-alpha/RUN1234/CLONE4567/GEN4242.dat
1234,4567,4242,0,0.935594
1234,4567,4242,1,0.919145
1234,4567,4242,2,0.918547
1234,4567,4242,3,0.934575

Dependencies

  1. ezlog: https://github.com/badi/ezlog
  2. ezpool: https://github.com/badi/ezpool
  3. numpy: http://numpy.scipy.org/
  4. python 2.7: http://www.python.org/

Example usage

Given a directory such as 'analysis/rmsd/C-alpha/RUN/CLONE/GEN*.dat, one could write something like the following:

import rax

root = 'analysis/rmsd/C-alpha' ncores = 42 rax.setup_pool(ncores)

read in the data using 42 cores

project = rax.load_project(root)

a function to process each trajectory

def my_analysis(traj): return "magic result"

get the results

results = rax.process_trajectories(project, my_analysis)

finish up

pool.finish()

Previous:Vim