This is part of the colvar module |
This collective variable calculates the backbone chemical shifts for a protein.
The functional form is that of CamShift [40]. The chemical shifts of the selected nuclei/residues are saved as components. Reference experimental values can also be stored as components. The two components can then be used to calculate either a scoring function as in [53] [34], using the keyword CAMSHIFT or to calculate ensemble averages chemical shift per chemical shift as in [20] [22] (see STATS and ENSEMBLE).
CamShift calculation is relatively heavy because it often uses a large number of atoms, in order to make it faster it is currently parallelised with OpenMP.
As a general rule, when using CS2BACKBONE or other experimental restraints it is better to increase the accuracy of the constraint algorithm due to the increased strain on the bonded structure. In the case of GROMACS it is safer to use lincs-iter=2 and lincs-order=6.
In general the system for which chemical shifts are calculated must be completly included in ATOMS and a TEMPLATE pdb file for the same atoms should be provided as well in the folder DATA. The atoms are made automatically whole unless NOPBC is used, in particular if the system is made of by multiple chains it is usually better to use NOPBC and make the molecule whole WHOLEMOLECULES selecting an appropriate order.
In addition to a pdb file one needs to provide a list of chemical shifts to be calculated using one file per nucleus type (CAshifts.dat, CBshifts.dat, Cshifts.dat, Hshifts.dat, HAshifts.dat, Nshifts.dat), all the six files should always be present. A chemical shift for a nucleus is calculated if a value greater than 0 is provided. For practical purposes the value can correspond to the experimental value. Residues numbers should go from 1 to N irrespectively of the numbers used in the pdb file. The first and last residue of each chain should be preceeded by a # character. Termini groups like ACE or NME should be removed from the PDB.
CAshifts.dat: #1 0.0 2 55.5 3 58.4 . . #last 0.0 #last+1 (first) of second chain . #last of second chain
The default behaviour is to store the values for the active nuclei in components (ca_#, cb_#, co_#, ha_#, hn_#, nh_# and expca_#, expcb_#, expco_#, expha_#, exphn_#, exp_nh#) with NOEXP it is possible to only store the backcalculated values.
A pdb file is needed to the generate a simple topology of the protein. For histidines in protonation states different from D the HIE/HSE HIP/HSP name should be used. GLH and ASH can be used for the alternative protonation of GLU and ASP. Non-standard amino acids and other molecules are not yet supported, but in principle they can be named UNK. If multiple chains are present the chain identifier must be in the standard PDB format, together with the TER keyword at the end of each chain.
One more standard file is also needed in the folder DATA: camshift.db. This file includes all the CamShift parameters and can be found in regtest/basic/rt45/data/ .
All the above files must be in a single folder that must be specified with the keyword DATA.
Additional material and examples can be also found in the tutorial Belfast tutorial: NMR restraints
The names of the components in this action can be customized by the user in the actions input file. However, in addition to these customizable components the following quantities will always be output
Quantity | Description |
ha | the calculated Ha hydrogen chemical shifts |
hn | the calculated H hydrogen chemical shifts |
nh | the calculated N nitrogen chemical shifts |
ca | the calculated Ca carbon chemical shifts |
cb | the calculated Cb carbon chemical shifts |
co | the calculated C' carbon chemical shifts |
expha | the experimental Ha hydrogen chemical shifts |
exphn | the experimental H hydrogen chemical shifts |
expnh | the experimental N nitrogen chemical shifts |
expca | the experimental Ca carbon chemical shifts |
expcb | the experimental Cb carbon chemical shifts |
expco | the experimental C' carbon chemical shifts |
ATOMS | The atoms to be included in the calculation, e.g. the whole protein.. For more information on how to specify lists of atoms see Groups and Virtual Atoms |
DATA | ( default=data/ ) The folder with the experimental chemical shifts. |
TEMPLATE | ( default=template.pdb ) A PDB file of the protein system to initialise ALMOST. |
NEIGH_FREQ | ( default=20 ) Period in step for neighbour list update. |
NRES | Number of residues, corresponding to the number of chemical shifts. |
NUMERICAL_DERIVATIVES | ( default=off ) calculate the derivatives for these quantities numerically |
NOPBC | ( default=off ) ignore the periodic boundary conditions when calculating distances |
CAMSHIFT | ( default=off ) Set to TRUE if you to calculate a single CamShift score. |
NOEXP | ( default=off ) Set to TRUE if you don't want to have fixed components with the experimetnal values. |
In this first example the chemical shifts are used to calculate a scoring function to be used in NMR driven Metadynamics [34] :
whole: GROUP ATOMS=2612-2514:-1,961-1:-1,2466-962:-1,2513-2467:-1 WHOLEMOLECULES ENTITY0=whole cs: CS2BACKBONE ATOMS=1-2612 NRES=176 DATA=../data/ TEMPLATE=template.pdb CAMSHIFT NOPBC metad: METAD ARG=cs HEIGHT=0.5 SIGMA=0.1 PACE=200 BIASFACTOR=10 PRINT ARG=cs,metad.bias FILE=COLVAR STRIDE=100
In this second example the chemical shifts are used as replica-averaged restrained as in [20] [22].
cs: CS2BACKBONE ATOMS=1-174 DATA=data/ NRES=13 encs: ENSEMBLE ARG=(cs\.hn_.*),(cs\.nh_.*) stcs: STATS ARG=encs.* SQDEVSUM PARARG=(cs\.exphn_.*),(cs\.expnh_.*) RESTRAINT ARG=stcs.sqdevsum AT=0 KAPPA=0 SLOPE=24 PRINT ARG=(cs\.hn_.*),(cs\.nh_.*) FILE=RESTRAINT STRIDE=100
(See also WHOLEMOLECULES, STATS, METAD, RESTRAINT and PRINT)