Center of mass
|This code has been put under version control in the project Pymol-script-repo|
This script calculates the true center-of-mass (COM) or the center-of-geometry (COG) for a given selection and returns the x, y, z values in the form of a Pseudoatom (rather than a CGO sphere). The benefit of using a Pseudoatom is that it can be selected and used in calculations. In addition, this script also iteratively goes through all states of a selection if more than one state exists and appends the corresponding COM/COG values as states into the Pseudoatom. The script itself is quite simple yet robust enough to be applied in different settings. As well, the calculation of the COM/COG is handled independently from the formation of the Pseudoatom and can be called as an independent function where applicable.
com selection [,state=None [,mass=None [,object=None]]]
import center_of_mass fetch 1c3y, finish=1, multiplex=0 com 1c3y, state=1 #Create a pseudoatom representing the 1c3y COG and store it as "1c3y_COM" #The "1c3y_COM" object will contain 1 state only com 1c3y, state=1, object=COG #Create a pseudoatom representing the 1c3y COG and store it as "COG" #The "COG" object will contain 1 state only com 1c3y, state=1, object=COM, mass=1 #Create a pseudoatom representing the 1c3y COM and store it as "COM" #The "COM" object will contain 1 state only com 1c3y, object=COM, mass=1 #Create a single pseudoatom containing the COM for each state found in 1c3y and store it as "COM" #The "COM" object will contain MULTIPLE states!