-
Notifications
You must be signed in to change notification settings - Fork 82
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
Refactor selection of Myers' bitparallel edit distance algorithm. #3254
Merged
eseiler
merged 12 commits into
seqan:main
from
rrahn:refactor/dedicated_edit_distance_scoring_scheme
May 31, 2024
Merged
Refactor selection of Myers' bitparallel edit distance algorithm. #3254
eseiler
merged 12 commits into
seqan:main
from
rrahn:refactor/dedicated_edit_distance_scoring_scheme
May 31, 2024
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This scheme is alphabet agnostic and used to trigger the myers' bitparallel algorithm to compute the edit distance. It is a special case of the DP alignment algorithm where the score for a substitution is 0 if the characters are equal and -1 otherwise.
…eme which is implementation detail and actually not required by the scoring scheme concept.
…ure Myers' bitparallel edit distance computation. Now the edit distance is selected internally if the hamming scheme was used explicitly and if the gap scheme gives -1 for extending and 0 for opening a gap. The edit distance can now be used independent of the alphabet type and is not bound to seqans nucleotide scoring schemes. Since the recommended way to enable the fast bitparallel algorithm is to use the `align_cfg::edit_scheme` configuration element, the majority of user code should work without noticing the internal changes made to the configuration.
…rithm. It makes more sense to skip the runtime checks if the compiler already knows that no Myers' bitparallel edit distance cannot be used.
The latest updates on your projects. Learn more about Vercel for Git ↗︎
|
… algorithm. During configruation we check if the gap scheme is set and if not use the default gap scheme with `gap open = 0` and `gap extension = -1`. But this default gap scheme is ignored and was later set to -10 and -1 in the alignment gap policy. This commit fixes this, to keep the defaults consistent.
eseiler
requested changes
May 21, 2024
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good, only small stuff
seqan-actions
added
lint
[INTERNAL] signal for linting
and removed
lint
[INTERNAL] signal for linting
labels
May 28, 2024
Co-authored-by: Enrico Seiler <[email protected]>
rrahn
force-pushed
the
refactor/dedicated_edit_distance_scoring_scheme
branch
from
May 28, 2024 17:01
0b90d3a
to
267bd9b
Compare
seqan-actions
added
lint
[INTERNAL] signal for linting
and removed
lint
[INTERNAL] signal for linting
labels
May 28, 2024
rrahn
force-pushed
the
refactor/dedicated_edit_distance_scoring_scheme
branch
from
May 29, 2024 10:02
69350fd
to
267bd9b
Compare
seqan-actions
added
lint
[INTERNAL] signal for linting
and removed
lint
[INTERNAL] signal for linting
labels
May 29, 2024
eseiler
approved these changes
May 31, 2024
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR fixes #3253 by:
Due to these changes, users can select the Myers' bitparallel edit distance alignment computation independent of their alphabet types and thus are not forced to work with the nucelotide scoring scheme anymore, which did not allow to customize the alphabet type.
Since the bitparallel edit distance algorithm doesn't even read the values from the given scoring schemes, it makes only sense to enable it without specifying a dedicate scoring scheme anyway.
However, due to the existing configuration modes, too much API breakage would have been introduced if wanted to solve this by moving the bitparallel edit distance computation into its own configuration element.
With this solution the user won't see any difference to the old version, when sticking to the tuorials where we explicitly teach to use the dedicated
align_cfg::edit_scheme
shortcut.