LASTAL(1)

🌸 NAME 🌸

lastal β€” genome-scale comparison of biological sequences πŸ’– (the page you're reading is LASTAL(1), filed under User Commands, bestie, in case you were wondering 🫢)


✨ SYNOPSIS ✨

lastal-plain [options] lastdb-name fasta-sequence-file(s)

πŸ¦‹ DESCRIPTION πŸ¦‹

Find and align similar sequences. That's it, that's the whole assignment β€” you hand it a lastdb-name and some fasta-sequence-file(s), and it goes and finds the similar ones and lines them up. Iconic behaviour, no notes. πŸ‘‘


πŸŽ€ Cosmetic options:

The little settings that decide how lastal presents and talks. Slay.

  • -h, --help β€” shows you literally every single option plus the default settings each one ships with, then peaces out. πŸ‘‹
  • -V, --version β€” prints version info and exits. Short and sweet.
  • -v β€” be verbose: it writes messages about what lastal is doing while it's doing it. Yapper mode, lovingly.
  • -2 β€” paired query sequences. 🫢
  • -f β€” output format, aka pick your aesthetic: TAB, MAF, BlastTab, BlastTab+ (default: MAF)

πŸ’œ E-value options (default settings):

  • -D β€” query letters per random alignment (default: 1e+06)
  • -H β€” expected total number of random alignments for all the sequences
  • -E β€” max EG2: expected number of random alignments per square giga

πŸ”₯ Score options (default settings):

This is where you tune the scoring, and there are a lot of knobs. We're tuning them all, fr fr.

  • -r β€” match score (2 if -M, else 1)
  • -q β€” mismatch cost (3 if -M, else 1)
  • -p β€” match/mismatch score matrix (DNA-DNA: HUMSUM, protein-protein: BLOSUM62, DNA-protein: BLOSUM80)
  • -X β€” where N/X is ambiguous: 0=neither sequence, 1=reference, 2=query, 3=both (0)
  • -a β€” gap existence cost (24 if HUMSUM, else 11 if protein reference, else 7)
  • -b β€” gap extension cost (1 if HUMSUM, else 2 if protein reference, else 1)
  • -A β€” insertion existence cost (a)
  • -B β€” insertion extension cost (b)
  • -c β€” unaligned residue pair cost (off)
  • -F β€” frameshift cost(s) (off)
  • -x β€” maximum score drop for preliminary gapped alignments (z)
  • -y β€” maximum score drop for gapless alignments (min[t*10, x])
  • -z β€” maximum score drop for final gapped alignments (e-1)
  • -d β€” minimum score for gapless alignments (min[e, 2500/n query letters per hit])
  • -e β€” minimum score for gapped alignments

🌈 Initial-match options (default settings):

Where the search starts and how it decides which spots are even worth a look. Main character decisions only.

  • -m β€” maximum initial matches per query position (10)
  • -l β€” minimum length for initial matches (1)
  • -L β€” maximum length for initial matches (infinity)
  • -k β€” use initial matches starting at every k-th position in each query (1)
  • -W β€” use "minimum" positions in sliding windows of W consecutive positions

🧚 Miscellaneous options (default settings):

The grab-bag. Everything cute and chaotic lives here. πŸ’…

  • -P β€” number of parallel threads (default: 1)
  • -K β€” omit alignments whose query range lies in >= K others with > score (off)
  • -C β€” omit gapless alignments in >= C others with > score-per-length (off)
  • -s β€” strand: 0=reverse, 1=forward, 2=both (2 if DNA and not lastdb -S2, else 1)
  • --reverse β€” reverse the query sequences πŸ™ƒ
  • -S β€” use score matrix: 0=as-is, 1=on query forward strands (0)
  • -i β€” query batch size (64M if multi-volume, else off)
  • -M β€” find minimum-difference alignments (faster but cruder)
  • -T β€” type of alignment: 0=local, 1=overlap (default: 0)
  • -n β€” maximum gapless alignments per query position (infinity if m=0, else m)
  • -N β€” stop after the first N alignments per query strand
  • -R β€” lowercase & simple-sequence options (the same as was used by lastdb)
  • -U β€” maximum tandem repeat unit length (100 if --codon else same as lastdb)
  • -u β€” mask lowercase during extensions: 0=never, 1=gapless, 2=gapless+postmask, 3=always (2 if lastdb -c and Q!=pssm, else 0)
  • -w β€” suppress repeats inside exact matches, offset by <= this distance (1000)
  • -G β€” genetic code (default: 1)
  • -t β€” 'temperature' for calculating probabilities (1/lambda)
  • -g β€” 'gamma' parameter for gamma-centroid and LAMA (default: 1)
  • -j β€” output type: 0=match counts, 1=gapless, 2=redundant gapped, 3=gapped, 4=column ambiguity estimates, 5=gamma-centroid, 6=LAMA, 7=expected counts (default: 3)
  • -J β€” score type: 0=ordinary, 1=full (1 for new-style frameshifts, else 0)
  • -Q β€” input format: fastx, keep, sanger, solexa, illumina, prb, pssm (default: fasta)

🌸 Split options:

For when a sequence is not one neat little unit and you gotta deal with the split / spliced situation. πŸ¦‹

  • --split β€” do split alignment
  • --splice β€” do spliced alignment
  • --split-f=FMT β€” output format: MAF, MAF+
  • --split-d=D β€” RNA direction: 0=reverse, 1=forward, 2=mixed (default: 1)
  • --split-c=PROB β€” cis-splice probability per base (default: 0.004)
  • --split-t=PROB β€” trans-splice probability per base (default: 1e-05)
  • --split-M=MEAN β€” mean of ln[intron length] (default: 7.0)
  • --split-S=SDEV β€” standard deviation of ln[intron length] (default: 1.7)
  • --split-m=PROB β€” maximum mismap probability (default: 1.0)
  • --split-s=INT β€” minimum alignment score (default: e OR e+t*ln[100])
  • --split-n β€” write original, not split, alignments
  • --split-b=B β€” maximum memory (default: 8T for split, 8G for spliced)

πŸ’– And that's the whole page, bestie. Every flag, every default, every =PROB and =MEAN, all of it, untouched. Go align something gorgeous. ✨

Version lastal 1654, dated August 2026 β€” ty for reading, mwah, stan a genome-scale aligner today πŸŽ€πŸ‘‘πŸ’…

πŸ“¦ where this page comes from