TEND-SIM(1)

πŸ“¦ version 1.11.0, in fedora 43, fedora 44

πŸ’– TEND-SIM πŸ’–

okay bestie, gather round, because we're about to talk about tend-sim, a User Commands girly who simulates DW images from a tensor field. she's from the tend family, she's iconic, and she's literally about to make your diffusion MRI life so much easier. no cap. 🧚✨


✨ NAME ✨

tend-sim β€” simulate DW images from a tensor field 🫢


🌸 SYNOPSIS 🌸

tend sim [-old] [-sigma <sigma>] [-seed <seed>] [-g <grad list>] [-B <B matrix>] -r <reference field> [-i <tensor field>] [-b <b>] [-kvp] [-t <type>] [-o <nout>]

like, look at her. so many little flags. we love a customizable queen πŸ‘‘


πŸ¦‹ DESCRIPTION πŸ¦‹

so what she does is simulate DW images from a tensor field. and here's the slay part: the output comes out in the exact same form as the input to tend-estim(1). so she's basically giving you a little test-drive of the whole pipeline. main character energy fr fr πŸ’…

now, the B-matrices (-B) can be the output from tend-bmat(1), or you can hand over the gradients directly with (-g). one of those two is required β€” you can't skip both, bestie, that's not how this works 😭

⚠️ not me dropping the most important detail last: the input tensor field (-i) is the basis of the output per-axis fields and the image orientation.

and here's the part people always miss β€” NOTE: this includes the measurement frame used in the input tensor field. which implies that the gradients or B-matrices you give her are already expressed in that measurement frame. so like, check your frames before you come crying to me. iykyk πŸ’€


πŸŽ€ OPTIONS πŸŽ€

  • -old β€” don't use the new tenEstimateContext functionality. she's a little old-school, a little vintage, and honestly? valid. πŸ™ˆ
  • -sigma <sigma> β€” the Rician noise parameter, a float. default is "0.0" β€” so by default she's giving clean, noise-free, untouched ✨ no filter needed πŸ’–
  • -seed <seed> β€” seed value for the RNG that creates the noise, an int. default: "42". the answer to everything, obviously 🌈
  • -g <grad list> β€” gradient list, one row per diffusion-weighted image. this is one of the two required sources of direction info (the other one's -B) ⭐
  • -B <B matrix> β€” B matrix, one row per diffusion-weighted image. heads up: using this overrides the gradient list input you gave via -g. so if you pass both, -B wins, periodt πŸ‘‘
  • -r <reference field> β€” reference anatomical scan, with no diffusion weighting. she's the baseline, the blank canvas, the no-DW moment before everything gets spicy πŸŽ€
  • -i <tensor field> β€” input diffusion tensor field. remember from the DESCRIPTION: she sets the per-axis fields, the image orientation, and the measurement frame. so important, bestie 🫢
  • -b <b> β€” b value for the simulated scan, a float. default: "1000" ✨
  • -kvp β€” generate key/value pairs in the NRRD header corresponding to the input b-value and gradients or B-matrices. like she's writing little receipts in the header so future-you knows exactly what happened πŸ’…
  • -t <type> β€” output type of DWIs. default: "float" πŸ¦‹
  • -o <nout> β€” output image (floating point), a string. default: "-", which means she's gonna stream it out rather than write a file. iconic behavior πŸ’œ

🌟 SEE ALSO 🌟

go read those too, bestie, the whole friend group is worth knowing 🫢🌸


πŸ’Œ cute little sign-off: this page is from April 2021, part of the tend User Commands set, and you can find it under TEND-SIM(1). mwah. take care of her, she's doing her best πŸ’–βœ¨πŸŽ€πŸ¦‹
πŸ“¦ where this page comes from