pub struct TileConfig {
pub core: usize,
pub halo: usize,
}Expand description
Tiling parameters for tiled_field_inversion.
Fields§
§core: usizeOutput core size per axis — the region each patch contributes to the result.
halo: usizeContext margin (voxels) included on every side of each patch. Larger halos reduce tile-boundary artifacts at the cost of more work per patch.
Trait Implementations§
Source§impl Clone for TileConfig
impl Clone for TileConfig
Source§fn clone(&self) -> TileConfig
fn clone(&self) -> TileConfig
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for TileConfig
Source§impl Debug for TileConfig
impl Debug for TileConfig
Source§impl Default for TileConfig
impl Default for TileConfig
Source§fn default() -> Self
fn default() -> Self
128³ cores with an 8-voxel halo → 144³ patches (~0.4 GB of f32 activations for a typical net, comfortably within a conservative ~2 GB WASM budget). Empirically the halo barely affects accuracy here — the tiling error is dominated by global low-frequency drift (a patch can’t see distant susceptibility sources), not tile-boundary seams — so this favours the large core (few patches, ~4× less overlap compute than 64³/32) over a big halo. On real 3 T data this matched whole-volume xQSM at r≈0.94 in ~1/4 the time.
Auto Trait Implementations§
impl Freeze for TileConfig
impl RefUnwindSafe for TileConfig
impl Send for TileConfig
impl Sync for TileConfig
impl Unpin for TileConfig
impl UnsafeUnpin for TileConfig
impl UnwindSafe for TileConfig
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<T> CloneAny for T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>, which can then be
downcast into Box<dyn ConcreteType> where ConcreteType implements Trait.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>, which can then be further
downcast into Rc<ConcreteType> where ConcreteType implements Trait.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.§impl<T> DowncastSend for T
impl<T> DowncastSend for T
§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more