CalcArea

From PyMOLWiki
Jump to: navigation, search

Overview

This code will calculate the area of a given selection. If you have a bunch of disparate selections, or one selection made up of various objects then you can use this to find the area.

The Code

def calcArea(sel, ASA=0, density=3, quiet=1):
	"""
DESCRIPTION
 
    Calculate the area of an object or selection (as if it were one complete object).
 
ARGUMENTS
 
    sel = string: atom selection
 
    ASA = 0/1: solvent excluded or solvent accessible surface area
 
    density = int: sampling quality {default: 3}
	"""
	tName = "__temp__for__doArea__"
	cmd.create(tName, sel)
	cmd.flag("ignore", tName, "clear")
	cmd.set("dot_solvent", int(ASA), tName)
	cmd.set("dot_density", int(density), tName)
	theArea = cmd.get_area(tName)
	cmd.delete(tName)
	if not int(quiet):
		print 'Area (solvent %s): %.3f Angstroms^2' % (['excluded',
			'accessible'][int(ASA)], theArea)
	return theArea
 
cmd.extend('calcArea', calcArea)

See Also

Personal tools
Namespaces
Variants
Actions
Navigation
Toolbox