Expand description
Susceptibility source-separation stage.
Config-driven dispatcher over the χ-separation methods (χ+ / χ−). Unlike the
main phase→field→BFR→inversion pipeline, separation is a downstream stage that
needs extra inputs (a conventional QSM plus a relaxometry map / multi-echo
magnitude), so it is invoked explicitly with a SeparationInputs bundle
rather than folded into the top-level runner.
Units follow the library convention: local field & QSM in ppm, R2’/R2* in Hz,
echo times in seconds. Output is (chi_pos ≥ 0, chi_neg ≤ 0, chi_total) in ppm.
Structs§
- Separation
Inputs - Inputs for
run_separation. Provide whatever the chosen algorithm needs; the dispatcher errors if a required input is missing. - Separation
Result - Result of
run_separation: paramagnetic / diamagnetic / total maps in ppm.
Constants§
- GAMMA_
HZ_ 🔒PER_ T - Proton gyromagnetic ratio in Hz/T (for the central frequency
cf = γ·B0).
Functions§
- need 🔒
- Require an optional input, or return an
InvalidInputerror naming it. - run_
chi_ 🔒sepnet - Source the χ-sepnet weights and run inference (requires the
onnxfeature). - run_
separation - Run the configured χ-separation algorithm.
- run_
susep_ 🔒net - Source the SUSEP-Net weights and run inference (requires the
onnxfeature).