[phenixbb] exclude clashes for non-symmetry contacts

Edwin Pozharski pozharskibb at gmail.com
Fri Nov 2 09:56:44 PDT 2018


Thanks - we could have an argument about what is "natural" here, but that's
philosophical.

The only option that works for me so far is to move the other model to the
neighboring unit cell and disable symmetry clashes.  As I said, it's an
ugly hack, but it seems to work.  I do run into further issues because omit
map calculation fails complaining about clashes, but that's a problem for
another day.

Problem with alternate conformer based approach is that it's pain to merge
the two models - by hand it would take too long, but I do have reasonable
coding abilities so I wrote a little tool that merges two pdb files into
one and marks models with altlocs.  However, phenix.refine fails when
trying to read my NCS definitions even though it appears to have validated
them just fine (see log file excerpt below).  Any suggestions - am I maybe
defining NCS groups wrong?

Validating user-supplied NCS groups...
  Validating:
ncs_group {
  reference = "altloc A"
  selection = "altloc B"
}
  OK. All atoms were included in validated selection.
 ...

==================== Process input NCS or/and find new NCS
====================

Number of NCS groups: 1

Traceback (most recent call last):
  File
"/ibbr/phenix-1.14-3228/build/../modules/phenix/phenix/command_line/refine.py",
line 11, in <module>
    command_line.run(command_name="phenix.refine", args=sys.argv[1:])
  File
"/ibbr/phenix-1.14-3228/modules/phenix/phenix/refinement/command_line.py",
line 106, in run
    log=log)
  File "/ibbr/phenix-1.14-3228/modules/phenix/phenix/refinement/driver.py",
line 450, in __init__
    ncs_groups_as_phil = iotbx.phil.parse(ncs_groups_str)
  File "/ibbr/phenix-1.14-3228/modules/cctbx_project/iotbx/phil.py", line
81, in parse
    process_includes=process_includes)
  File
"/ibbr/phenix-1.14-3228/modules/cctbx_project/libtbx/phil/__init__.py",
line 2178, in parse
    primary_parent_scope=result)
  File
"/ibbr/phenix-1.14-3228/modules/cctbx_project/libtbx/phil/parser.py", line
120, in collect_objects
    scope_extract_call_proxy_cache=scope_extract_call_proxy_cache)
  File
"/ibbr/phenix-1.14-3228/modules/cctbx_project/libtbx/phil/parser.py", line
134, in collect_objects
    words=collect_assigned_words(word_iterator, lead_word),
  File
"/ibbr/phenix-1.14-3228/modules/cctbx_project/libtbx/phil/parser.py", line
31, in collect_assigned_words
    str(lead_word), lead_word.where_str()))
RuntimeError: Missing value for selection (input line 3)


On Thu, Nov 1, 2018 at 7:50 PM Oleg Sobolev <osobolev at lbl.gov> wrote:

> Dear Edwin,
>
>
>> The alternative is probably to define the second orientation as an
>> alternative conformation.  Aside from aesthetic objections, I don't want to
>> lose the ability to restrain NCS - I need two orientations to be identical
>> structures, and I am not sure yet whether I can use NCS groups defined via
>> alternative conformers.
>>
>
> I think this would be the easiest way forward and it looks like a very
> natural use of alternative conformations. You can definitely define NCS
> groups and even automatic search works. I'm attaching a small dummy example
> I experimented on. Two overlapping helices: chain A with altloc A and
> occupancy 0.5, chain B with altloc B and occupancy 0.5. Nothing prevents
> you from defining NCS groups using "altloc A" and it should work, but I
> imagine there should always be equivalent selection in terms of "chain A".
>
> Best regards,
> Oleg Sobolev.
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://phenix-online.org/pipermail/phenixbb/attachments/20181102/acc0d825/attachment.htm>


More information about the phenixbb mailing list