I used PyMOL and Maestro to invert the chirality of single L-amino acids into D-amino acids, as well as all L-residue polypeptide to all D-residue polypeptides. Even though they are mutually mirror images, but D-amino acids and D-polypeptides all have remarkably higher energy scores than their counterparts by using PyRosetta scoring protocol. May I ask what are some possible reasons for this difference? I am wondering whether it is caused by computational error or more delicate design, such as strong and weak nuclear forces, in Rosetta tool.
Category:
Post Situation:
What version of Rosetta are you using? There were some bugs with in D-amino acid scoring which should (*knock wood*) be fixed with the most recent weekly release.
The version I used is Pyrosetta 3 on Windows OS
Rosetta and PyRosetta is in active development, and bugs are fixed on a regular basis. "PyRosetta3" is a bit too vauge (and the most recent versions are PyRosetta4). What do you get when you do something like:
(Or `print(pyrosetta.version())` if you're using Python3)
You should get something like
If the date at the end is earlier than mid 2016 or so, I'd highly recommend you update to the most recent version, so you get all the D-aa bug fixes. Depending on what you're doing, you may even need to update if the date is before Oct 2016.
Alternatively, there should be a string of digits which are printed out when you call the init() function, and those would work as a version designation as well, though one that's a little harder to descipher.
Thank you. It is very helpful. I always used the most revent version of pyrosetta3, but it is still 2014. I will used pyrosetta4 from now on.
Did your protocol also invert the backbone and sidechain torsions of these residues? A D-amino acid with phi, psi of (-60, -40) is quite strained.
Are the high energies mostly in rama and fa_dun?
Yes, the protocol inverts both backbone and sidechain to make a mirror image all D-peptide. The high energies are rama, fa_dun, and p_aa_pp
To flip the chirality of a peptide properly in Rosetta, you need to do BOTH of the following:
1. Mirror all xyz coordinates (which also effectively inverts all torsion values).
2. Convert the L residue types into D residue types. (If you just mirror coordinates, Rosetta thinks that you still have L-amino acids with weird geometry).
You can do this manually, but it's easier to use the FlipChirality mover, which does both steps for you (https://www.rosettacommons.org/docs/latest/scripting_documentation/RosettaScripts/Movers/movers_pages/FlipChiralityMover).
I can say with great certainty that Rosetta's scoring, with the talaris2013, talaris2014, or beta_nov15 scorefunctions, is fully symmetric: mirror-image structures yield identical scores, if you mirror the structures properly.