Logo

Multi-state modeling with SAXS profiles

Profile

Download

MultiFoXS is part of the IMP software library.

IMP downloads for Linux, Mac and Windows are available here.

Once you have an installed IMP copy, you can run MultiFoXS in 3 steps:

  1. Conformational sampling. Prepare your input PDB or mmCIF file and flexible residues file as explained in Help :


    rrt_sample protein_PDB flexible_residues_file -i 1000000 -n 10000

    The program will run 1,000,000 iterations (controlled by -i option) or until it produces 10,000 conformations (controlled by -n option). The conformations are written as MODELs into nodesXX.pdb PDB format files as the program proceeds. Each output PDB contains up to 100 conformations (controlled by -m option).

    If the number of flexible residues (eg. degrees of freedom) exceeds 15, run the program with -a 10 option. This helps the sampling to advance faster.

    If the program complains that your input PDB contains steric clashes ("Initial configuration in the forbidden space!!!"), you can scale atomic radii more with -s 0.3 option. Usually if your initial configuration is a crystal structure from PDB or a model generated by MODELLER, the default scaling of 0.5 should give a valid configuration. It is not recommended to go below 0.3, as it can lead to serious clashes.

  2. Computation of SAXS profiles. We need to pre-compute the SAXS profiles for all the generated conformations:

    foxs -m 2 -p nodesXX.pdb

    This generates pre-computed profiles (-p) in a 7-column format file. The final profiles are calculated in step 3, with optimization of a single pair of excluded volume and hydration layer density parameters for each multi-state model.

    You can easily parallelize this calculation by running several foxs jobs in parallel.

  3. Generation of multi-state models. Prepare your experimental SAXS profile and a file with the names of pre-computed profiles from the previous step:

    ls nodes*.pdb.dat > filenames
    multi_foxs saxs.dat filenames

    The output is ensembles of K good-scoring multi-state model (K <= 1000, can be increased with '-k' option, at least 1,000 is the recommended value, try 10,000 in case of many input profiles) for each number of states (s= 1...10).

    By default the minimal weight for a conformation to be included in the multi-state model is 5%. This can be controlled with -w option.

    MultiFoXS clusters the profiles before the enumeration of multi-state models. You can control the clustering threshold with -t option.

Output Files

The generated ensembles of multi-state models are written into ensembles_size_X.txt files, that are formatted as follows:

==> ensembles_size_1.txt <==
1 | 13.79 | x1 13.79 (1.04, 0.50)
     0 | 1.000 (1.000, 1.000) | nodes30_m10.pdb.dat (0.001)
2 | 15.18 | x1 15.18 (1.05, -0.00)
     1 | 1.000 (1.000, 1.000) | nodes1_m1.pdb.dat (0.001)
...
==> ensembles_size_2.txt <==
1 | 2.10 | x1 2.10 (1.04, 0.62)
     1 | 0.444 (0.522, 0.049) | nodes1_m1.pdb.dat (0.253)
    13 | 0.556 (0.364, 0.131) | nodes74_m72.pdb.dat (0.002)
2 | 2.34 | x1 2.34 (1.04, 0.35)
     1 | 0.488 (0.522, 0.049) | nodes1_m1.pdb.dat (0.253)
   183 | 0.512 (0.512, 1.000) | nodes68_m39.pdb.dat (0.001)
...
==> ensembles_size_3.txt <==
1 | 1.26 | x1 1.26 (1.04, 0.96)
     1 | 0.429 (0.482, 0.044) | nodes1_m1.pdb.dat (1.000)
   104 | 0.255 (0.264, 0.037) | nodes5_m82.pdb.dat (0.039)
   422 | 0.316 (0.289, 0.016) | nodes79_m24.pdb.dat (0.001)
2 | 1.29 | x1 1.29 (1.04, 0.99)
     1 | 0.389 (0.482, 0.044) | nodes1_m1.pdb.dat (1.000)
   104 | 0.248 (0.264, 0.037) | nodes5_m82.pdb.dat (0.039)
   141 | 0.363 (0.343, 0.020) | nodes61_m60.pdb.dat (0.001)
...

The first line gives a number for the multi-state model (sorted by score), a χ value for the fit to SAXS profile and a pair of c1 and c2 values (in brackets) that optimize fit to data. In the example above, the χ values of the best scoring 1-, 2-, and 3-state models are 13.79, 2.10, and 1.26 respectively. After that the file contains information about the states (one line per state). For example, the best scoring 2-state model consists of conformation numbers 1 and 13, with the weights of 0.444 and 0.556, respectively. The first conformation is MODEL 1 in the nodes1.pdb file and the second conformation is MODEL 72 in the nodes74.pdb file. The numbers in brackets after the weight give an average an standard deviation of the weight calculated for this conformation across all good scoring multi-state models. The number in brackets after the filename is the fraction of good scoring multi-state models that contain this conformation.

The program also outputs the fits to the SAXS profile for the top-10 multi-state models into the multi_state_model_X_Y_1.dat files with the fits of the calculated weighted profile to the SAXS data. X is the number of states and Y is the number/rank of the multi-state model. The file contains 4 columns: q, experimental intensity, model intensity, and error bar.

For more information, see the source code of this web service itself; it is available on GitHub.


If you use MultiFoXS (version main.41fa2d6), please cite:

D. Schneidman-Duhovny, M. Hammel, JA. Tainer, and A. Sali. FoXS, FoXSDock and MultiFoXS: Single-state and multi-state structural modeling of proteins and their complexes based on SAXS profiles. NAR 2016 [ FREE Full Text ]
Contact: