From: Hanspeter N. <ni...@OC...> - 2004-04-17 20:03:58
|
I'm trying to create an object of a protein from a PDB file that doesn't give a chain ID (pdb is 1BG2). I normally do something like: create atub=(/1jff//a/) to pull a specific chain out of a PDB file, but 1BG2 doesn't have a chain name. And if i use "create kin=(/1BG2////)", the object kin gets ALL the elements from 1BG2, including the waters, nucleotide, and ions, which is exactly what I'm trying to not do. How can I create an object out from a nameless chain? Hanspeter |
From: Cameron M. <cm...@uc...> - 2004-04-17 21:44:50
|
Hi , Rather than using atom selection macros (/1jff//a/etc.../), the easiest way is probably to execute the following command, which takes advantage of PyMOL's built-in "hetatm" single-word selector: > select just_protein, ! hetatm The "hetatm" selector consists of all atoms from the PDB file's HETATM lines, so it's negated in the above command in order to select only the ATOM lines (which I assume are only protein). A really paranoid way to select only protein atoms is to try the following: > select CAs, name ca > select just_protein, byres CAs Here we first select just the C-alphas ("CAs") and then use PyMOL's selection algebra to expand this selection into a new object ("just_protein") that consists of only C-alphas and all atoms in C-alpha-containing residues (i.e., entire protein). These two methods should produce equivalent selections except in the unusual cases of (1) having 'CA' atoms in HETATM lines of the PDB file or (2) having HETATM lines that contain protein residues that you'd like to include in your selection (whether they have 'CA' atoms or not). See http://pymol.sourceforge.net/newman/user/S0220commands.html#7 for more info. This reminds me of a related question I once had -- does anyone know if there's a way to create selections based loosely (and very generally) on bond connectivity criteria, in a somewhat similar manner as specified in force fields used for proteins. It would be neat to be able to select all groups of atoms in all residues that are topologically connected (i.e. by any number of bonds) as separate groups, in the absense of chain IDs of course... there's probably a clever way of doing this via byobject, byresi, etc. commands? Cameron === Hanspeter Niederstrasser wrote (on 04/17/2004 01:03 PM): === >I'm trying to create an object of a protein from a PDB file that doesn't >give a chain ID (pdb is 1BG2). > >I normally do something like: > >create atub=(/1jff//a/) > >to pull a specific chain out of a PDB file, but 1BG2 doesn't have a chain >name. And if i use "create kin=(/1BG2////)", the object kin gets ALL the >elements from 1BG2, including the waters, nucleotide, and ions, which is >exactly what I'm trying to not do. > >How can I create an object out from a nameless chain? > >Hanspeter > > >------------------------------------------------------- >This SF.Net email is sponsored by: IBM Linux Tutorials >Free Linux tutorial presented by Daniel Robbins, President and CEO of >GenToo technologies. Learn everything from fundamentals to system >administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click >_______________________________________________ >PyMOL-users mailing list >PyM...@li... >https://lists.sourceforge.net/lists/listinfo/pymol-users > > > -- Cameron Mura UCSD |
From: Warren D. <wa...@de...> - 2004-04-18 01:23:04
|
Cameron > This reminds me of a related question I once had -- does > anyone know if there's a way to create selections based > loosely (and very generally) on bond connectivity criteria, > in a somewhat similar manner as specified in force fields > used for proteins. It would be neat to be able to select all > groups of atoms in all residues that are topologically > connected (i.e. by any number of bonds) as separate groups, > in the absense of chain IDs of course... there's probably a > clever way of doing this via byobject, byresi, etc. commands? There are a set of selection keywords which act on the covalent topology; (some of these are new in 0.95). "neighbor" or "nbr." (neighbor selection) selects all atoms with bonds to a selection, but are not part of that selection. e.g. (neighbor resi 100) "bound_to" or "bto." (bound_to selection) select all atoms with bonds to a selection, whether or not they are part of it. e.g. (neighbor (resi 123)) "extend" or "xt." (selection extend number) selects all atoms within a certain number of bonds e.g. (name ca extend 2) "bymolecule" or "bymol" or "bm." (bymol selection) selects all atoms in the covalent tree(s) which contain the selection e.g. (bymol resi 100) "byfragment" or "byfrag" or "bf." (byfrag selection) selects all atoms in the covalent tree(s) which contain the selection, stopping at any and all picked atoms (the pick selections are: pk1, pk2, pk3, and pk4 -- used mostly for molecular editing). e.g. after picking 10/C into pk1, 15/N into pk2, (byfrag 13/CA) would give you all atoms that are covalently attached to 13/CA up to, but not including, 10/C and 15/N. Discounting the presence of disulfide bonds, this would be all atoms in residues 11, 12, 13, & 14. If no atoms are picked by the molecular editor, byfragment works just like bymolecule. Cheers, Warren |
From: Jacob C. <jc...@uc...> - 2004-04-17 21:08:32
Attachments:
1bg2_chained.pdb
|
Hi Hanspeter, If you want to use a stock pdb that does not contain chain IDs, you should create the object using either a residue or atom selection. For example (using residue ids for kinesin) create kin=(/1BG2///3:325/) However, for your convenience I've attached a modified pdb that contains different chain IDs for each molecule in the PDB. kinesin = A ADP = B acetate = C water = W The new PDB was made using MOLEMAN2 (from the Uppsala Software Factory - http://alpha2.bmc.uu.se/~gerard/manuals/) Saturday, April 17, 2004, 1:03:55 PM, you wrote: HN> I'm trying to create an object of a protein from a PDB file that doesn't HN> give a chain ID (pdb is 1BG2). HN> I normally do something like: HN> create atub=(/1jff//a/) HN> to pull a specific chain out of a PDB file, but 1BG2 doesn't have a chain HN> name. And if i use "create kin=(/1BG2////)", the object kin gets ALL the HN> elements from 1BG2, including the waters, nucleotide, and ions, which is HN> exactly what I'm trying to not do. HN> How can I create an object out from a nameless chain? HN> Hanspeter HN> ------------------------------------------------------- HN> This SF.Net email is sponsored by: IBM Linux Tutorials HN> Free Linux tutorial presented by Daniel Robbins, President and CEO of HN> GenToo technologies. Learn everything from fundamentals to system HN> administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click HN> _______________________________________________ HN> PyMOL-users mailing list HN> PyM...@li... HN> https://lists.sourceforge.net/lists/listinfo/pymol-users |