pub struct ChiSepIlsqrParams {
pub cf: f64,
pub dr_pos: f64,
pub dr_neg: f64,
pub lambda1: f64,
pub percentage: f64,
pub r2p_min: f64,
pub r2p_max: f64,
pub max_iter: usize,
pub tol: f64,
pub cg_max_iter: usize,
pub cg_tol: f64,
}Expand description
Parameters for chi_sep_ilsqr.
Fields§
§cf: f64Central frequency in Hz (e.g. 123.2e6 at 3T, 298.0e6 at 7T)
dr_pos: f64Paramagnetic relaxometric constant in Hz/ppm (Shin 2021: 137)
dr_neg: f64Diamagnetic relaxometric constant in Hz/ppm (Shin 2021: same as dr_pos)
lambda1: f64L1 edge-masked TV weight λ1 (the total-χ term carries 2λ1)
percentage: f64Edge-mask keep fraction for M_Mag / M_R2’ (MEDI convention, 0.9)
r2p_min: f64R2’ reliability window: Wr = Wf/10 outside [r2p_min, r2p_max] Hz
r2p_max: f64Upper bound of the reliable R2’ window in Hz
max_iter: usizeOuter Gauss-Newton max iterations (paper: 30)
tol: f64Outer relative-change tolerance on χ_total (paper: 0.01)
cg_max_iter: usizeInner conjugate-gradient max iterations
cg_tol: f64Inner conjugate-gradient relative tolerance
Trait Implementations§
Source§impl Clone for ChiSepIlsqrParams
impl Clone for ChiSepIlsqrParams
Source§fn clone(&self) -> ChiSepIlsqrParams
fn clone(&self) -> ChiSepIlsqrParams
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ChiSepIlsqrParams
impl Debug for ChiSepIlsqrParams
Source§impl Default for ChiSepIlsqrParams
impl Default for ChiSepIlsqrParams
Auto Trait Implementations§
impl Freeze for ChiSepIlsqrParams
impl RefUnwindSafe for ChiSepIlsqrParams
impl Send for ChiSepIlsqrParams
impl Sync for ChiSepIlsqrParams
impl Unpin for ChiSepIlsqrParams
impl UnsafeUnpin for ChiSepIlsqrParams
impl UnwindSafe for ChiSepIlsqrParams
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
Mutably borrows from an owned value. Read more
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>
Converts
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>
Converts
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)
Converts
&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)
Converts
&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>
Converts
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>
Converts
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