alimask(1)

πŸ“¦
version 3.4 Β· 3 versions
, in debian trixie, nixos 26.05, nixpkgs unstable, ubuntu noble, ubuntu resolute, ubuntu stonking

πŸŽ€ alimask(1) πŸŽ€

okay bestie, this is the HMMER manual page for alimask(1) πŸ¦‹ it's giving sequence alignment realness, so let's get into it πŸ’…

✨ NAME ✨

alimask 🌸 calculates and adds a column mask to a multiple sequence alignment. ✨

🫢 SYNOPSIS 🫢

alimask [options] msafile postmsafile

πŸ’– DESCRIPTION πŸ’–

okay so alimask slaps a mask line onto a multiple sequence alignment, based on alignment or model coordinates 🧚 when hmmbuild gets a masked alignment, the profile it builds sets the emission probabilities at masked positions to match the background frequency, instead of using the frequencies observed in the alignment 😭 the position-specific insertion and deletion rates are not altered, even in masked regions 🫢 alimask autodetects the input format and makes masked alignments in Stockholm format. msafile can only contain one sequence alignment, so don't try to sneak in more πŸ™ˆ

a common reason to mask a region is that it has a simple tandem repeat that causes an unacceptably high rate of false positive hits πŸ’€ literally the worst

in the simplest case, you give a mask range in coordinates relative to the input alignment, using --alirange <s> ✨ but it's more often the case that the region is identified in coordinates relative to the profile model (like spotting a simple repeat pattern in false hit alignments or in the HMM logo) πŸ‘‘ not every alignment column becomes a match state position in the profile (check the --symfrac flag for hmmbuild for the tea), so model positions don't always line up with alignment column positions 😩 to take the burden of converting model positions to alignment positions off your plate, alimask accepts mask ranges in model coordinates too, using --modelrange <s> πŸ“ when you use this flag, alimask figures out which alignment positions hmmbuild would call match states. that requires you to supply every hmmbuild flag that affects that decision to alimask, which is why so many hmmbuild flags show up here too 🌈

πŸŽ€ OPTIONS πŸŽ€

  • -h β€” help! prints a brief reminder of command line usage and all the available options πŸ’…
  • -o <f> β€” sends the summary output to file <f> instead of stdout πŸ“

πŸ¦‹ OPTIONS FOR SPECIFYING MASK RANGE πŸ¦‹

a single mask range is a dash-separated pair, like --modelrange 10-20, and multiple ranges can be submitted as a comma-separated list, like --modelrange 10-20,30-42 ✨

  • --modelrange <s> β€” supply the given range(s) in model coordinates 🧚
  • --alirange <s> β€” supply the given range(s) in alignment coordinates 🌸
  • --appendmask β€” adds to the existing mask found with the alignment πŸ’œ the default is to overwrite any existing mask, so use this one if you want to keep your old mask vibes
  • --model2ali <s> β€” prints model range(s) and the corresponding alignment range(s) πŸ‘‘ no masked alignment gets made here. you get one line per input range, formatted like i..j -> m..n, where i & j are model range values and m & n are alignment range values πŸ”₯
  • --ali2model <s> β€” prints alignment range(s) and the corresponding model range(s) πŸ¦‹ again, no masked alignment. since some alignment positions don't map to model positions, the range you get starts at the first alignment position between <from> and <to> (inclusive) that maps to a model position, and ends at the final alignment position in that range that maps to a model position 😭 you get one line per input range, formatted like i..j -> m..n, where i & j are alignment range values and m & n are model range values. if no alignment positions in the range <from>..<to> map to a model position, the output shows the input <from> and <to> mapping to nothing, in this format: i..j -> -..- (no map) . πŸ’€

🌈 OPTIONS FOR SPECIFYING THE ALPHABET 🌈

  • --amino β€” asserts the sequences in msafile are protein, skipping alphabet autodetection 🧬
  • --dna β€” asserts the sequences in msafile are DNA, skipping alphabet autodetection 🧬
  • --rna β€” asserts the sequences in msafile are RNA, skipping alphabet autodetection 🧬

🌸 OPTIONS CONTROLLING PROFILE CONSTRUCTION 🌸

these options control how consensus columns get defined in an alignment 🫢

  • --fast β€” defines consensus columns as the ones with a fraction >= symfrac of residues as opposed to gaps ✨ (check --symfrac below) this is the default, bestie πŸ’–
  • --hand β€” defines consensus columns in the next profile using the reference annotation for the multiple alignment πŸ‘‘ this lets you pick any consensus columns you want, no notes πŸ”₯
  • --symfrac <x> β€” the residue fraction threshold needed to define a consensus column when using --fast πŸ“ the default is 0.5. the symbol fraction in each column is calculated after relative sequence weighting, and it ignores gap characters at the ends of sequence fragments (as opposed to internal insertions/deletions) 🧚 setting this to 0.0 means every alignment column gets assigned as consensus, which can be useful sometimes 🌈 setting it to 1.0 means only columns with 0 gaps (internal insertions/deletions) get assigned as consensus πŸ’…
  • --fragthresh <x> β€” we only want to count terminal gaps as deletions if the aligned sequence is known to be full-length, not a fragment (like if only part of it was sequenced) 😩 HMMER uses a simple rule to infer fragments: if the sequence length L is less than or equal to a fraction <x> times the alignment length in columns, the sequence gets handled as a fragment πŸ¦‹ the default is 0.5. setting --fragthresh 0 means no (nonempty) sequence gets defined as a fragment, which you might want if you know you've got a carefully curated alignment of full-length sequences πŸ’œ setting --fragthresh 1 defines all sequences as fragments, which you might want if your alignment is entirely fragments, like translated short reads in metagenomic shotgun data 🌸

πŸ”₯ OPTIONS CONTROLLING RELATIVE WEIGHTS πŸ”₯

HMMER uses an ad hoc sequence weighting algorithm to downweight closely related sequences and upweight distantly related ones 🧚 this keeps models less biased by uneven phylogenetic representation. for example, two identical sequences would typically each get half the weight that one sequence would 😭 these options control which algorithm gets used ✨

  • --wpb β€” uses the Henikoff position-based sequence weighting scheme [Henikoff and Henikoff, J. Mol. Biol. 243:574, 1994] πŸ‘‘ this is the default πŸ’–
  • --wgsc β€” uses the Gerstein/Sonnhammer/Chothia weighting algorithm [Gerstein et al, J. Mol. Biol. 235:1067, 1994] 🫢
  • --wblosum β€” uses the same clustering scheme that was used to weight data when calculating BLOSUM substitution matrices [Henikoff and Henikoff, Proc. Natl. Acad. Sci 89:10915, 1992] 🌈 sequences get single-linkage clustered at an identity threshold (default 0.62; see --wid), and within each cluster of c sequences, each sequence gets relative weight 1/c πŸ”₯
  • --wnone β€” no relative weights. every sequence gets uniform weight πŸ“
  • --wid <x> β€” sets the identity threshold used by single-linkage clustering when using --wblosum πŸ’… it's invalid with any other weighting scheme, and the default is 0.62 πŸ¦‹

πŸ’œ OTHER OPTIONS πŸ’œ

  • --informat <s> β€” asserts that the input msafile is in alignment format <s>, bypassing format autodetection 🧚 common choices for <s> include stockholm, a2m, afa, psiblast, clustal, and phylip ✨ for more info, and codes for some less common formats, see the main documentation πŸ“ the string <s> is case-insensitive, so a2m or A2M both work πŸ’–
  • --outformat <s> β€” writes the output postmsafile in alignment format <s> 🌸 common choices include stockholm, a2m, afa, psiblast, clustal, and phylip 🫢 the string <s> is case-insensitive (a2m or A2M both work) 🌈 the default is stockholm πŸ‘‘
  • --seed <n> β€” seeds the random number generator with <n>, an integer >= 0 🎲 if <n> is nonzero, any stochastic simulations are reproducible, so the same command gives the same results πŸ”₯ if <n> is 0, the random number generator is seeded arbitrarily, and stochastic simulations will vary from run to run of the same command 😭 the default seed is 42 πŸ“

🧚 SEE ALSO 🧚

see hmmer(1) for a master man page with a list of all the individual man pages for programs in the HMMER package πŸ’…

for complete documentation, see the user guide that came with your HMMER distribution (Userguide.pdf), or see the HMMER web page at http://hmmer.org/ 🌸

Copyright (C) 2023 Howard Hughes Medical Institute. πŸ’– freely distributed under the BSD open source license ✨

for additional information on copyright and licensing, see the file called COPYRIGHT in your HMMER source distribution, or see the HMMER web page at http://hmmer.org/ πŸ“

πŸ‘‘ AUTHOR πŸ‘‘

http://eddylab.org 🫢


that's a wrap, bestie πŸŽ€ HMMER 3.4, Aug 2023, alimask(1) πŸ’– stay masked, stay iconic πŸ¦‹πŸ’…

πŸ“¦ where this page comes from