Hi, AFAIK, pseudoatom puts a new atom on the center of mass (or geometry) of the selection. So,
import glob from pymol import cmd for pdb in glob.glob("*.pdb"): cmd.pseudoatom(pdb[-3:],"{} and resn LIGANDNAME".format(pdb)) Or along those lines. Be creative :) Cheers, Tsjerk On Tue, Sep 15, 2015 at 12:25 AM, Osvaldo Martin <aloctavo...@gmail.com> wrote: > Hi Zakir, > > The following script computes the Center Of Mass (or alternative the > geometric center) and then draws a pseudoatom > <http://www.pymolwiki.org/index.php/Pseudoatom>. I think you could adapt > the script to your needs if you find difficulties, don’t hesitate to > contact the list again (your question is not silly). > > > import pymol > from pymol import cmd > pymol.finish_launching() > import numpy as np > > def center(selection, com=True): > model = cmd.get_model(selection) > xyz = np.array(model.get_coord_list()) > mass = [i.get_mass() for i in model.atom] > xyz_m = xyz * np.array([mass]).T > if com: > return tuple(np.sum(xyz_m, 0)/model.get_mass()) > else: > return tuple(np.average(xyz, 0)) > > > cmd.load('some_file.pdb') > COM = center('all') > cmd.pseudoatom('center', pos=COM) > > Alternatively, you can use this script > <http://www.pymolwiki.org/index.php/Center_of_mass> to compute the center > of mass. > > Cheers, > Osvaldo > > > On Mon, Sep 14, 2015 at 4:29 PM, Zakir Tnimov <zakir.tni...@gmail.com> > wrote: > > Hi there, >> >> I have no experience in scripting what so ever thus this simple task >> drives me nuts. >> I was using ZDOCK to dock my protein on the complex. It spits me out 2000 >> pdb files that each contain a ligand and receptor. Receptor position is >> fixed, ligand is not. What I want to show is just centre of mass of the >> ligand and a receptor. I understand that I should be doing something like >> this: >> >> from pymol import cmd >> from glob import glob >> >> for file in glob("*.pdb"): >> print file >> cmd.load(file,'prot') >> for a in cmd.index("CYS/SG"): >> identify COM >> print its location as a dot or sphere >> delete loaded file >> go to another one until list is exhousted >> >> cmd.delete("all”) >> >> Thank you a lot and sorry for bothering you with such a silly question! >> >> >> zakir.tni...@gmail.com >> >> >> >> >> >> ------------------------------------------------------------------------------ >> _______________________________________________ >> 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-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 > -- Tsjerk A. Wassenaar, Ph.D.
------------------------------------------------------------------------------
_______________________________________________ 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