HHALIGN(1)

πŸ’– HHALIGN πŸ’– β€” that's hhalign(1), from the User Commands girlies πŸŽ€

okay so bestie, sit down, hydrate, because this is the manual for hhalign and it is lowkey iconic if you're into remote homology. it lives in the User Commands section of the manual, and it's about to be your whole personality. ✨


✨ NAME ✨

hhalign β€” align a query alignment/HMM to a template alignment/HMM 🫢


✨ SYNOPSIS ✨

hhalign -i query -t template [options]

✨ DESCRIPTION ✨

HHalign 3.3.0 πŸ’… Align a query alignment/HMM to a template alignment/HMM by HMM-HMM alignment. no cap, that's the whole job.

and the plot twist: if only one alignment/HMM is given it is compared to itself, and then you get the best off-diagonal alignment plus all further non-overlapping alignments above the significance threshold. it's giving self-love, it's giving main character energy. πŸ‘‘

if you gotta cite it (and you should, that's the vibe), here's the receipt:

Steinegger M, Meier M, Mirdita M, VΓΆhringer H, Haunsberger S J, and SΓΆding J (2019) HH-suite3 for fast remote homology detection and deep protein annotation. BMC Bioinformatics, doi:10.1186/s12859-019-3019-7 (c) The HH-suite development team
  • -i <file> β€” the input/query, bestie πŸ’– it can be a single sequence, or a multiple sequence alignment (MSA) in a3m, a2m, or FASTA format, or an HMM in hhm format.
  • -t <file> β€” the input/template 🌸 same deal: single sequence, or an MSA in a3m, a2m, or FASTA, or an HMM in hhm format.

also, <file> may be 'stdin' or 'stdout' throughout β€” so yes, you can absolutely pipe this around like it's a group chat. 🧚

🌈 Input alignment format:

  • -M a2m β€” use A2M/A3M (this is the default): upper case = Match; lower case = Insert; '-' = Delete; '.' = gaps aligned to inserts (may be omitted)
  • -M first β€” use FASTA: columns with residue in 1st sequence are match states
  • -M [0,100] β€” use FASTA: columns with fewer than X% gaps are match states
  • -tags / -notags β€” do NOT / do neutralize His-, C-myc-, FLAG-tags, and trypsin recognition sequence to background distribution (def=-notags)

πŸŽ€ Output options:

  • -o <file> β€” write results in standard format to file (default=<infile.hhr>)
  • -oa3m <file> β€” write query alignment in a3m or PSI-BLAST format (-opsi) to file (default=none)
  • -aa3m <file> β€” append query alignment in a3m (-aa3m) or PSI-BLAST format (-apsi) to file (default=none)
  • -Ofas <file> β€” write pairwise alignments in FASTA xor A2M (-Oa2m) xor A3M (-Oa3m) format
  • -add_cons β€” generate consensus sequence as master sequence of query MSA (default=don't)
  • -hide_cons β€” don't show consensus sequence in alignments (default=show)
  • -hide_pred β€” don't show predicted 2ndary structure in alignments (default=show)
  • -hide_dssp β€” don't show DSSP 2ndary structure in alignments (default=show)
  • -show_ssconf β€” show confidences for predicted 2ndary structure in alignments
  • -seq <int> β€” max. number of query/template sequences displayed (default=1)
  • -aliw <int> β€” number of columns per line in alignment list (default=80)
  • -p [0,100] β€” minimum probability in summary and alignment list (default=0)
  • -E [0,inf[ β€” maximum E-value in summary and alignment list (default=1E+06)
  • -Z <int> β€” maximum number of lines in summary hit list (default=100)
  • -z <int> β€” minimum number of lines in summary hit list (default=1)
  • -B <int> β€” maximum number of alignments in alignment list (default=100)
  • -b <int> β€” minimum number of alignments in alignment list (default=1)

πŸ¦‹ Filter options applied to query MSA, template MSA, and result MSA

  • -id [0,100] β€” maximum pairwise sequence identity (def=90)
  • -diff [0,inf[ β€” filter MSAs by selecting most diverse set of sequences, keeping at least this many seqs in each MSA block of length 50. Zero and non-numerical values turn off the filtering. (def=100)
  • -cov [0,100] β€” minimum coverage with master sequence (%) (def=0)
  • -qid [0,100] β€” minimum sequence identity with master sequence (%) (def=0)
  • -qsc [0,100] β€” minimum score per column with master sequence (default=-20.0)
  • -mark β€” do not filter out sequences marked by ">@" in their name line

πŸ’œ HMM-HMM alignment options:

  • -norealign β€” do NOT realign displayed hits with MAC algorithm (def=realign)
  • -mact [0,1[ β€” posterior prob threshold for MAC realignment controlling greediness at alignment ends: 0:global >0.1:local (default=0.35)
  • -glob / -loc β€” use global/local alignment mode for searching/ranking (def=local)
  • -realign β€” realign displayed hits with max. accuracy (MAC) algorithm
  • -excl <range> β€” exclude query positions from the alignment, e.g. '1-33,97-168'
  • -template_excl <range> β€” exclude template positions from the alignment, e.g. '1-33,97-168'
  • -ovlp <int> β€” banded alignment: forbid <ovlp> largest diagonals |i-j| of DP matrix (def=0)
  • -alt <int> β€” show up to this many alternative alignments with raw score > smin (def=1)
  • -smin <float> β€” minimum raw score for alternative alignments (def=20.0)
  • -shift [-1,1] β€” profile-profile score offset (def=-0.03)
  • -corr [0,1] β€” weight of term for pair correlations (def=0.10)
  • -sc <int> β€” amino acid score (tja: template HMM at column j) (def=1)
    • 0 = log2 Sum(tja*qia/pa) (pa: aa background frequencies)
    • 1 = log2 Sum(tja*qia/pqa) (pqa = 1/2*(pa+ta) )
    • 2 = log2 Sum(tja*qia/ta) (ta: av. aa freqs in template)
    • 3 = log2 Sum(tja*qia/qa) (qa: av. aa freqs in query)
    • 5 local amino acid composition correction
  • -ssm {0,..,4} β€” secondary structure scoring [default=2]
    • 0: = no ss scoring
    • 1,2: = ss scoring after or during alignment
    • 3,4: = ss scoring after or during alignment, predicted vs. predicted
  • -ssw [0,1] β€” weight of ss score (def=0.11)
  • -ssa [0,1] β€” ss confusion matrix = (1-ssa)*I + ssa*psipred-confusion-matrix [def=1.00)
  • -wg β€” use global sequence weighting for realignment!

πŸ”₯ Gap cost options:

  • -gapb [0,inf[ β€” Transition pseudocount admixture (def=1.00)
  • -gapd [0,inf[ β€” Transition pseudocount admixture for open gap (default=0.15)
  • -gapd [0,inf[ β€” Transition pseudocount admixture for open gap (default=0.15)
bestie. yes. it's listed twice. that's what the source says, so that's what you get. not me editing the sacred text πŸ’€ i don't make the rules.
  • -gape [0,1.5] β€” Transition pseudocount admixture for extend gap (def=1.00)
  • -gapf ]0,inf] β€” factor to increase/reduce the gap open penalty for deletes (def=0.60)
  • -gapg ]0,inf] β€” factor to increase/reduce the gap open penalty for inserts (def=0.60)
  • -gaph ]0,inf] β€” factor to increase/reduce the gap extend penalty for deletes (def=0.60)
  • -gapi ]0,inf] β€” factor to increase/reduce the gap extend penalty for inserts (def=0.60)
  • -egq [0,inf[ β€” penalty (bits) for end gaps aligned to query residues (def=0.00)
  • -egt [0,inf[ β€” penalty (bits) for end gaps aligned to template residues (def=0.00)

🌸 Pseudocount (pc) options:

Context specific hhm pseudocounts:

  • -pc_hhm_contxt_mode {0,..,3} β€” position dependence of pc admixture 'tau' (pc mode, default=2)
    • 0: no pseudo counts: tau = 0
    • 1: constant tau = a
    • 2: diversity-dependent: tau = a/(1+((Neff[i]-1)/b)^c)
    • 3: CSBlast admixture: tau = a(1+b)/(Neff[i]+b) (Neff[i]: number of effective seqs in local MSA around column i)
  • -pc_hhm_contxt_a [0,1] β€” overall pseudocount admixture (def=0.9)
  • -pc_hhm_contxt_b [1,inf[ β€” Neff threshold value for mode 2 (def=4.0)
  • -pc_hhm_contxt_c [0,3] β€” extinction exponent c for mode 2 (def=1.0)

Context independent hhm pseudocounts (used for templates; used for query if contxt file is not available):

  • -pc_hhm_nocontxt_mode {0,..,3} β€” position dependence of pc admixture 'tau' (pc mode, default=2)
    • 0: no pseudo counts: tau = 0
    • 1: constant tau = a
    • 2: diversity-dependent: tau = a/(1+((Neff[i]-1)/b)^c) (Neff[i]: number of effective seqs in local MSA around column i)
  • -pc_hhm_nocontxt_a [0,1] β€” overall pseudocount admixture (def=1.0)
  • -pc_hhm_nocontxt_b [1,inf[ β€” Neff threshold value for mode 2 (def=1.5)
  • -pc_hhm_nocontxt_c [0,3] β€” extinction exponent c for mode 2 (def=1.0)

Context-specific pseudo-counts:

  • -nocontxt β€” use substitution-matrix instead of context-specific pseudocounts
  • -contxt <file> β€” context file for computing context-specific pseudocounts (default=)
  • -csw [0,inf] β€” weight of central position in cs pseudocount mode (def=1.6)
  • -csb [0,1] β€” weight decay parameter for positions in cs pc mode (def=0.9)

πŸ‘‘ Other options:

  • -v <int> β€” verbose mode: 0:no screen output 1:only warings 2: verbose (def=2)
  • -atab <file> β€” write all alignments in tabular layout to file
  • -maxseq <int> β€” max number of input rows (def=65535)
  • -maxres <int> β€” max number of HMM columns (def=20001)
  • -maxmem [1,inf[ β€” limit memory for realignment (in GB) (def=3.0)

⭐ Example, because we love a demo:

hhalign -i T0187.a3m -t d1hz4a_.hhm -o result.hhr

and that's the whole thing, bestie 🫢 you ate. periodt.

this lil masterpiece is version hhalign 3.3.0+ds, dated August 2023, and it's the HHALIGN(1) page πŸ’– go forth and align, you absolute icon. πŸ’…βœ¨πŸ¦‹

πŸ“¦ where this page comes from