ABPOA(1)

πŸ“¦
version 1.5.5 Β· 3 versions
, in ubuntu resolute, ubuntu stonking

✨ ABPOA(1) β€” User Commands ✨

Okay bestie, let's talk about abPOA πŸ’– (the manual name is abpoa, and it also shows up as abpoa.avx2, abpoa.avx, abpoa.sse4.1, abpoa.ssse3, abpoa.sse3, and abpoa.generic πŸ¦‹).

🌸 NAME

abpoa, abpoa.avx2, abpoa.avx, abpoa.sse4.1, abpoa.ssse3, abpoa.sse3, abpoa.generic β€” adaptive banded Partial Order Alignment ✨

πŸŽ€ SYNOPSIS

abpoa [options] <in.fa/fq> > cons.fa/msa.fa/abpoa.gfa

πŸ’… DESCRIPTION

So abPOA is an extended version of Partial Order Alignment (POA) that does adaptive banded dynamic programming (DP) with an SIMD implementation πŸ”₯. It can run multiple sequence alignment (MSA) on a set of input sequences, then make a consensus sequence by applying the heaviest bundling algorithm to the final alignment graph πŸ‘‘.

Lowkey iconic: it can make high-quality consensus sequences from error-prone long reads and is way faster than existing tools πŸš€πŸ’œ.

It supports three alignment modes (global, local, extension) and flexible scoring schemes that allow linear, affine and convex gap penalties 🧚. It currently supports SSE2/SSE4.1/AVX2 vectorization πŸ’–.


πŸ¦‹ OPTIONS

✨ Alignment ✨

  • -m, --aln-mode β€” alignment mode, an INT, default 0 🌈. 0 is global, 1 is local, 2 is extension.
  • -M, --match β€” match score, an INT, default 2 πŸ’–.
  • -X, --mismatch β€” mismatch penalty, an INT, default 4 πŸ™ˆ.
  • -t, --matrix β€” scoring matrix file, a FILE, default Null πŸ“. -M and -X are not used when -t is used. Examples: HOXD70.mtx, BLOSUM62.mtx.
  • -O, --gap-open β€” gap opening penalty (O1,O2), an INT(,INT), default 4,24 πŸ”₯.
  • -E, --gap-ext β€” gap extension penalty (E1,E2), an INT(,INT), default 2,1 πŸ’…. abPOA has three gap penalty modes, where the cost of a g-long gap is:
    • convex (default): min{O1+g*E1, O2+g*E2}
    • affine (set O2 as 0): O1+g*E1
    • linear (set O1 as 0): g*E1
  • -s, --amb-strand β€” ambiguous strand mode, default False 🧚. For each input sequence, it tries the reverse complement if the current alignment score is too low, then picks whichever strand has the higher score πŸ¦‹.

✨ Adaptive banded DP ✨

  • -b, --extra-b β€” first adaptive banding parameter, an INT, default 10 🌸. Set b to a value < 0 to disable adaptive banded DP πŸ™…β€β™€οΈ.
  • -f, --extra-f β€” second adaptive banding parameter, a FLOAT, default 0.01 🫢. The number of extra bases added on both sides of the band is b+f*L, where L is the length of the aligned sequence.

✨ Heuristics for graph alignment (under development) ✨

  • -G, --int-path-score β€” include log-scaled path score for graph alignment, default False 🌈.
  • -L, --sort-by-len β€” sort input sequences by length in descending order, default False πŸ’œ.
  • -R, --gap-on-right β€” put indels on the right-most side of the alignment (the default is left), default False πŸ¦‹.
  • -J, --gap-at-end β€” always put indels at the end of the alignment if possible, default False ✨.

✨ Minimizer-based seeding and partition (only effective in global alignment mode) ✨

  • -S, --seeding β€” enable minimizer-based seeding and anchoring, default False πŸŽ€.
  • -k, --k-mer β€” minimizer k-mer size, an INT, default 19 🧚.
  • -w, --window β€” minimizer window size, an INT, default 10 🌸.
  • -n, --min-poa-win β€” min. size of window to perform POA, an INT, default 500 πŸ’–.
  • -p, --progressive β€” build a guide tree and perform progressive partial order alignment, default False πŸ‘‘.

✨ Input/Output ✨

  • -Q, --use-qual-weight β€” take the base quality score from a FASTQ input file as the graph edge weight for consensus calling, default False πŸ”₯. This is only effective when input sequences are in FASTQ format and consensus calling uses heaviest bundling.
  • -c, --amino-acid β€” input sequences are amino acid (the default is nucleotide), default False 🧬.
  • -l, --in-list β€” input file is a list of sequence file names, default False πŸ“‹. Each line is one sequence file containing a set of sequences, which abPOA will align to generate a consensus sequence 🫢.
  • -i, --incrmnt β€” incrementally align sequences to an existing graph or MSA, a FILE, default Null πŸ¦‹. The graph can be in GFA or MSA format generated by abPOA.
  • -o, --output β€” output to FILE, default stdout πŸ’Œ.
  • -r, --result β€” output result mode, an INT, default 0 🌈. The modes are:
    • 0: consensus in FASTA format
    • 1: MSA in PIR format
    • 2: both 0 & 1
    • 3: graph in GFA format
    • 4: graph with consensus path in GFA format
    • 5: consensus in FASTQ format
  • -a, --cons-algrm β€” consensus algorithm, an INT, default 0 πŸ’…. The options are:
    • 0: heaviest bundling path in partial order graph
    • 1: most frequent bases at each position
  • -d, --maxnum-cons β€” max. number of consensus sequences to generate, an INT, default 1 πŸ‘―β€β™€οΈ.
  • -q, --min-freq β€” min. frequency of each consensus sequence (only effective when -d/--num-cons > 1), a FLOAT, default 0.25 🌷.
  • -g, --out-pog β€” dump final alignment graph to FILE (.pdf/.png), default Null πŸ“Έ.
  • -h, --help β€” print this help usage information πŸ†˜.
  • -v, --version β€” show version number πŸ”’.
  • -V, --verbose β€” verbose level, an INT, default 0 πŸ—£οΈ. 0 is none, 1 is information, 2 is debug.

🌈 SEE ALSO

For more information, please refer to the paper published in Bioinformatics πŸ“–:

https://dx.doi.org/10.1093/bioinformatics/btaa963


Bye bestie, that's the whole tea β˜•πŸ’– β€” abpoa 1.5.5, November 2025, ABPOA(1) 🫢✨

πŸ“¦ where this page comes from