How to

How to

How does CABS-flex method works?

CABS-flex method simulates protein flexibility. CABS-flex uses CABS coarse-grained protein model as a simulation engine - CABS model design and applications has been recently reviewed by Kmiecik et al. Coarse-Grained Protein Models and Their Applications.
The picture below shows comparison between all-atom representation (left) and CABS coarse-grained model representation (right) for an example 4-residue protein fragment. In CABS, single amino acid is represented by 4 atoms (or pseudo-atoms): C-alpha (CA), C-beta (CB), center of the mass of Side-Chain group (SC) and center of the peptide bond (cp).

The input structure is used as a starting point for the CABS simulation. The resulting trajectory is automatically analyzed and processed to provide the useful description of protein dynamics, see the CABS-flex pipeline below.

CABS-flex method provides a flexible simulation environment with many additional advanced features that are available in CABS-flex standalone version at:

Where do I need to submit a job?

The only CABS-flex input that is required is a protein structure in the PDB format. Using CABS-flex server one can provide an input structure in “Submit” section by entering the ID of the protein from the Protein Data Bank (PDB) in the “PDB code” text box or by uploading a file in the pdb format from local hard drive in the “PDB file” box.

How to submit a job?

In order to submit the job you need to provide the input structure in the form of either:

  • PDB structure code,
  • protein structure file (also in PDB format)

You can optionally provide protein chain(s) identifiers and project name, as well as an email address. Mark the option“Do not show my job on the queue page” if you do not want the job to be visible on the queue page (QUEUE). After clicking the Submit button, you will be redirected to website with information about your project. If you didn't provide a name for it, a random name will be assigned. You should save this link if you selected the option “Do not show my job on the queue page” because the job won't be accessible from the queue page.

What are protein restraints?

Restraints are artificial ‘forces’ that keep pairs of atoms at certain distances. Before the CABS-flex simulation begins, the server prepares a set of distance restraints based on initial conformation of the input structure. User can also create additional restraints or modify the initial ones. To create a restraint one needs to specify two atoms, minimal and maximal distance between them and the weight of that restraint. During simulation, any conformational changes that violate distance restraints are penalized.

How does default distance restraints work?

In the default mode, the CABS-flex uses a set of distance restraints and simulation settings defined in work of Jamroz et al. (Consistent View of Protein Fluctuations from All-Atom Molecular Dynamics and Coarse-Grained Dynamics with Knowledge-Based Force-Field).
The default settings and restraints were optimized to provide the best possible convergence between CABS-flex simulations and consensus picture of protein fluctuations in aqueous solution derived by all-atom Molecular Dynamics (MD) simulations (10 nanosecond length, with various force fields) of folded globular proteins. CABS-flex predictions of protein fluctuations were also shown to be well correlated to fluctuations seen in the NMR ensemble, as presented in work by Jamroz et al. (CABS-flex predictions of protein flexibility compared with NMR ensembles).
By default, protein restraints are set to:
MODE: ss2
GAP: 3

Protein restraints are described in What are protein structure input options?

How does protein structure input option work?

Those settings allow user to control simulation by changing restraint strength or the way initial restraints are created. All settings can be changed in “Protein structure input options” panel.

“Protein rigidity” controls strength of protein restraints. Default value of this parameter is set to 1 and it would be maintained if a user does not provide any other value. Value set to 0 makes protein backbone as flexible as possible. Values greater than 1 would make it more stiff.
“Protein restraints” option allows to control the way initial restraints are created. Primary purpose of these restraints is to keep the protein in a certain proximity to the input structure. The recipe for distance restraints consists of 4 parameters: mode, gap, minimal and maximal distances. By default they are set to 'ss2', 3, 3.8, 8.0, respectively.
MODE can be either:

  • all - generate restraints for all protein residues,
  • ss1 - generate restraints only when at least one restrained residue is assigned regular secondary structure (helix or sheet),
  • ss2 - generate restraints only when both restrained residues are assigned regular secondary structure (helix, sheet)

GAP specifies gap along the main chain (difference of indices) for two residues to be restrained, while MIN and MAX are min and max values in Angstroms for two residues to be restrained.

How to add/modify protein restraints using online editor?

Option ‘Manually edit protein restraints’, when selected “Yes”, sends user to a new page featuring the online restraints editor, see the picture below.

Be sure to have set all the other options beforehand as they will affect the restraints and can't be changed at this point.
In the editor each restraint can be changed and new restraints can be added. To edit a residue click on the chain button (1) and then select a residue from the list (2). A table with all the residues restrained with the former(3) and a form to add a new one will appear (4).

  • To add a new restraint, type in the index of the residue you wish to bind with the one previously selected. The distance between them will be displayed based on the input structure. You can change that value if you wish to force a different distance. Type in the strength of the restraint and click the add button. The new restraint will now be shown in the list where you can edit it further.
  • To delete a restraint simply click on the delete button and it will disappear from the list.
  • To modify a restraints strength or change the enforced distance between new residues enter a new value in the table and click the update button.

Each of your changes will be reflected in the table on the right. To undo changes simply click on the restore button and the old values (6) or a deleted restraints (5) will reappear in the table.
Once you are done with editing click on the 'Save changes and submit' button at the bottom of the page and the job will start.

