Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Add standard documented way how to reduce structure to a subset of chains #1003

@rdk

Description

@rdk

...while setting all the metadata consistently and handling ligands intuitively (i.e. keeping the adjacent/bound ligands in).

The closest approximation of this functionality can be done via new StructureName("4hhb.A").reduce(structure), but:

  1. It is limited to a single chain in implementation and in the name format (this is the main concern),
  2. It is not clear if and how it works with structure files that don't have a pdb id (homology models, AlphaFold models, "bare" pdb files with just ATOM/HETATM records),
  3. This functionality is quite hidden. Adding a more visible method, for example to StructureTools, would go a long way.

Some context to the point 3.: In version 5.4 there used to be a method Structure getReducedStructure(Structure s, String chainId) in StructureTools (also limited to a single chain), but it was removed in favor of using StructureIdentifier/StructureName framework. However, this use is not documented (except in the tests, see TestStructureName.java) and furthermore it doesn't seem very intuitive to look into class called StructureName if I want to manipulate a structure's content.

The implementation of the method getReducedStructure() in version 5.4 shows that the process is quite involved and that it is easy to get it wrong if it is left for the users of the library.

If you decide to add this functionality, I'm happy to help with implementation/testing.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions