FU Logo
  • Startseite
  • Kontakt
  • Impressum
  • Home
  • Listenauswahl
  • Anleitungen

Re: [Seqan-dev] Two Alignment Questions

<-- thread -->
<-- date -->
  • From: Rahn, René <rene.maerker@fu-berlin.de>
  • To: SeqAn Development <seqan-dev@lists.fu-berlin.de>
  • Date: Fri, 09 Jan 2015 09:51:29 +0100
  • Reply-to: SeqAn Development <seqan-dev@lists.fu-berlin.de>
  • Subject: Re: [Seqan-dev] Two Alignment Questions

Hey Brett, 


On 30 Dec 2014, at 21:29, Brett Bowman <bnbowman@gmail.com> wrote:

1)  Is there an easy way to get the accuracy of an Alignment object, or is that something I need to calculate myself?

What do you mean by accuracy? What do you need exactly? 
The Align data structure simply represents the computed alignment. The score is returned by the global align interface. 
There are several ways to manipulate the alignment of gaps and to compute all best traceback paths. However, those options are not supported on the high level interfaces but only in the core of the alignment engine. 
If you tell me what you need exactly we can think of a way to make those interfaces public which is planned for the future anyway.
But there is no method telling you the accuracy of the “computed" alignment compared to another “real” alignment. Please, give me some specifics and we see if we can incorporate this.
...
Well, there is a method in the tool seqan-tcoffee, which checks if the computed alignment is correct given the score model and the alignment, but I believe this is not what you are looking for?


2)  bandedChainAlignment fails messily when given a Vector of Seeds instead of a String, where as other functions work fine (e.g. chainSeedsGlobally).  Why does it work for the one and not the other?  Excerpt from error message below.

"""
/usr/include/seqan/seeds/banded_chain_alignment_impl.h:1195:57: error: call to 'end' is ambiguous
    SEQAN_ASSERT(itEnd != static_cast<TSeedSetIterator>(end(seedSet)));
                                                        ^~~
/usr/include/seqan/basic/debug_test_system.h:2146:44: note: expanded from macro 'SEQAN_ASSERT'
                                          (_arg1), # _arg1)) {           \
                                           ^
/usr/include/seqan/seeds/banded_chain_alignment_profile.h:254:16: note: in instantiation of function template specialization

...

/usr/include/seqan/seeds/banded_chain_alignment.h:207:12: note: in instantiation of function template specialization
      'seqan::bandedChainAlignment<seqan::String<seqan::SimpleType<unsigned char, seqan::Dna5_>, seqan::Alloc<void> >, seqan::Tag<seqan::ArrayGaps_>,
      std::vector<seqan::Seed<seqan::Tag<seqan::Simple_>, seqan::DefaultSeedConfig>, std::allocator<seqan::Seed<seqan::Tag<seqan::Simple_>, seqan::DefaultSeedConfig> > >, long,
      seqan::Tag<seqan::Simple_>, seqan::Tag<seqan::Simple_>, false, false, false, false, seqan::Tag<seqan::Default_> >' requested here
    return bandedChainAlignment(align, seedSet, scoreScheme, scoreScheme, alignConfig, bandExtension);
           ^
/home/bbowman/git/SRSLI/src/C++/SparseAlignment2.cpp:72:25: note: in instantiation of function template specialization
      'seqan::bandedChainAlignment<seqan::String<seqan::SimpleType<unsigned char, seqan::Dna5_>, seqan::Alloc<void> >, seqan::Tag<seqan::ArrayGaps_>,
      std::vector<seqan::Seed<seqan::Tag<seqan::Simple_>, seqan::DefaultSeedConfig>, std::allocator<seqan::Seed<seqan::Tag<seqan::Simple_>, seqan::DefaultSeedConfig> > >, long,
      seqan::Tag<seqan::Simple_>, false, false, false, false, seqan::Tag<seqan::Default_> >' requested here
        long alnScore = bandedChainAlignment(alignment, *seedChain, scoring, globalConfig);
                        ^
/home/bbowman/git/SRSLI/src/C++/main.cpp:95:27: note: in instantiation of function template specialization 'RefChainsToAlignments<seqan::AlignConfig<false, true, true, false,
      seqan::Tag<seqan::Default_> > ()>' requested here
        auto alignments = RefChainsToAlignments(record->Seq,
                          ^
/usr/include/seqan/seeds/banded_chain_alignment_impl.h:583:1: note: candidate template ignored: substitution failure [with TSeedSet = std::vector<seqan::Seed<seqan::Tag<seqan::Simple_>,
      seqan::DefaultSeedConfig>, std::allocator<seqan::Seed<seqan::Tag<seqan::Simple_>, seqan::DefaultSeedConfig> > >]
_findFirstAnchor(TSeedSet const & seedSet, int bandExtension)
"”" 

Ok, this seems to be a bug to me.
I’ll have a look into it.


Sincerely,
-Brett
_______________________________________________
seqan-dev mailing list
seqan-dev@lists.fu-berlin.de
https://lists.fu-berlin.de/listinfo/seqan-dev

Bests, 

René 

---

René Rahn
Ph.D. Student
--------------------------------
Tel:  (+49) 30 838 75277
Mail: rene.rahn@fu-berlin.de
--------------------------------
Institute of Computer Science
Algorithmic Bioinformatics (ABI)
--------------------------------
Freie Universität Berlin
Takustraße 9
14195 Berlin
--------------------------------

<-- thread -->
<-- date -->
  • Follow-Ups:
    • Re: [Seqan-dev] Two Alignment Questions
      • From: Brett Bowman <bnbowman@gmail.com>
  • seqan-dev - January 2015 - Archives indexes sorted by:
    [ thread ] [ subject ] [ author ] [ date ]
  • Complete archive of the seqan-dev mailing list
  • More info on this list...

Hilfe

  • FAQ
  • Dienstbeschreibung
  • ZEDAT Beratung
  • postmaster@lists.fu-berlin.de

Service-Navigation

  • Startseite
  • Listenauswahl

Einrichtung Mailingliste

  • ZEDAT-Portal
  • Mailinglisten Portal