diff --git a/README.md b/README.md index da6fcc5..e98e352 100644 --- a/README.md +++ b/README.md @@ -27,7 +27,8 @@ Minimap2 is the successor of [minimap][minimap]. It uses a similar minimizer-based indexing and seeding algorithm, and improves the original minimap with homopolyer-compressed k-mers (see also [SMARTdenovo][smartdenovo] and [longISLND][longislnd]), better chaining and the ability to produce CIGAR -with fast extension alignment (see also [libgaba][gaba] and [ksw2][ksw2]). +with fast extension alignment (see also [libgaba][gaba] and [ksw2][ksw2]) and +two-piece affine gap cost. ## Limitations diff --git a/main.c b/main.c index 0b62d0b..b19da7a 100644 --- a/main.c +++ b/main.c @@ -10,7 +10,7 @@ #include "minimap.h" #include "mmpriv.h" -#define MM_VERSION "2.0-r178-pre" +#define MM_VERSION "2.0-r179-pre" void liftrlimit() { @@ -135,8 +135,14 @@ int main(int argc, char *argv[]) is_hpc = 1, k = 19, w = 5; } else if (strcmp(optarg, "map10k") == 0) { is_hpc = 1, k = 19; - } else if (strcmp(optarg, "asm1m") == 0) { + } else if (strcmp(optarg, "asm5") == 0) { k = 19, w = 19; + opt.a = 1, opt.b = 19, opt.q = 39, opt.q2 = 61, opt.e = 2, opt.e2 = 1; + opt.min_dp_max = 200; + } else if (strcmp(optarg, "asm10") == 0) { + k = 19, w = 19; + opt.a = 1, opt.b = 9, opt.q = 16, opt.q2 = 41, opt.e = 2, opt.e2 = 1; + opt.min_dp_max = 200; } else { fprintf(stderr, "[E::%s] unknown preset '%s'\n", __func__, optarg); return 1; @@ -168,7 +174,8 @@ int main(int argc, char *argv[]) fprintf(stderr, " ava-pb: -Hk19 -w5 -Xp0 -m100 -g10000 -K500m --max-chain-skip 25 (PacBio read overlap)\n"); fprintf(stderr, " ava-ont: -k15 -w5 -Xp0 -m100 -g10000 -K500m --max-chain-skip 25 (ONT read overlap)\n"); fprintf(stderr, " map10k: -Hk19 (PacBio/ONT vs reference mapping)\n"); - fprintf(stderr, " asm1m: -k19 -w19 (intra-species assembly to ref mapping)\n"); + fprintf(stderr, " asm5: -k19 -w19 -A1 -B19 -O39,61 -E2,1 -s200 (assembly to ref mapping; break at 5%% div.)\n"); + fprintf(stderr, " asm10: -k19 -w19 -A1 -B9 -O16,41 -E2,1 -s200 (assembly to ref mapping; break at 10%% div.)\n"); fprintf(stderr, " Alignment:\n"); fprintf(stderr, " -A INT matching score [%d]\n", opt.a); fprintf(stderr, " -B INT mismatch penalty [%d]\n", opt.b); diff --git a/minimap2.1 b/minimap2.1 index a65bfa5..4e60b22 100644 --- a/minimap2.1 +++ b/minimap2.1 @@ -183,8 +183,14 @@ Oxford Nanopore all-vs-all overlap mapping (-k15 -w5 -Xp0 -m100 -K500m -g10000 - .B map10k PacBio/Oxford Nanopore read to reference mapping (-Hk19) .TP -.B asm1m -Long assembly to reference mapping (-k19 -w19) +.B asm5 +Long assembly to reference mapping (-k19 -w19 -A1 -B19 -O39,61 -E2,1 -s200). +Typically, the alignment will not extend to regions with 5% or higher sequence +divergence. Only use this preset if the average divergence is far below 5%. +.TP +.B asm10 +Long assembly to reference mapping (-k19 -w19 -A1 -B9 -O16,41 -E2,1 -s200). Up +to 10% sequence divergence. .RE .TP .BI --max-chain-skip \ INT