r171: reduced log gap cost at chaining

The cost is so large that it discards too many valid seeds without HPC k-mers.
This change may introduce false long gaps to reference mapping. We have another
mechanism mm_filter_bad_seeds() to protect against this. In addition, minimap2
is not that bad to have long gaps. Some other aligners are worse.

Still need tuning in future.
This commit is contained in:
Heng Li 2017-07-11 14:57:49 -04:00
parent 826c8ba892
commit 7598809577
2 changed files with 2 additions and 2 deletions

View File

@ -51,7 +51,7 @@ int mm_chain_dp(int max_dist, int bw, int max_skip, int min_cnt, int min_sc, int
if (dd > bw) continue;
min_d = dq < dr? dq : dr;
sc = min_d > q_span? q_span : dq < dr? dq : dr;
sc -= dd? ilog2_32(dd) * 4 : 0;
sc -= dd? ilog2_32(dd) * 2 : 0;
if (min_d > q_span) sc -= ilog2_32(min_d) / 2;
sc += f[j];
if (sc > max_f) max_f = sc, max_j = j;

2
main.c
View File

@ -10,7 +10,7 @@
#include "minimap.h"
#include "mmpriv.h"
#define MM_VERSION "2.0-r170-pre"
#define MM_VERSION "2.0-r171-pre"
void liftrlimit()
{