Re: [PyMOL] python command to get b-factor and occupancy of a single atom?

2015-08-27 Thread Thomas Holder
Hi Dirk,

cmd.iterate is actually the most efficient function to access atom properties. 
If you want a wrapper which directly gets b and q for one atom, it could look 
like this (returns a dictionary):

from pymol import cmd
@cmd.extend
def get_signle_atom_props(selection, props=['b', 'q'], quiet=1):
if isinstance(props, basestring):
props = cmd.safe_list_eval(props)
expr = ','.join((repr(k) + ':' + k) for k in props)
expr = '_r.update({' + expr + '})'
r = {}
n = cmd.iterate(selection, expr, space={'_r': r})
if n  1:
print ' Warning: selections spans more than one atom'
if not int(quiet):
print r
return r

You can use the first operator to limit your selection to one atom:
print get_single_atom_props('first polymer')

Cheers,
  Thomas

On 27 Aug 2015, at 06:27, Dirk Kostrewa kostr...@genzentrum.lmu.de wrote:

 Dear PyMOLers,
 
 I have trouble to find out, which command I could use in a python script 
 to get the b-factor and occupancy of a single atom.
 In the script library, I only found examples getting b-factors iterating 
 over a selection.
 Although, I could iterate over one atom, only, is there a more elegant 
 way of getting the b-factor and occupancy of a single atom?
 
 Best regards,
 
 Dirk.
 
 -- 
 
 ***
 Dirk Kostrewa
 Gene Center Munich, A5.07
 Department of Biochemistry
 Ludwig-Maximilians-Universität München
 Feodor-Lynen-Str. 25
 D-81377 Munich
 Germany
 Phone:  +49-89-2180-76845
 Fax:+49-89-2180-76999
 E-mail: kostr...@genzentrum.lmu.de
 WWW:www.genzentrum.lmu.de
 ***

-- 
Thomas Holder
PyMOL Principal Developer
Schrödinger, Inc.


--
___
PyMOL-users mailing list (PyMOL-users@lists.sourceforge.net)
Info Page: https://lists.sourceforge.net/lists/listinfo/pymol-users
Archives: http://www.mail-archive.com/pymol-users@lists.sourceforge.net


[PyMOL] python command to get b-factor and occupancy of a single atom?

2015-08-27 Thread Dirk Kostrewa
Dear PyMOLers,

I have trouble to find out, which command I could use in a python script 
to get the b-factor and occupancy of a single atom.
In the script library, I only found examples getting b-factors iterating 
over a selection.
Although, I could iterate over one atom, only, is there a more elegant 
way of getting the b-factor and occupancy of a single atom?

Best regards,

Dirk.

-- 

***
Dirk Kostrewa
Gene Center Munich, A5.07
Department of Biochemistry
Ludwig-Maximilians-Universität München
Feodor-Lynen-Str. 25
D-81377 Munich
Germany
Phone:  +49-89-2180-76845
Fax:+49-89-2180-76999
E-mail: kostr...@genzentrum.lmu.de
WWW:www.genzentrum.lmu.de
***


--
___
PyMOL-users mailing list (PyMOL-users@lists.sourceforge.net)
Info Page: https://lists.sourceforge.net/lists/listinfo/pymol-users
Archives: http://www.mail-archive.com/pymol-users@lists.sourceforge.net