From 7a63b46876f4bebcf7615db683b6593ac99e271e Mon Sep 17 00:00:00 2001 From: Heng Li Date: Fri, 18 Oct 2024 11:11:13 -0400 Subject: [PATCH] Release ropebwt3-3.8 (r248) --- NEWS.md | 19 ++++++++++++++++++ main.c | 2 +- tex/ropebwt3.tex | 52 ++++++++++++++++++++++++------------------------ 3 files changed, 46 insertions(+), 27 deletions(-) diff --git a/NEWS.md b/NEWS.md index 1097197..5170964 100644 --- a/NEWS.md +++ b/NEWS.md @@ -1,3 +1,22 @@ +Release 3.8-r248 (18 October 2024) +---------------------------------- + +Notable changes: + + * Improvement: a faster algorithm to locate a subset of positions in a suffix + array interval. Given m highly similar genomes, the expected time is O(s/m) + where s is the suffix array sample rate. + + * New feature: added option `mem -p` to optionally output a semi-random subset + of SMEM positions. + + * New feature: added auxiliary script `rb3tools.js` for generating mappability + filter and for simple SNP calling. + +(3.8: 18 October 2024, r248) + + + Release 3.7-r226 (17 September 2024) ------------------------------------ diff --git a/main.c b/main.c index c6b3e1f..3ff5ba9 100644 --- a/main.c +++ b/main.c @@ -5,7 +5,7 @@ #include "io.h" #include "ketopt.h" -#define RB3_VERSION "3.7-r247-dirty" +#define RB3_VERSION "3.7-r248" int main_build(int argc, char *argv[]); int main_merge(int argc, char *argv[]); diff --git a/tex/ropebwt3.tex b/tex/ropebwt3.tex index 3286dae..16960c6 100644 --- a/tex/ropebwt3.tex +++ b/tex/ropebwt3.tex @@ -210,32 +210,32 @@ \subsection{Basic concepts} {\bf (c)} The prefix directed acyclic word graph (DAWG) of $T$ by merging nodes with identical suffix array intervals.}\label{fig:1} \end{figure} -\begin{algorithm}[tb] - \caption{A naive bwa-aln algorithm with PSSM}\label{algo:bwa-aln} - \begin{algorithmic}[1] - \Procedure{BwaAlnPSSM}{$B,P,s,g$}\Comment{$g$ is gap penalty} - \State $H\gets\mbox{empty heap prioritized on the 1st value}$ - \State $H.{\rm push}(0,|P|,0,|T|)$ - \While{$H$ is not empty} - \State $(p,i,l,h)\gets H.{\rm pop}()$\Comment{element with the smallest $p$} - \If{$i=0$} - \State \Return $[l,h)$\Comment{this is the best match} - \EndIf - \State $H.{\rm push}(p+g_{i-1},i-1,l,h)$\Comment{insertion} - \State $a\gets P[i-1]$ - \For{$c\in\Sigma$}\Comment{match, mismatch or deletion} - \State $l'\gets C_B(c)+{\rm rank}_B(c,l)$\Comment{backward search} - \State $h'\gets C_B(c)+{\rm rank}_B(c,h)$ - \If{$l'