Skip to main content

run_heidi_cone_fill

Function run_heidi_cone_fill 

Source
pub fn run_heidi_cone_fill(
    chi_seed: &[f64],
    field_ppm: &[f64],
    mask: &[u8],
    metadata: &ScanMetadata,
    config: &InversionConfig,
    progress: &mut dyn FnMut(usize, usize),
) -> Result<Vec<f64>, PipelineError>
Expand description

HEIDI’s cone fill on a seed χ map: streaking reduction after config’s inversion (crate::inversion::heidi_cone_fill). run_dipole_inversion calls it when InversionConfig::cone_fill_after holds; a host that combines several inversions (two-pass) runs them with apply_heidi off and calls this once on the combined map, for any seed.

§Arguments

  • chi_seed - The inversion’s χ in ppm
  • field_ppm - The local field the seed was inverted from
  • mask - The mask the seed was inverted on (for two-pass, the main pass’s)
  • metadata - Scan metadata (field strength, echo times)
  • config - The inversion’s config: its algorithm is checked with heidi_seed_problem, and heidi holds the cone fill’s parameters
  • progress - Progress callback (current_iter, max_iter)