diff --git a/format.c b/format.c index 15c1864e..764210a2 100644 --- a/format.c +++ b/format.c @@ -393,7 +393,7 @@ void mm_write_paf3(kstring_t *s, const mm_idx_t *mi, const mm_bseq1_t *t, const mm_sprintf_lite(s, "%d%c", r->p->cigar[k]>>4, MM_CIGAR_STR[r->p->cigar[k]&0xf]); } if (r->p && (opt_flag & (MM_F_OUT_CS|MM_F_OUT_DS|MM_F_OUT_MD))) - write_cs_ds_or_MD(km, s, mi, t, r, !(opt_flag&MM_F_OUT_CS_LONG), opt_flag&MM_F_OUT_MD, !!(opt_flag&MM_F_OUT_DS), 1, !!(opt_flag&MM_F_QSTRAND)); + write_cs_ds_or_MD(km, s, mi, t, r, !(opt_flag&MM_F_OUT_CS_LONG), !!(opt_flag&MM_F_OUT_MD), !!(opt_flag&MM_F_OUT_DS), 1, !!(opt_flag&MM_F_QSTRAND)); if ((opt_flag & MM_F_COPY_COMMENT) && t->comment) mm_sprintf_lite(s, "\t%s", t->comment); } diff --git a/lchain.c b/lchain.c index d20aa3ab..07d7ef80 100644 --- a/lchain.c +++ b/lchain.c @@ -282,7 +282,7 @@ mm128_t *mg_lchain_rmq(int max_dist, int max_dist_inner, int bw, int max_chn_ski int64_t j; for (j = i0; j < i; ++j) { q = kmp_alloc_rmq(mp); - q->y = (int32_t)a[j].y, q->i = j, q->pri = -(f[j] + 0.25 * chn_pen_gap * ((int32_t)a[j].x + (int32_t)a[j].y)); + q->y = (int32_t)a[j].y, q->i = j, q->pri = -(f[j] + 0.5 * chn_pen_gap * ((int32_t)a[j].x + (int32_t)a[j].y)); krmq_insert(lc_elem, &root, q, 0); if (max_dist_inner > 0) { r = kmp_alloc_rmq(mp); diff --git a/minimap.h b/minimap.h index 8eaa1ce7..c795d123 100644 --- a/minimap.h +++ b/minimap.h @@ -5,7 +5,7 @@ #include #include -#define MM_VERSION "2.27-r1207-dirty" +#define MM_VERSION "2.27-r1208-dirty" #define MM_F_NO_DIAG (0x001LL) // no exact diagonal hit #define MM_F_NO_DUAL (0x002LL) // skip pairs where query name is lexicographically larger than target name diff --git a/minimap2.1 b/minimap2.1 index aa674d19..4ceee1ee 100644 --- a/minimap2.1 +++ b/minimap2.1 @@ -268,6 +268,11 @@ or more of the shorter chain [0.5] Use the minigraph chaining algorithm [no]. The minigraph algorithm is better for aligning contigs through long INDELs. .TP +.BI --rmq-inner \ NUM +Apply full dynamic programming for anchors within distance +.I NUM +[1000]. +.TP .B --hard-mask-level Honor option .B -M