Enum DisplayMode

Source
pub enum DisplayMode {
    Abs,
    RealPart,
}
Expand description

Represents whether a spectrum is meant to be displayed as the real part or as the absolute value

Note that this is very experimental and you should default to using DisplayMode::Abs in parameters. The PSF Polisher publication only uses DisplayMode::Abs.

Future research can look into whether knowing the display mode of an experiment can inform schedule generation and reconstruction.

The PSF polisher, when passed in DisplayMode::RealPart, will only “see” the real part of the PSF during filtering and ignore the imaginary part, potentially leaving artifacts in and moving PSF noise into the imaginary part. If it is known that all of the signal will be exclusively in the real part, then moving sampling noise from the real part to the imaginary part may be desirable.

The IST reconstructor will also only “see” the real part when passed in DisplayMode::RealPart. It will assume that all signals in the imaginary axis are noise and ignore them.

Variants§

§

Abs

The spectrum will be displayed in absolute value mode

§

RealPart

The spectrum will be displayed in real part mode; the complex part will be ignored.

Implementations§

Source§

impl DisplayMode

Source

pub fn magnitude(self, complex: Complex<f64>) -> f64

Calculate the magnitude of the complex number given the display mode. In Abs mode, this will return complex.abs(), and in RealPart mode, this will return complex.re().abs().

Source

pub fn threshold<T: ComplexSequence + ?Sized>( self, sequence: &mut T, threshold: f64, )

Apply a soft threshold to a sequence, zeroing out all components with DisplayMode::magnitude less than the threshold.

Source

pub fn maybe_real_part<T: ComplexSequence + ?Sized>(self, sequence: &mut T)

Take the real part of the sequence if self is RealPart, otherwise leaving it alone.

Trait Implementations§

Source§

impl Clone for DisplayMode

Source§

fn clone(&self) -> DisplayMode

Returns a copy of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for DisplayMode

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for DisplayMode

Source§

fn default() -> DisplayMode

Returns the “default value” for a type. Read more
Source§

impl Copy for DisplayMode

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V