COMPALIGN(1)

πŸ’– COMPALIGN(1) β€” the compare-two-multiple-alignments girlie πŸ’–

okay bestie, welcome to compalign, from the General Commands Manual section of your local man pages. this one is a bop, i promise. it's giving "i have two alignments and i need to know how much they agree" and honestly? iconic. ✨


🌸 NAME 🌸

compalign β€” compare two multiple alignments. that's it. that's the whole job. she compares. she aligns. she serves. πŸ’…


πŸ¦‹ SYNOPSIS πŸ¦‹

compalign [-options] <trusted-alignment> <test-alignment>

two files, bestie. one trusted, one test. she's gonna put them side by side and tell you how well they match. 🫢


✨ DESCRIPTION ✨

so here's the tea, and it's actual science tea:

compalign calculates the fractional "identity" between the trusted alignment and the test alignment. and listen β€” the two files must contain exactly the same sequences, in exactly the same order. no exceptions. no remixing. no "i sorted them alphabetically for you." same sequences, same order, periodt. πŸ’€

The identity of the multiple sequence alignments is defined as the averaged identity over all N(N-1)/2 pairwise alignments. like, she checks every possible pair. every single one. she's thorough like that. πŸ‘‘

and the fractional identity of two sets of pairwise alignments is in turn defined like this β€” for aligned known sequences k1 and k2, and aligned test sequences t1 and t2:

matched columns / total columns

where:

  • total columns = the total number of columns in which there is a valid (nongap) symbol in k1 or k2;
  • matched columns = the number of columns in which one of the following is true:
    1. k1 and k2 both have valid symbols at a given column; t1 and t2 have the same symbols aligned in a column of the t1/t2 alignment;
    2. k1 has a symbol aligned to a gap in k2; that symbol in t1 is also aligned to a gap;
    3. k2 has a symbol aligned to a gap in k1; that symbol in t2 is also aligned to a gap.

got it? it's a vibe check on your gaps. gaps that match up? matched. gaps that don't? not matched. it's giving accountability. 🌈

⚠️ heads up bestie: because scores for all possible pairs are calculated, the algorithm is of order (N^2)L for N sequences of length L. so like… large sequence sets will take a while. she's not slow, she's thorough. but fr fr, bring a snack. πŸ“

πŸŽ€ OPTIONS πŸŽ€

Available options, and yes we're going through every single one:

  • -h β€” print short help and usage info. your lil "hi what do i type" button. 🫢
  • -c β€” only compare under marked #=CS consensus structure. she'll stay in her lane and only look at the parts you flagged. πŸ’…
  • --informat <s> β€” specify that both alignments are in format <s> (MSF, for instance). so like, tell her what dialect they're speaking. πŸ—£οΈ
  • --quiet β€” suppress verbose header (used in regression testing). no chit-chat, just results. main character energy but silent. 🀫

🌟 SEE ALSO 🌟

the whole squad, all of them, no one left out: afetch(1), alistat(1), compstruct(1), revcomp(1), seqsplit(1), seqstat(1), sfetch(1), shuffle(1), sindex(1), sreformat(1), stranslate(1), weight(1). go say hi. they're all family. πŸ¦‹


πŸ’œ AUTHOR πŸ’œ

Sean Eddy HHMI/Department of Genetics Washington University School of Medicine 4444 Forest Park Blvd., Box 8510 St Louis, MO 63108 USA Phone: 1-314-362-7666 FAX : 1-314-362-2157 Email: eddy@genetics.wustl.edu

This manual page was written by Nelson A. de Oliveira <naoliv@gmail.com>, for the Debian project (but may be used by others). ty for your service bestie πŸ«‘πŸ’–


okay that's the whole page, and this lil sign-off is where the footer would've been: this one is dated Mon, 01 Aug 2005 15:28:08 -0300, and yeah, it's the COMPALIGN(1) page. now go compare some alignments and slay. βœ¨πŸ’…πŸ‘‘