Pre-processing tools like AfterQC and fastp can perform adapter clipping leaving both reads in a pair identical. This leads them to be mapped at the same location by aln, leading to (v).x == (u).x in the code below. The proposed change allows sampe to flag these as mapped in the proper pair.
Using some test data, this is a distribution of fragment lengths, pre-processed using fastp, mapped with aln and paired with sampe using the original code. Blue indicates mapped in proper pair (0x2 True) and red indicated otherwise (0x2 False).
This is the same distribution with the proposed change:
Pre-processing tools like AfterQC and fastp can perform adapter clipping leaving both reads in a pair identical. This leads them to be mapped at the same location by
aln
, leading to(v).x == (u).x
in the code below. The proposed change allowssampe
to flag these as mapped in the proper pair.Using some test data, this is a distribution of fragment lengths, pre-processed using fastp, mapped with
aln
and paired withsampe
using the original code. Blue indicates mapped in proper pair (0x2 True) and red indicated otherwise (0x2 False).This is the same distribution with the proposed change:
Thanks, Andre