# Flexible docking

**URL:** <https://ask.bioexcel.eu/t/flexible-docking/5190>\
**Category:** HADDOCK\
**Created:** [July 11, 2024, 11:26am UTC](https://ask.bioexcel.eu/t/flexible-docking/5190 "2024-07-11T11:26:50Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![michael](https://avatars.discourse-cdn.com/v4/letter/m/4bbf92/32.png) [@michael](https://ask.bioexcel.eu/u/michael)\
**Post date:** [July 11, 2024, 11:26am UTC](https://ask.bioexcel.eu/t/flexible-docking/5190/1 "2024-07-11T11:26:50Z")

</div>

Hi,  
I am using HADDOCK to dock a protein-peptide complex.  
To test how well haddock is good for my system I have done a practice test, using restraints from the original PDB structure and in the binding site made the amino acids fully flexible.  
However, the results show that the amino acids at the N and C terminus are not in the right position (probably due to the change in orientation because of the fully flexible segment). Is there a way to overcome this issue? So the docking will still be flexible for some amino acids but on the other amino acids will stay in place?  
Attached is a Pymol image of the original on the docked structure.  
The original PDB is yellow-green (green are the amino acids that are fully flexible) and the docked is colored orange (flexible) and wheat.  
And as seen in the figure the N and C terminus are not in the right place. how can I keep them in the right orientation?  
Thank you!

 ![image](https://europe1.discourse-cdn.com/flex013/uploads/bioexcel/original/2X/7/7cb778312b8be7fc66dd8c08704e075ad30049f3.jpeg)

---

<div class="post-metadata">

**Author:** ![michael](https://avatars.discourse-cdn.com/v4/letter/m/4bbf92/32.png) [@michael](https://ask.bioexcel.eu/u/michael)\
**Post date:** [July 14, 2024, 5:35pm UTC](https://ask.bioexcel.eu/t/flexible-docking/5190/2 "2024-07-14T17:35:50Z")

</div>

Hi,  
Why are the rigid amino acids moving? is there a way to prevent this so that only the fully flexible amino acids move?  
Thank you

---

<div class="post-metadata">

**Author:** ![amjjbonvin](https://dub1.discourse-cdn.com/flex013/user_avatar/ask.bioexcel.eu/amjjbonvin/32/23_2.png) [@amjjbonvin](https://ask.bioexcel.eu/u/amjjbonvin)\
**Post date:** [July 14, 2024, 5:53pm UTC](https://ask.bioexcel.eu/t/flexible-docking/5190/3 "2024-07-14T17:53:30Z")

</div>

What do you mean by rigid amino acids?

---

<div class="post-metadata">

**Author:** ![michael](https://avatars.discourse-cdn.com/v4/letter/m/4bbf92/32.png) [@michael](https://ask.bioexcel.eu/u/michael)\
**Post date:** [July 14, 2024, 7:28pm UTC](https://ask.bioexcel.eu/t/flexible-docking/5190/4 "2024-07-14T19:28:14Z")

</div>

What I mean is that I have amino acids that are considered “fully flexible” and some that are not (so they should be rigid). However, the move. How can this be?  
In the figure above it is shown how the N and C terminus are are not in the correct position, even though they should not be able to move.

---

<div class="post-metadata">

**Author:** ![amjjbonvin](https://dub1.discourse-cdn.com/flex013/user_avatar/ask.bioexcel.eu/amjjbonvin/32/23_2.png) [@amjjbonvin](https://ask.bioexcel.eu/u/amjjbonvin)\
**Post date:** [July 15, 2024, 7:01am UTC](https://ask.bioexcel.eu/t/flexible-docking/5190/5 "2024-07-15T07:01:27Z")

</div>

The flexibility mode is by default automatic, meaning any residue at the interface will be treated as flexible.  
This is different than the full flexibility option.

If you want a molecule to be rigid you can specify that.

Defining fully flexible residues only add extra flexibility to those resides, but does not change the behaviour of the other residues (i.e. the automatic flexibility mode).

---

<div class="post-metadata">

**Author:** ![michael](https://avatars.discourse-cdn.com/v4/letter/m/4bbf92/32.png) [@michael](https://ask.bioexcel.eu/u/michael)\
**Post date:** [July 15, 2024, 7:42am UTC](https://ask.bioexcel.eu/t/flexible-docking/5190/6 "2024-07-15T07:42:02Z")

</div>

Thank you!  
How can I define rigid amino acids?

I thought the default flexibility isn’t strong enough to completely change the protein structure when those amino acids are far from the interface… this is something that never happened before I made some of the amino acids fully flexible. Why is that?

---

<div class="post-metadata">

**Author:** ![amjjbonvin](https://dub1.discourse-cdn.com/flex013/user_avatar/ask.bioexcel.eu/amjjbonvin/32/23_2.png) [@amjjbonvin](https://ask.bioexcel.eu/u/amjjbonvin)\
**Post date:** [July 15, 2024, 8:05am UTC](https://ask.bioexcel.eu/t/flexible-docking/5190/7 "2024-07-15T08:05:42Z")

</div>

You can only define a full molecule as rigid.

You can also turn off the automatic flexibility treatment and define the semi-flexible segments manually.

---

<div class="post-metadata">

**Author:** ![michael](https://avatars.discourse-cdn.com/v4/letter/m/4bbf92/32.png) [@michael](https://ask.bioexcel.eu/u/michael)\
**Post date:** [July 15, 2024, 8:39am UTC](https://ask.bioexcel.eu/t/flexible-docking/5190/8 "2024-07-15T08:39:20Z")

</div>

This is what I have now:  
What settings do you mean I should change? Where can I define a full molecule as rigid?  
The amino acids at the C and N terminus are more than 5 A away from each other in the initial structure

semi-flexible:

{========= Definition of semi-flexible interface ============}  
{\* Define the interface of each molecule._}  
{_ Side-chains and backbone of these residues will be allowed to move during semi-flexible refinement\*}  
{\* Distance cutoff in A for the automatic definition of flexible segments based on intermolecular residues contacts _}  
{===\>} flcut\_nb=5.0;  
{_ number of semi-flexible segments for molecule 1 (-1 for automated mode) _}  
{_ Note that current max is 10 (edit the run.cns to add more segments \*}  
{===\>} nseg\_1=-1;

And fully flexible:  
{===\>} nfle\_1=3;  
{\* Fully flexible segments of molecule 1 \*}  
{+ table: rows=5 “segment 1” “segment 2” “segment 3” “segment 4” “segment 5” cols=2 “Start residue” “End residue” +}  
{===\>} start\_fle\_1\_1=“90”;  
{===\>} end\_fle\_1\_1=“99”;  
{===\>} start\_fle\_1\_2=“116”;  
{===\>} end\_fle\_1\_2=“119”;  
{===\>} start\_fle\_1\_3=“134”;  
{===\>} end\_fle\_1\_3=“137”;

---

<div class="post-metadata">

**Author:** ![amjjbonvin](https://dub1.discourse-cdn.com/flex013/user_avatar/ask.bioexcel.eu/amjjbonvin/32/23_2.png) [@amjjbonvin](https://ask.bioexcel.eu/u/amjjbonvin)\
**Post date:** [July 15, 2024, 8:55am UTC](https://ask.bioexcel.eu/t/flexible-docking/5190/9 "2024-07-15T08:55:48Z")

</div>

Set nseg\_X to 0 for the molecule X you want to keep rigid

---

<div class="post-metadata">

**Author:** ![michael](https://avatars.discourse-cdn.com/v4/letter/m/4bbf92/32.png) [@michael](https://ask.bioexcel.eu/u/michael)\
**Post date:** [July 15, 2024, 3:59pm UTC](https://ask.bioexcel.eu/t/flexible-docking/5190/10 "2024-07-15T15:59:00Z")

</div>

Thank you  
I tried this, but still, some of the structures do not stay rigid in the correct places.  
What else can I try?  
it looks like this:

 ![image](https://europe1.discourse-cdn.com/flex013/uploads/bioexcel/original/2X/c/c574673c3bd007202d359041fcf9fabb6eca3364.png)

instead of

 ![image](https://europe1.discourse-cdn.com/flex013/uploads/bioexcel/original/2X/2/2e3247548f3ef2658458bd970c50b41680dad66a.png)

---

<div class="post-metadata">

**Author:** ![amjjbonvin](https://dub1.discourse-cdn.com/flex013/user_avatar/ask.bioexcel.eu/amjjbonvin/32/23_2.png) [@amjjbonvin](https://ask.bioexcel.eu/u/amjjbonvin)\
**Post date:** [July 15, 2024, 5:20pm UTC](https://ask.bioexcel.eu/t/flexible-docking/5190/11 "2024-07-15T17:20:56Z")

</div>

Don’t know the details of what you are doing, but something is clearly wrong in your settings…

Did you try running it on server?

---

<div class="post-metadata">

**Author:** ![michael](https://avatars.discourse-cdn.com/v4/letter/m/4bbf92/32.png) [@michael](https://ask.bioexcel.eu/u/michael)\
**Post date:** [July 15, 2024, 8:19pm UTC](https://ask.bioexcel.eu/t/flexible-docking/5190/12 "2024-07-15T20:19:55Z")

</div>

these are the exact changes I do in run.cns file, what is wrong here?

sed -i ‘s/delenph=true/delenph=false/g’ run.cns  
sed -i ‘s/{===\>} clust\_meth=“FCC”;/{===\>} clust\_meth=“RMSD”;/g’ run.cns  
sed -i ‘s/{===\>} clust\_cutoff=0.60;/{===\>} clust\_cutoff=5;/g’ run.cns  
sed -i ‘s/{===\>} cpunumber\_1=4;/{===\>} cpunumber\_1=18;/g’ run.cns  
sed -i ‘s/{===\>} waterrefine=200;/{===\>} waterrefine=400;/g’ run.cns  
sed -i ‘s/{===\>} initiosteps=500;/{===\>} initiosteps=2000;/g’ run.cns  
sed -i ‘s/{===\>} cool1\_steps=500;/{===\>} cool1\_steps=2000;/g’ run.cns  
sed -i ‘s/{===\>} cool2\_steps=1000;/{===\>} cool2\_steps=4000;/g’ run.cns  
sed -i ‘s/{===\>} cool3\_steps=1000;/{===\>} cool3\_steps=4000;/g’ run.cns  
sed -i ‘s/{===\>} structures\_0=1000;/{===\>} structures\_0=9900;/g’ run.cns  
sed -i ‘s/{===\>} structures\_1=200;/{===\>} structures\_1=400;/g’ run.cns

sed -i ‘s/{===\>} nfle\_2=0;/{===\>} nfle\_2=1;/g’ run.cns  
sed -i ‘s/{===\>} start\_fle\_2\_1=“”;/{===\>} start\_fle\_2\_1=“1”;/g’ run.cns  
sed -i ‘s/{===\>} end\_fle\_2\_1=“”;/{===\>} end\_fle\_2\_1=“70”;/g’ run.cns

sed -i ‘s/{===\>} nseg\_1=-1;/{===\>} nseg\_1=0;/g’ run.cns  
sed -i ‘s/{===\>} nfle\_1=0;/{===\>} nfle\_1=3;/g’ run.cns

sed -i ‘s/{===\>} runana=“cluster”;/{===\>} runana=“full”;/g’ run.cns

and changed the following:  
{===\>} start\_fle\_1\_1=“23”;  
{===\>} end\_fle\_1\_1=“32”;  
{===\>} start\_fle\_1\_2=“47”;  
{===\>} end\_fle\_1\_2=“52”;  
{===\>} start\_fle\_1\_3=“65”;  
{===\>} end\_fle\_1\_3=“68”;

unambig restraints are:  
assign(segid A and resid 26 and name HH)(segid B and resid 10 and name HG2) 2.511 0.5 0.5  
assign(segid A and resid 52 and name HB1)(segid B and resid 14 and name HG1) 2.691 0.5 0.5  
assign(segid A and resid 52 and name HZ2)(segid B and resid 11 and name HD2) 2.694 0.5 0.5  
assign(segid A and resid 65 and name HB2)(segid B and resid 10 and name HE2) 2.655 0.5 0.5  
assign(segid A and resid 68 and name HD1)(segid B and resid 10 and name HE2) 2.622 0.5 0.5  
assign(segid A and resid 68 and name HE1)(segid B and resid 8 and name HD2) 2.677 0.5 0.5

and run.param is:  
HADDOCK\_DIR=/home/qnt/drorimi2/software/haddock2.4-2023-01/  
N\_COMP=2  
PDB\_FILE1=/home/qnt/drorimi2/full\_analize\_40PDB/7pll/HADDOCK\_2/input\_files/7pll\_prot.pdb  
PDB\_FILE2=/home/qnt/drorimi2/full\_analize\_40PDB/7pll/HADDOCK\_2/input\_files/7pll\_beta.pdb  
PDB\_LIST2=/home/qnt/drorimi2/full\_analize\_40PDB/7pll/HADDOCK\_2/input\_files/structures.list  
PROJECT\_DIR=./  
PROT\_SEGID\_1=A  
PROT\_SEGID\_2=B  
UNAMBIG\_TBL=/home/qnt/drorimi2/full\_analize\_40PDB/7pll/HADDOCK\_2/prepare\_tbl/make\_tbl/range\_0.5/random\_20.tbl  
RUN\_NUMBER=\_random\_20\_0  
submit\_save=Save updated parameters

---

<div class="post-metadata">

**Author:** ![amjjbonvin](https://dub1.discourse-cdn.com/flex013/user_avatar/ask.bioexcel.eu/amjjbonvin/32/23_2.png) [@amjjbonvin](https://ask.bioexcel.eu/u/amjjbonvin)\
**Post date:** [July 15, 2024, 9:01pm UTC](https://ask.bioexcel.eu/t/flexible-docking/5190/13 "2024-07-15T21:01:18Z")

</div>

Which molecule is your protein?

You are now defining fully flexible segments for both.

What do you want to do exactly?

---

<div class="post-metadata">

**Author:** ![michael](https://avatars.discourse-cdn.com/v4/letter/m/4bbf92/32.png) [@michael](https://ask.bioexcel.eu/u/michael)\
**Post date:** [July 16, 2024, 5:52am UTC](https://ask.bioexcel.eu/t/flexible-docking/5190/14 "2024-07-16T05:52:32Z")

</div>

My protein is segment A., I want to define in the protein specific amino acids that are fully flexible in the binding zone, and in the peptide all amino acids (I marked them 1-70 so it will include all of them (I use the same changes for different peptides so its easier for me to define this way).  
I want the areas that I marked fully flexible to be flexible, but I don’t know why the C and N terminus in the protein move so much… they are not supposed to move. Not in all the structures this happens, but it happens in about a third.  
My goal is to dock PDB complex “7pll” using restraints to reproduce the original solved structure.  
I am also trying to run on the web server to compare, and it is still queued for several hours.

---

<div class="post-metadata">

**Author:** ![amjjbonvin](https://dub1.discourse-cdn.com/flex013/user_avatar/ask.bioexcel.eu/amjjbonvin/32/23_2.png) [@amjjbonvin](https://ask.bioexcel.eu/u/amjjbonvin)\
**Post date:** [July 16, 2024, 6:48am UTC](https://ask.bioexcel.eu/t/flexible-docking/5190/15 "2024-07-16T06:48:03Z")

</div>

Depending on how you define your fully flexible segments, this can of course allow the termini to move.

HADDOCK is not using positions restraints, but freeze dihedral angles in the torsion angle dynamics refinement stage.

I would suggest not to define your protein segments as fully flexible but rather keep the automatic flexibility in this case.

Note that you can also automatically define backbone dihedral angle restraints to maintain the structure:

```auto
{* Automatically define backbone dihedral angle restraints from structure? *}
{* Error treshold for restraint violation is defined by error_dih *}
{+ choice: none all alpha alphabeta +}
{+ define the error treshold for the restraint violation +}
{===>} ssdihed=none;
{===>} error_dih=10;

```

---

<div class="post-metadata">

**Author:** ![michael](https://avatars.discourse-cdn.com/v4/letter/m/4bbf92/32.png) [@michael](https://ask.bioexcel.eu/u/michael)\
**Post date:** [July 16, 2024, 6:57am UTC](https://ask.bioexcel.eu/t/flexible-docking/5190/16 "2024-07-16T06:57:41Z")

</div>

I don’t understand why “Depending on how you define your fully flexible segments, this can of course allow the termini to move.”  
I didn’t define the N and C termini as flexible, so why would it?  
and I want to define the binding area as fully flexible since sometimes the loop moves a little (without disrupting the structure) and the peptide is completely flexible. So if I define dihedral angle restraints from structure It won’t be able to take this into account. Am I correct?

---

<div class="post-metadata">

**Author:** ![amjjbonvin](https://dub1.discourse-cdn.com/flex013/user_avatar/ask.bioexcel.eu/amjjbonvin/32/23_2.png) [@amjjbonvin](https://ask.bioexcel.eu/u/amjjbonvin)\
**Post date:** [July 16, 2024, 8:07am UTC](https://ask.bioexcel.eu/t/flexible-docking/5190/17 "2024-07-16T08:07:47Z")

</div>

Think of a tree - you might define part of branch as flexible. If it moves, then the tip of the branch will also move, even if that part if rigid.

> I don’t understand why “Depending on how you define your fully flexible segments, this can of course allow the termini to move.”  
> I didn’t define the N and C termini as flexible, so why would it?  
> and I want to define the binding area as fully flexible since sometimes the loop moves a little (without disrupting the structure) and the peptide is completely flexible. So if I define dihedral angle restraints from structure It won’t be able to take this into account. Am I correct?

Why not start simple… Now you have problems. So try first the automatic flexibility setting at least for the protein part…

---

<div class="post-metadata">

**Author:** ![michael](https://avatars.discourse-cdn.com/v4/letter/m/4bbf92/32.png) [@michael](https://ask.bioexcel.eu/u/michael)\
**Post date:** [July 16, 2024, 8:40am UTC](https://ask.bioexcel.eu/t/flexible-docking/5190/18 "2024-07-16T08:40:57Z")

</div>

Ok thank you  
Is there a way to define backbone dihedral angle restraints from structure only for the protein?  
This way I can keep the peptide fully flexible and the protein won’t break structure (although it’s not fully flexible if the dihydral angels are rigid)

---

<div class="post-metadata">

**Author:** ![amjjbonvin](https://dub1.discourse-cdn.com/flex013/user_avatar/ask.bioexcel.eu/amjjbonvin/32/23_2.png) [@amjjbonvin](https://ask.bioexcel.eu/u/amjjbonvin)\
**Post date:** [July 16, 2024, 8:53am UTC](https://ask.bioexcel.eu/t/flexible-docking/5190/19 "2024-07-16T08:53:36Z")

</div>

You would have to do that manually and provide a restraint file.

But try first the automatic flexibility (default) for your protein

---

<div class="post-metadata">

**Author:** ![michael](https://avatars.discourse-cdn.com/v4/letter/m/4bbf92/32.png) [@michael](https://ask.bioexcel.eu/u/michael)\
**Post date:** [July 16, 2024, 1:54pm UTC](https://ask.bioexcel.eu/t/flexible-docking/5190/20 "2024-07-16T13:54:28Z")

</div>

I tried this, and the results are much better, but I still want most of the amino acids in the protein to be completely rigid, and not move at all even if the “head” of the branch moves.  
Is there another way to do this except to define backbone dihedral angle restraints (or other manually input restraints?). Since this is a lot of work  
Thank you

[Next page](https://ask.bioexcel.eu/t/flexible-docking/5190.md?page=2)