How to add protein restraints using ‘Additional distance restraints’ panel?

New restraints can be added in the “Additional distance restraints” panel.

There are two types of restraints one can add:between two alpha carbon atoms, or between two side chain pseudo-atoms. For each type, there is text box where additional restraints can be specified by a set of four arguments:
IDs of two atoms, average distance and restraints weight, i. e. entering::
12:A 16:A 5.0 1.0
in the C-alpha section would create an additional restraint that would keep atoms ‘CA’ of residues 12 and 16 in chain A at 5 Angstroms distance with the restraint strength = 1.0 (strong).

“Global weight” is a factor that will change weight of all restraints of choice, including even default restraints generated by server.

How to use advanced simulation options?

There are four advanced simulation options.

  • Number of cycles and Cycles between trajectory frames - ‘Number of cycles’(Ncycle) field sets the total number of models saved in the trajectory to be equal to 20 x Ncycle - i.e. setting Ncycle = 50 results in 20 x 50 = 1’000 models in the trajectory. It is worth noting that not all of the models generated during the CABS-flex simulation are written to the trajectory. The next field - ‘Cycles between trajectory frames’ (Nskipped) - sets the number of models skipped upon saving models, in other words for Nskipped = 100 every hundredth model will be saved. This field also indirectly sets the total number of models generated - i.e. for Ncycle = 50 and Nskipped = 100, the total number of generated models equals to 20 x 50 x 100 = 100’000, 1’000 of which will be written to the trajectory. For more details refer to the wiki pages of the standalone package of the CABS-flex, available at
  • Temperature of the simulation - the dimensionless reduced temperature in the CABS model cannot be straightforwardly linked to the real temperature. Its role, however, is similar - it serves as a parameter controlling the total energy of the modeled system. The higher the temperature, the more mobile are the atoms, which results in larger fluctuations. In the CABS model, T = 1.0 is usually close to the temperature of the crystal (native state), T = 2.0 typically allows for complete unfolding of unrestrained small protein chains.
  • Seed for random number generator.
How to interpret a status of processing?

The job status information will start from the “queue” status, followed by the “running status”. If all possible cores are being used, the job status will show "pending" meaning the job is waiting for assignment. The jobs ends with the done status. If an error occurs, the status will display "error".

How to interpret output data?

The job information site contains initially one tab - Project information.

Project information tab provides basic information about the project. It also allows user to download the structure in PDB file format. Second part provides more detailed information e.g. about rigidity, restraints, simulation parameters etc. If user provided optional restraints - the restraint file will be available to be downloaded.

Once the job is completed, the job information site will be increased by three additional tabs - Models, Contact maps and Fluctuation plot.

The left panel of the "Models" contains visualization of the model using 3DMol.js (by default CABS-flex displays multimodel). The structure can be easily rotated and zoomed using mouse. If the model is not displayed check if Web Graphic Library (webGL) is enabled in your browser (see the WebGL test page for more details). Below the structure there are buttons to modify the structure (hide/display) or rotate the model.
The right panel contains a list of resulting models, which can be both viewed in the left panel or downloaded. Currently viewed model is marked with an eye icon. All structures are available to be downloaded by clicking Download all models button

'Contact map' section provides an interactive chart that allows to investigate the interaction interface between all the atoms. The color of square depends on the frequency of occurrence in this particular interaction in the models set that was used to generate data for the map. Hovering on any of the square displays a rectangle in the upper-left corner with more detailed information about the selected contact such as first and second residue and the value (between [0; 1]). Double clicking or mouse scroll will zoom the contact map. Below the contact map there is a Reset button to bring restore the map to initial position.
Right panels provide buttons to display and download maps (in a graphic svg format and a text files, both in zip files under Download buttons), and Options section that allow changing the color range of contacts.

Last tab - Fluctuation plot - provides an interactive 2D plot presenting residue-wise fluctuations recorded throughout the simulation. Both graphics (svg) and numerical data (csv) are available for download. For multichain proteins a separate plot is generated for each chain. They can be displayed by selecting it in the ‘Chains’ panel.


A simple example of how restraints mode and simulation temperature may affect protein flexibility

Below, we present CABS-flex modeling results with different simulation settings for 2GB1 protein - a small alpha/beta protein - to illustrate how mode of restraints and simulation temperature may affect protein flexibility.
The plot below show 2gb1 fluctuation profiles (RMSF, Root Mean Square Fluctuation in Angstroms) for the following settings:

  • Restraint mode: ss2, temperature: 1.4 (default settings)
  • Restraint mode: ss1, temperature: 1.4
  • Restraint mode: all, temperature: 1.4
  • Restraint mode: ss2, temperature: 1
  • Restraint mode: ss2, temperature: 2
  • Restraint mode: ss2, temperature: 3

As presented above, higher simulation temperatures and ss2 (secondary structure only) restraint mode allow to achieve larger fluctuations in loop regions or larger displacement of secondary structure elements (helix being in the region of residues 25-35 in case of 2GB1).
The picture below presents screenshot of CABS-flex prediction of 10 representative models for 2GB1 with default settings (restraint mode: ss2, temperature: 1.4).