Hi Noé,
To get the rotamer list specifically for residue :3.a, the code would be:

from chimera.specifier import evalSpec
from Rotamers import getRotamers
for r in evalSpec(":3.a").residues():
rots = getRotamers(r)
# do whatever you were going to do with the rotamer list

However, you can use any string you like as the argument to evalSpec().  For instance you could use "#0 & protein" to go through all the protein residues of model #0.  In that case r.oslIdent() would return the atom specifier for the residue which you could then use in other commands.

--Eric

On Jan 7, 2023, at 7:07 AM, Noe Robert via Chimera-users <chimera-users@cgl.ucsf.edu> wrote:

Hi, 
I would like to come back to this answer from M. Pettersen :
"To answer the Python side of this, chimera.Rotamers.getRotamers(residue) gets a list of rotamers (really Molecule instances) for that residue (Dunbrack library by default).  Each of those Molecule instances has a 'rotamerProb' attribute, which is the value you see in the graphical user interface."
As I'm not used to this scale of Chimera use, I don't know how to run getRotamers on the specific residue I want and I'm having quite a hard time exploring python scripts refering to getRotamers. I would just need to run this function to get the 'rotamerProb' attribute of each rotamer, the rest would be performed using commands. 
So I would like to know what would be the code line to have getRotamers returning "mols" on a specific residue, for instance ":3.a"
Thank you a lot and have a great weekend !

De : Eric Pettersen <pett@cgl.ucsf.edu>
Envoyé : mardi 3 janvier 2023 18:26
À : Noe Robert <noe.robert@etu.univ-cotedazur.fr>
Cc : chimera-users@cgl.ucsf.edu <chimera-users@cgl.ucsf.edu>
Objet : Re: [Chimera-users] Question concerning rotamer choosing
 
To answer the Python side of this, chimera.Rotamers.getRotamers(residue) gets a list of rotamers (really Molecule instances) for that residue (Dunbrack library by default).  Each of those Molecule instances has a 'rotamerProb' attribute, which is the value you see in the graphical user interface.  You apply the rotamer you want by calling chimera.Rotamers.useRotamer(residue, rotamers) where rotamers is a list of rotamers to apply, probably just one (at a time) in your case because if you supply multiple rotamers then they will all be used by putting each one in a different alternate location.

--Eric

Eric Pettersen
UCSF Computer Graphics Lab


On Jan 2, 2023, at 6:26 AM, Noe Robert via Chimera-users <chimera-users@cgl.ucsf.edu> wrote:

Hi, 
I'm currently trying to write a python script which automatizes mutageneses on Chimera 1.16, and calculates clashes inducted by the change of amino acid through a local minimization (which explains why I'm using Chimera instead of ChimeraX). 
I would like to choose which rotamer to use depending on their probability from the rotamer library Dunbrack (for instance, when probability is >0.1), which is visible on the "Rotamers graphical user interface". Is there a way to extract these probability values using a script, in order to run it on a certain number of rotamers ? That way it would be quite automated.
On Jul 1, 2015, Eric Pettersen advised to modify the "Python script that uses the functions in the Rotamers module" (here), but I don't which one it is.

Thank you,

Noé Robert,
Fifth-year student in bioengineering, minor in Bioinformatics and Modelling, at engineering school Polytech Nice Sophia, France
Phone : +33 7 81 00 52 02
"let's limit the use of our resources and lighten our mails"


_______________________________________________
Chimera-users mailing list: Chimera-users@cgl.ucsf.edu
Manage subscription: https://www.rbvi.ucsf.edu/mailman/listinfo/chimera-users

_______________________________________________
Chimera-users mailing list: Chimera-users@cgl.ucsf.edu
Manage subscription: https://www.rbvi.ucsf.edu/mailman/listinfo/chimera-users