Skip to content

Fixes on optimization of subunit clusterer for quaternary sym detection of PDB deposited structures #859

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

Merged
merged 11 commits into from
Jan 25, 2020
Prev Previous commit
Docs
  • Loading branch information
josemduarte committed Jan 23, 2020
commit f779dc3d32958ca5a717a40129f73c20acca47b7
Original file line number Diff line number Diff line change
Expand Up @@ -398,7 +398,6 @@ public void testSymDetectionWithClusteringByEntityId() throws IOException, Struc
/**
* A performance test that demonstrates how the SubunitClustererParameters.setUseEntityIdForSeqIdentityDetermination()
* has a dramatic effect in runtime versus doing alignments.
* This takes minutes with the parameter on, but hours without the parameter.
*/
@Ignore("This is a performance test to be run manually")
@Test
Expand All @@ -413,14 +412,20 @@ public void testSymDetectionPerformanceLargeCapsid() throws IOException, Structu
StructureIO.setAtomCache(cache);

// making sure we remove all atoms but representative before we expand, otherwise memory requirements are huge
// 6Q1F is another good example
Structure au = StructureIO.getStructure("6NHJ");
StructureTools.reduceToRepresentativeAtoms(au);
BiologicalAssemblyBuilder builder = new BiologicalAssemblyBuilder();
List<BiologicalAssemblyTransformation> transforms = au.getPDBHeader().getBioAssemblies().get(1).getTransforms();
Structure pdb =builder.rebuildQuaternaryStructure(au, transforms, true, false);
Structure pdb = builder.rebuildQuaternaryStructure(au, transforms, true, false);

SubunitClustererParameters cp = new SubunitClustererParameters();
cp.setUseEntityIdForSeqIdentityDetermination(true); // this is the parameter that makes this fast

// This is the parameter that makes this fast, set it to false to see the difference.
// As of git commit ed322e387cd46344a7864a, the difference in runtime is not that huge:
// 2 minutes with true, 10 minutes with false. I observed a much larger difference before, but can't reproduce anymore - JD 2020-01-23
cp.setUseEntityIdForSeqIdentityDetermination(true);

cp.setClustererMethod(SubunitClustererMethod.SEQUENCE);
QuatSymmetryParameters symmParams = new QuatSymmetryParameters();
QuatSymmetryResults symmetry = QuatSymmetryDetector.calcGlobalSymmetry(
Expand Down
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy