ZALIGN(1)

πŸ“¦ version 0.9.1, in ubuntu jammy

πŸ’– ZALIGN πŸ’–

okay bestie, sit down, hydrate, because we're talking about zalign β€” that's the zAlign command from section 1, aka User Commands. it does parallel local alignment of biological sequences and honestly? she's iconic for it. 🧬✨


✨ NAME ✨

zalign β€” parallel local alignment of biological sequences πŸ¦‹


🌸 SYNOPSIS 🌸

zalign [-s scores] [-S split] [-H hblk] [-V vblk] file1 file2

like, that's the whole vibe. two files in, alignment out. no cap. πŸ’…


πŸŽ€ DESCRIPTION πŸŽ€

so zAlign is a local sequence aligner, and she was literally built with one main character in mind: large biological DNA sequences, the kind with more than 1Mbp (that's Millions of base pairs, iykyk). 🧬

the way she does it? she uses the Smith-Waterman exact algorithm with an affine gap cost function. exact. algorithm. periodt. no approximations, no shortcuts, just the real thing. πŸ‘‘


🫢 General options: 🫢

  • -h β€” displays this help and exits. that's it, that's the whole job. she said "here's the manual, bye" πŸ’–
  • -s <scores> β€” okay so this one lets you specify a comma-separated list of scores that get used while calculating alignment matrices throughout the program. the list has to be in this format:
-sMATCH,MISMATCH,GAP_OPEN,GAP_EXTENSION

(without quotes, bestie, please don't type the quotes). and it gets parsed in this PRECISE order β€” match, mismatch, gap open, gap extension, in that exact sequence, no shuffling. also no spaces are allowed between values, so don't get cute with it. πŸ™ˆ

now, if there are any unspecified parameters? those get set to default values and a warning message is issued. and if you go overboard with extra parameters? exceeding parameters are discarded. she's not mad, she's just not reading them. πŸ’€


🌈 Stage 2 options: 🌈

  • -S <split> β€” (mpialign only) this is the number of parts in which to split the alignment matrix. after this step a cyclic block model is applied, subdividing each part equally between all available nodes. sharing is caring fr fr 🫢
  • -H <hblk> β€” (mpialign only) the number of horizontal subdivisions each node makes to its alignment submatrix. and since this value defines block width, a good choice should allow two full matrix lines to fit the processor's cache pages, which improves algorithm performance. so basically: pick a number that makes the cache happy. the cache is the main character here, we're all just living in her world. ✨
  • -V <vblk> β€” (mpialign only) the number of vertical subdivisions each node makes to its alignment submatrix. this one directly affects the amount of internode communication β€” like, that's her whole thing. and heads up: she is used ONLY if split is set to 1. otherwise it gets set to the number of available nodes. so if you set split to anything else, your -V value is getting overridden, sorry babe, she said what she said. πŸ’…

🫢 friendly reminder: -S, -H, and -V are all mpialign only. so if you're not running mpialign, don't come for her about it. πŸ™ˆ

and that's the whole page, bestie!! slay. this was version 0.9.1, dated 16. Aug 2009, and honestly she aged like fine wine πŸ“. love that for her, love that for you, love that for all of us. go align something huge. πŸ’–βœ¨πŸŽ€πŸ¦‹πŸŒΈπŸ’…

πŸ“¦ where this page comes from