Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Secondary Structure Support #336

Merged
merged 24 commits into from Oct 15, 2015
Merged

Secondary Structure Support #336

merged 24 commits into from Oct 15, 2015

Conversation

@lafita
Copy link
Member

@lafita lafita commented Oct 14, 2015

This pull request contains all the methods and data structures implemented to support secondary structure assignment and prediction for proteins #112. To summarize in points, the new features are:

  • DSSP implementation: predicts "the novo" the secondary structure of a BioJava Structure object and assigns the SS types accordingly to each Group.
  • DSSP file format Parser: is able to read a DSSP output format file and convert it to the BioJava DS, from where it can be assigned to the corresponding Structure. The parser can also fetch the DSSP files from the PDB webpage automatically, or it can read files providing a file path. All the DS in BioJava that store SS information are able to write the results in the DSSP file format, so that they can be stored as a DSSP file and parsed again later.
  • Secondary Structure Elements: the SSE can be retrieved from a structure with a simple method, once the Structure has been assigned the SS types. This is useful for counting the number of SSE, or defining the overall structure, for example.
  • SS storage: the secondary structure was only possible in AminoAcids. From this pull request on, the SS is stored in the Group's properties, so that modified aminoacids (that are Hetatoms) can also be assigned a SS type. The storage of SS information is done in two layers: a cheap version, that only stores the type of SS of the residue, and an optional extensive version, that stores all the information about hydrogen bonds, bridge partners, energies, etc.
  • Assignment of SS: there are three types of assignments of SS. Authors assignment (coming from the PDB or mmCIF file), DSSP assignment (coming from a DSSP output file) and BioJava assignment, when the SS was assigned with the BioJava implementation. Although there are no differences in the output between DSSP and BioJava assignments, the BioJava implementation could include some parameters in the future to customize the SS assignment with the user needs, so it is worth making a distinction.
lafita added 24 commits Sep 21, 2015
Related to discussion of symmetry representation #220
The SS is stored in any Group as a Group propery. This allows the
storage of SS in any group, even if it is not an AminoAcid instance but
has backbone amino atoms.
It retrieves the properties used by BioJava only.
The ladder assignment and extension was not properly done
They are now failing, because BioJava implementation does not match
exactly the DSSP implementation.
Helices were one residue too large at the extremes and turns were not
assigned correctly.
The bond is always tested from acceptor (CO) to donor (NH)
Conflicts:
	biojava-structure/src/main/java/org/biojava/nbio/structure/StructureTools.java
	biojava-structure/src/main/java/org/biojava/nbio/structure/io/PDBFileParser.java
andreasprlic added a commit that referenced this pull request Oct 15, 2015
Secondary Structure Support
@andreasprlic andreasprlic merged commit db6bf86 into biojava:master Oct 15, 2015
1 check passed
1 check passed
continuous-integration/travis-ci/pr The Travis CI build passed
Details
@lafita lafita deleted the lafita:secstruc branch Sep 28, 2016
@lafita lafita added this to the BioJava 5.0.0 milestone Mar 22, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked issues

Successfully merging this pull request may close these issues.

None yet

2 participants
You can’t perform that action at this time.