Class DynamicProgrammingAll
java.lang.Object
pl.poznan.put.structure.pseudoknots.dp.DynamicProgrammingAll
- All Implemented Interfaces:
PseudoknotFinder
- Direct Known Subclasses:
ImmutableDynamicProgrammingAll
Java implementation of OPT ALL algorithm as presented in: Smit, S. et al., 2008. From knotted to
nested RNA structures: A variety of computational methods for pseudoknot removal. RNA, 14,
pp.410–416.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionfinal List<pl.poznan.put.structure.pseudoknots.dp.SubSolution>
findOptimalSolutions
(ConflictClique conflictClique) findPseudoknots
(BpSeq bpSeq) Finds pseudoknots in BPSEQ data.protected int
protected abstract Optional<RegionRemover>
-
Constructor Details
-
DynamicProgrammingAll
public DynamicProgrammingAll()
-
-
Method Details
-
regionRemover
- Returns:
- An optional region remover to be used if a clique size exceeds
maxCliqueSize()
.
-
findOptimalSolutions
public final List<pl.poznan.put.structure.pseudoknots.dp.SubSolution> findOptimalSolutions(ConflictClique conflictClique) -
findPseudoknots
Description copied from interface:PseudoknotFinder
Finds pseudoknots in BPSEQ data. Pseudoknots are defined here as BPSEQ entries which if removed will make the RNA secondary structure fully nested. There may be many subsets of pairs considered pseudoknots for a single BPSEQ input.- Specified by:
findPseudoknots
in interfacePseudoknotFinder
- Parameters:
bpSeq
- An input BPSEQ structure with all pairs.- Returns:
- A list of BPSEQ structures where each contains only pairs considered to be pseudoknots. Each BPSEQ is a full copy of original one, but contains zeroed 'pair' columns for entries which are non-pseudoknots.
-
maxCliqueSize
@Default protected int maxCliqueSize()- Returns:
- The maximum number of conflicts allowed to be in the clique. The algorithm slows down very much when the cliques are getting bigger, so it is advisable to use a heuristic to remove a single regions and decrease clique size significantly.
-