From ec31ae86b97e9ee0922885e1627c5531f5345020 Mon Sep 17 00:00:00 2001 From: Eric Coissac Date: Fri, 24 Nov 2023 10:57:10 +0100 Subject: [PATCH] Adds some stats in obiparing about fast align results Former-commit-id: 44f6d6538e759dd7dc1db068a812957f6b20f50d --- pkg/obialign/pairedendalign.go | 4 ++-- pkg/obitools/obipairing/pairing.go | 5 +++-- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/pkg/obialign/pairedendalign.go b/pkg/obialign/pairedendalign.go index dcc2328..a481ade 100644 --- a/pkg/obialign/pairedendalign.go +++ b/pkg/obialign/pairedendalign.go @@ -352,7 +352,7 @@ func PERightAlign(seqA, seqB *obiseq.BioSequence, gap float64, func PEAlign(seqA, seqB *obiseq.BioSequence, gap float64, delta int, - arena PEAlignArena) (int, []int) { + arena PEAlignArena) (int, []int, int, int) { var score, shift int var startA, startB int var partLen, over int @@ -467,5 +467,5 @@ func PEAlign(seqA, seqB *obiseq.BioSequence, arena.pointer.path = append(arena.pointer.path, extra3, 0) } - return score, arena.pointer.path + return score, arena.pointer.path, fastScore, over } diff --git a/pkg/obitools/obipairing/pairing.go b/pkg/obitools/obipairing/pairing.go index f1ecf93..9d41fba 100644 --- a/pkg/obitools/obipairing/pairing.go +++ b/pkg/obitools/obipairing/pairing.go @@ -108,7 +108,7 @@ func AssemblePESequences(seqA, seqB *obiseq.BioSequence, inplace bool, arenaAlign obialign.PEAlignArena) *obiseq.BioSequence { - score, path := obialign.PEAlign(seqA, seqB, gap, delta, arenaAlign) + score, path, fastscore, over := obialign.PEAlign(seqA, seqB, gap, delta, arenaAlign) cons, match := obialign.BuildQualityConsensus(seqA, seqB, path, true) left := path[0] @@ -123,6 +123,8 @@ func AssemblePESequences(seqA, seqB *obiseq.BioSequence, identity = 0 } annot := cons.Annotations() + annot["paring_fast_score"] = fastscore + annot["paring_fast_overlap"] = over if aliLength >= minOverlap && identity >= minIdentity { annot["mode"] = "alignment" @@ -216,7 +218,6 @@ func IAssemblePESequencesBatch(iterator obiiter.IBioSequence, nworkers = sizes[0] } - newIter := obiiter.MakeIBioSequence() newIter.Add(nworkers)