I finally figured out the problem while trying to kluge a workaround. I
thought I'd mention the solution for the archive trawlers benefit. The
group command was unnecessary and when removed the script behaved
perfectly.

Thanks for all your time and help,
Katherine


On Thu, Dec 19, 2013 at 7:34 AM, Katherine Sippel <
katherine.sip...@gmail.com> wrote:

> Sorry if I was unclear. Currently I've got a functioning script that looks
> for a specific set of interactions in 3D space for each ligand in a pdb. If
> this interaction exists it gets passed along to a solvent accessible
> surface area %cutoff to eliminate ligands that are sitting on bulk solvent.
> I need to distinguish between genuine solvent exposed ligands and those
> that are sitting on a biological interface that isn't represented in the
> crystallographic ASU. Loading as a multiplex=1 or grouping alone is
> insufficient for program to recognize and account for the other molecules
> and include them in the calculations, hence the create command.
>
> Basically I need a way to load the .pdb1 files as the full biological
> assembly. I need it recognize if it is a multimer (I was using count_states
> if loop as that recognition mechanism). If it recognizes that it is a
> multimer it needs to then pass the multimer into the group/create loop. If
> it is a monomer it needs to proceed through the rest of the script. This is
> a PDB datamining thing so it needs to be broad enough to account for any
> possible oligomer. If there is another way for the program to recognize
> that there are multimers present that would be great. Count_states was the
> only criteria I managed to fish out of the wiki/bb archives.
>
> Thanks for the advice,
> Katherine
>
>
> On Thu, Dec 19, 2013 at 12:20 AM, Tsjerk Wassenaar <tsje...@gmail.com>wrote:
>
>> Hi Katherine,
>>
>> You explain some of how you want to do it, but you don't explain what
>> you're trying to do. What is the objective? It may well be that there's an
>> easier way. As a sidenote, create can also make an object with multiple
>> states. Check the help.
>>
>> Hope it helps,
>>
>> Tsjerk
>>
>>
>> On Wed, Dec 18, 2013 at 10:57 PM, Katherine Sippel <
>> katherine.sip...@gmail.com> wrote:
>>
>>> Hi all,
>>>
>>> I'm trying to load biological assemblies into my script. From old
>>> bulletin board messages I figured out that multiplex=1 would output the
>>> biological assembly as different states and objects. I worked out that
>>> cmd.group() would give a single object with multiple states. Then
>>> cmd.create() would make one object with one state. Unfortunately if you
>>> group a monomer with one state it gives you a selection of 0 atoms. There
>>> is a whole bunch of arithmetic on the back end of the script crashes with a
>>> divide by zero error for the monomeric ones. I thought I'd be smart and use
>>> count_states to build a conditional loop but I don't think I"m using it
>>> correctly because it isn't passing the multiple states into the loop.
>>>
>>> Is there some requirement that I'm missing or not seeing here?
>>>
>>> This might be easier to explain if I snip from scripts...
>>>
>>> #Outputs the monomers correctly but doesn't account for the biological
>>> assembly so I get false negatives
>>>
>>> cmd.set("all_states", 1)
>>> for file in glob("*.pdb1"):
>>>     cmd.load(file,'prot')
>>>     cmd.select('allLigands', "het and (not resn HOH)") etc.
>>>
>>> #Outputs the multimers correctly but gives a divide by zero error for
>>> the monomers
>>>
>>> cmd.set("all_states", 1)
>>> for file in glob("*.pdb1"):
>>>     cmd.load(file,'prot', multiplex =1)
>>>     cmd.group('ens', 'prot'+'*')
>>>     cmd.create('BA', 'ens')
>>>     cmd.select('allLigands', "het and (not resn HOH)") etc.
>>>
>>> #Outputs the monomers correctly but doesn't pass multimers into the
>>> conditional loop. I've also tried moving the cmd.group() before the if
>>> loop. That didn't work either.
>>>
>>> cmd.set("all_states", 1)
>>> for file in glob("*.pdb1"):
>>>     cmd.load(file,'prot', multiplex=1)
>>>     if cmd.count_states('prot') > 1:
>>>         cmd.group('ens', 'prot')
>>>         cmd.create('BA', 'ens')
>>>         cmd.delete('ens')
>>>     cmd.select('allLigands', "het and (not resn HOH)") etc.
>>>
>>> Any help would be appreciated. I swear this is the last time I'll bother
>>> you. Thanks again.
>>> Katherine
>>>
>>>
>>>
>>> --
>>> "Nil illegitimo carborundum"* - *Didactylos
>>>
>>>
>>> ------------------------------------------------------------------------------
>>> Rapidly troubleshoot problems before they affect your business. Most IT
>>> organizations don't have a clear picture of how application performance
>>> affects their revenue. With AppDynamics, you get 100% visibility into
>>> your
>>> Java,.NET, & PHP application. Start your 15-day FREE TRIAL of
>>> AppDynamics Pro!
>>>
>>> http://pubads.g.doubleclick.net/gampad/clk?id=84349831&iu=/4140/ostg.clktrk
>>> _______________________________________________
>>> 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.
>>
>>
>
>
> --
> "Nil illegitimo carborundum"* - *Didactylos
>



-- 
"Nil illegitimo carborundum"* - *Didactylos
------------------------------------------------------------------------------
Rapidly troubleshoot problems before they affect your business. Most IT 
organizations don't have a clear picture of how application performance 
affects their revenue. With AppDynamics, you get 100% visibility into your 
Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro!
http://pubads.g.doubleclick.net/gampad/clk?id=84349831&iu=/4140/ostg.clktrk
_______________________________________________
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

Reply via email to