Sampling more rotamers at "hot" spots
Why do we need "hot" spots?
In some cases, we are insterested in what's going on in some particular sites rather than the whole structure. MCCE provides a mechanism to define these spots and sample more rotamers subsequently. These sites are called "hot" spots.
How do we do it?
The machanism is to define a hot spot file named "list_rot.gold" in the working directory. Hot spots are at residue level. One can put any one "ATOM" line of the hot residue in the original pdb file to list_rot.gold. The step 1 of mcce will use list_rot.gold to generate a rotamer making instruction file template head1.lst, then step 2 is able to use this head1.lst to make rotamers.
A working Example
Prepare the working directory
mkdir 4lzt
cd 4lzt
getpdb 4lzt
This should give you a pdb file 4lzt.pdb. We will use continuum water, so remove explicit water molecules:
grep -v HOH 4lzt.pdb > 4lzt_noHOH.pdb
Prepare list_rot.gold file
We know the the enzymatic fuction of lysozymen comes from active sites GLU35 and ASP52, so we will treat these two residues as hot spots. Pick an atom record from each of these two residues and put them in file list_rot.gold.
$ cat list_rot.gold
ATOM 273 N GLU A 35 6.492 16.383 22.526 1.00 7.03 N
ATOM 407 N ASP A 52 5.550 6.804 30.040 1.00 5.90 N
Run step 1
step1.py 4lzt_noHOH.pdb
This will generate a file head1.lst. Check this file to see if residue GLU35 and residue ASP52 have more rotations. Some other residues with contact to these two "hot" residues will alse be marked as more rotations. These extensive rotations are marked as "R t 12" which means Rotation is true and each bond will have 12 rotation steps.
$ grep "R t 12" head1.lst
GLU A0035_ R t 12 S f 0.0 H f 00 M 000
ASN A0044_ R t 12 S f 0.0 H f 00 M 000
ASN A0046_ R t 12 S f 0.0 H f 00 M 000
ASP A0052_ R t 12 S f 0.0 H f 00 M 000
GLN A0057_ R t 12 S f 0.0 H f 00 M 000
ASN A0059_ R t 12 S f 0.0 H f 00 M 000
TRP A0108_ R t 12 S f 0.0 H f 00 M 000
ALA A0110_ R t 12 S f 0.0 H f 00 M 000
You can manually modify the flags and rotation steps at this point (after step 1 and before step 2).
Aother conformer making rule in head1.lst is S (swing). When set to "t", you can give it an angle in degrees. 15 degrees are recommended. H and M flags can be ignored.
Run step 2 using "head1.lst"
By default, MCCE ignores head1.lst. To use head1.lst as rotamer making guide, we will use command:
step2.py -u ROT_SPECIF=t,PACK=t
The two user custom options are defined in "-u" switch, separated by ",". ROT_SPECIFIC=t indicates we will use head1.lst as the rotamer making instruction, and PACK=t indicates we will make rotamers regardless of rotamer making level.
If we inspect rotamer making statistics file rot_stat after step 2, we will see something like this:
$ cat rot_stat
Rotamer making statitics:
Residue Start Clean Swap Rotate Self Hbond Repack Ioni. TorH OH Elect
NTRA0001 1 1 1 1 1 1 1 2 2 2 2
LYSA0001 1 1 1 1 1 1 1 2 2 2 2
VALA0002 1 1 1 1 1 1 1 1 1 1 1
PHEA0003 1 1 1 1 1 1 1 1 1 1 1
GLYA0004 0 0 0 0 0 0 0 0 0 0 0
ARGA0005 1 1 1 1 1 1 1 4 5 5 5
CYDA0006 1 1 1 1 1 1 1 1 1 1 1
GLUA0007 1 1 1 1 1 1 1 3 5 5 5
LEUA0008 1 1 1 1 1 1 1 1 1 1 1
ALAA0009 1 1 1 1 1 1 1 1 1 1 1
ALAA0010 1 1 1 1 1 1 1 1 1 1 1
ALAA0011 1 1 1 1 1 1 1 1 1 1 1
META0012 1 1 1 1 1 1 1 1 1 1 1
LYSA0013 1 1 1 1 1 2 1 2 2 2 2
ARGA0014 1 1 1 1 1 1 1 4 4 4 4
HISA0015 1 1 2 2 1 2 2 6 6 6 6
GLYA0016 0 0 0 0 0 0 0 0 0 0 0
LEUA0017 1 1 1 1 1 1 1 1 1 1 1
ASPA0018 1 1 1 1 1 1 1 3 5 5 5
ASNA0019 1 1 2 2 2 2 1 1 1 1 1
TYRA0020 1 1 1 1 1 2 1 2 3 3 3
ARGA0021 1 1 1 1 1 1 1 4 4 4 4
GLYA0022 0 0 0 0 0 0 0 0 0 0 0
TYRA0023 1 1 1 1 1 1 1 2 2 2 2
SERA0024 1 1 1 1 1 2 2 2 3 3 3
LEUA0025 1 1 1 1 1 1 1 1 1 1 1
GLYA0026 0 0 0 0 0 0 0 0 0 0 0
ASNA0027 1 1 2 2 2 4 2 2 2 2 2
TRPA0028 1 1 1 1 1 1 1 1 1 1 1
VALA0029 1 1 1 1 1 1 1 1 1 1 1
CYDA0030 1 1 1 1 1 1 1 1 1 1 1
ALAA0031 1 1 1 1 1 1 1 1 1 1 1
ALAA0032 1 1 1 1 1 1 1 1 1 1 1
LYSA0033 1 1 1 1 1 1 1 2 2 2 2
PHEA0034 1 1 1 1 1 1 1 1 1 1 1
GLUA0035 1 1 1 1729 242 245 15 45 73 73 73
SERA0036 1 1 1 1 1 1 1 1 2 2 2
ASNA0037 1 1 2 2 2 4 2 2 2 2 2
PHEA0038 1 1 1 1 1 1 1 1 1 1 1
ASNA0039 1 1 2 2 2 2 2 2 2 2 2
THRA0040 1 1 1 1 1 1 1 1 2 2 2
GLNA0041 1 1 2 2 2 2 2 2 2 2 2
ALAA0042 1 1 1 1 1 1 1 1 1 1 1
THRA0043 1 1 1 1 1 2 1 1 2 2 2
ASNA0044 1 1 2 146 71 84 50 20 16 16 16
ARGA0045 1 1 1 1 1 2 1 4 4 4 4
ASNA0046 1 1 2 145 55 64 56 20 17 17 17
THRA0047 1 1 1 1 1 1 1 1 3 3 2
ASPA0048 1 1 1 1 1 3 3 9 15 15 15
GLYA0049 0 0 0 0 0 0 0 0 0 0 0
SERA0050 1 1 1 1 1 4 4 4 12 12 12
THRA0051 1 1 1 1 1 1 1 1 2 2 2
ASPA0052 1 1 1 73 20 26 17 51 84 84 84
TYRA0053 1 1 1 1 1 2 1 2 3 3 3
GLYA0054 0 0 0 0 0 0 0 0 0 0 0
ILEA0055 1 1 1 1 1 1 1 1 1 1 1
LEUA0056 1 1 1 1 1 1 1 1 1 1 1
GLNA0057 1 1 2 1730 190 193 24 20 20 20 20
ILEA0058 1 1 1 1 1 1 1 1 1 1 1
ASNA0059 1 1 2 145 90 115 54 20 20 20 20
SERA0060 1 1 1 1 1 2 2 2 5 5 5
ARGA0061 1 1 1 1 1 1 1 4 5 5 5
TRPA0062 1 1 1 1 1 2 1 1 1 1 1
TRPA0063 1 1 1 1 1 1 1 1 1 1 1
CYDA0064 1 1 1 1 1 1 1 1 1 1 1
ASNA0065 1 1 2 2 2 2 2 2 2 2 2
ASPA0066 1 1 1 1 1 3 2 6 10 10 10
GLYA0067 0 0 0 0 0 0 0 0 0 0 0
ARGA0068 1 1 1 1 1 1 1 4 4 4 4
THRA0069 1 1 1 1 1 2 1 1 3 3 3
PROA0070 1 1 1 1 1 1 1 1 1 1 1
GLYA0071 0 0 0 0 0 0 0 0 0 0 0
SERA0072 1 1 1 1 1 1 1 1 2 2 1
ARGA0073 1 1 1 1 1 1 1 4 4 4 4
ASNA0074 1 1 2 2 2 2 2 2 2 2 2
LEUA0075 1 1 1 1 1 1 1 1 1 1 1
CYDA0076 1 1 1 1 1 1 1 1 1 1 1
ASNA0077 1 1 2 2 2 2 1 1 1 1 1
ILEA0078 1 1 1 1 1 1 1 1 1 1 1
PROA0079 1 1 1 1 1 1 1 1 1 1 1
CYDA0080 1 1 1 1 1 1 1 1 1 1 1
SERA0081 1 1 1 1 1 1 1 1 2 2 1
ALAA0082 1 1 1 1 1 1 1 1 1 1 1
LEUA0083 1 1 1 1 1 1 1 1 1 1 1
LEUA0084 1 1 1 1 1 1 1 1 1 1 1
SERA0085 1 1 1 1 1 1 1 1 3 3 3
SERA0086 1 1 1 1 1 1 1 1 2 2 2
ASPA0087 1 1 1 1 1 1 1 3 5 5 5
ILEA0088 1 1 1 1 1 1 1 1 1 1 1
THRA0089 1 1 1 1 1 2 1 1 3 3 3
ALAA0090 1 1 1 1 1 1 1 1 1 1 1
SERA0091 1 1 1 1 1 1 1 1 2 2 2
VALA0092 1 1 1 1 1 1 1 1 1 1 1
ASNA0093 1 1 2 2 2 2 2 2 2 2 2
CYDA0094 1 1 1 1 1 1 1 1 1 1 1
ALAA0095 1 1 1 1 1 1 1 1 1 1 1
LYSA0096 1 1 1 1 1 1 1 2 2 2 2
LYSA0097 1 1 1 1 1 1 1 2 2 2 2
ILEA0098 1 1 1 1 1 1 1 1 1 1 1
VALA0099 1 1 1 1 1 1 1 1 1 1 1
SERA0100 1 1 1 1 1 1 1 1 3 3 3
ASPA0101 1 1 1 1 1 1 1 3 5 5 5
GLYA0102 0 0 0 0 0 0 0 0 0 0 0
ASNA0103 1 1 2 2 2 2 2 2 2 2 2
GLYA0104 0 0 0 0 0 0 0 0 0 0 0
META0105 1 1 1 1 1 1 1 1 1 1 1
ASNA0106 1 1 2 2 2 2 2 2 2 2 2
ALAA0107 1 1 1 1 1 1 1 1 1 1 1
TRPA0108 1 1 1 145 10 18 2 2 2 2 2
VALA0109 1 1 1 1 1 1 1 1 1 1 1
ALAA0110 1 1 1 2 1 1 1 1 1 1 1
TRPA0111 1 1 1 1 1 2 1 1 1 1 1
ARGA0112 1 1 1 1 1 1 1 4 5 5 5
ASNA0113 1 1 2 2 2 2 2 2 2 2 2
ARGA0114 1 1 1 1 1 1 1 4 4 4 4
CYDA0115 1 1 1 1 1 1 1 1 1 1 1
LYSA0116 1 1 1 1 1 1 1 2 2 2 2
GLYA0117 0 0 0 0 0 0 0 0 0 0 0
THRA0118 1 1 1 1 1 1 1 1 2 2 2
ASPA0119 1 1 1 1 1 1 1 3 5 5 5
VALA0120 1 1 1 1 1 1 1 1 1 1 1
GLNA0121 1 1 2 2 2 2 2 2 2 2 2
ALAA0122 1 1 1 1 1 1 1 1 1 1 1
TRPA0123 1 1 1 1 1 1 1 1 1 1 1
ILEA0124 1 1 1 1 1 1 1 1 1 1 1
ARGA0125 1 1 1 1 1 1 1 4 5 5 5
GLYA0126 0 0 0 0 0 0 0 0 0 0 0
CYDA0127 1 1 1 1 1 1 1 1 1 1 1
ARGA0128 1 1 1 1 1 1 1 4 4 4 4
LEUA0129 1 1 1 1 1 1 1 1 1 1 1
CTRA0129 1 1 1 1 1 1 1 3 5 5 5
Total 119 119 137 4240 803 893 350 379 492 492 489
Certain residues at hot spots, hot residues defined in list_rot.gold and and residues in contact with the hot residues, are given more rotamers.
Step 3 and step 4
We can now proceed with step 3 and step 4 as we did in the lysozymen pKa calculation example.
step3.py
step4.py
Inspect the pKa results difference between this
The hot spotspots examplemay andhelp therelaxing quick run
command | step2.py