This is a read-only mirror of pymolwiki.org
Difference between revisions of "Average b"
Jump to navigation
Jump to search
Jaredsampson (talk | contribs) (→code: adjusted string outputs to use string formatting instead of concatenation; adjusted whitespace around operators) |
|||
(3 intermediate revisions by the same user not shown) | |||
Line 14: | Line 14: | ||
from pymol import cmd,stored | from pymol import cmd,stored | ||
def average_b(selection): | def average_b(selection): | ||
− | stored.tempfactor=0 | + | stored.tempfactor = 0 |
− | stored.atomnumber=0 | + | stored.atomnumber = 0 |
− | cmd.iterate(selection,"stored.tempfactor=stored.tempfactor+b") | + | cmd.iterate(selection, "stored.tempfactor = stored.tempfactor + b") |
− | cmd.iterate(selection,"stored.atomnumber=stored.atomnumber+1") | + | cmd.iterate(selection, "stored.atomnumber = stored.atomnumber + 1") |
− | print "Your selection: " | + | print "Your selection: %s" % selection |
− | print "sum of B factors: " | + | print "sum of B factors: %s" % stored.tempfactor |
− | print "number of atoms: " | + | print "number of atoms: %s" % stored.atomnumber |
− | averagetempfactor=stored.tempfactor/stored.atomnumber | + | averagetempfactor = stored.tempfactor / stored.atomnumber |
− | print "average B of ' | + | print "average B of '%s': %s" % (selection, averagetempfactor) |
− | cmd.extend("average_b",average_b) | + | cmd.extend("average_b", average_b) |
+ | </source> | ||
+ | |||
+ | [[Category:Script_Library]] | ||
+ | [[Category:Structural_Biology_Scripts]] | ||
+ | [[Category:Biochemical_Scripts]] |
Revision as of 17:32, 6 November 2013
average_b.py
- calculate the average B-factor of a selection.
usage
- copy code to text file and save as average_b.py. Install via Plugin>Install plugin from within PyMOL.
- restart PyMOL and then type "average_b (selection)"
author
Gregor Hagelueken
code
from pymol import cmd,stored
def average_b(selection):
stored.tempfactor = 0
stored.atomnumber = 0
cmd.iterate(selection, "stored.tempfactor = stored.tempfactor + b")
cmd.iterate(selection, "stored.atomnumber = stored.atomnumber + 1")
print "Your selection: %s" % selection
print "sum of B factors: %s" % stored.tempfactor
print "number of atoms: %s" % stored.atomnumber
averagetempfactor = stored.tempfactor / stored.atomnumber
print "average B of '%s': %s" % (selection, averagetempfactor)
cmd.extend("average_b", average_b)