-
Notifications
You must be signed in to change notification settings - Fork 160
Declare_chemical_bond between 2 SG atoms on the sidechain of 2 Cys residues #106
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
Creating a chemical bond is a two-step process. First you need to change the residue identity (ResidueType) to be one which has all the annotations that it's able to accept a connection at the atom you're interested in. Only afterward can you call Luckily, for disulfide bonds there's a shortcut. There's a |
Thank you for your quick response. I tried this according to the Pyrosetta docs However, it just returned the boolean value True without changing anything (I checked the exported pose with PyMOL). |
If the function returns true, it should have changed the Conformation. Note, though, that the function only annotates the disulfide bond being present. It does not actually change any of the coordinates. You'll only see the effect of the disulfide once you do some sort of coordinate manipulation (like packing or minimization) -- the scorefunction you use has the disulfide term on, which will penalize structures where the two cysteines are in a bad conformation with respect to each other. As such, when you sample their structure the "more disulfide like" conformations will be lower in energy and dominate the sampling. |
I got it. Thank you so much. Also, do you have the example script for creating a chemical bond via a two-step process you mentioned? I want to also connect a ligand to the SG atom for some of the future work, but the docs I read was a bit obscure in terms of the params file (it said I needed to add CONNECT part but no example was provided, so I was not sure how to do it). |
Uh oh!
There was an error while loading. Please reload this page.
I want to cyclize my 14-mer peptide in the complex with another protein. I received the complex from AlphaFold-2 multimer model, and the peptide was linear there. I want to form a disulfide bond between 2 SG atoms on these 2 Cys at 2 ends of the peptide to cyclize that peptide before local docking using Rosetta. However, I faced this error:
File: /home/benchmark/rosetta/source/src/core/conformation/Conformation.cc:1756
[ ERROR ] UtilityExitException
ERROR: CYS:NtermProteinFull doesnt have connection at SG
The script I used to declare bond is here:
from pyrosetta import *
init()
pose = pose_from_pdb("/rosetta/Son/project/znrf3/inputs/global_dock/30_2.pdb")
SG_B1_resID = pose.pdb_info().pdb2pose('B', 1)
SG_B14_resID = pose.pdb_info().pdb2pose('B', 14)
pose.conformation().declare_chemical_bond(SG_B1_resID, "SG" , SG_B14_resID, "SG")
I tried to change SG into C and N, it worked. So I was stuck here. I tried to cyclize it with simple_cycpep_predict of Rosetta and it worked but the conformation changed, which is the thing I don't want.
What should I do to solve this problem? Thank you
The text was updated successfully, but these errors were encountered: