Skip to main content

KnownClockClass

Enum KnownClockClass 

Source
pub enum KnownClockClass {
    TcxoSteadyState,
    OcxoWarmup,
    FreeRunXtal,
    PllAcquisition,
    LowNoiseOcxo,
    Unknown,
}
Expand description

Canonical clock / oscillator instability classes matched by Allan slope.

Classified by fitting log-log slope α to σ_y(τ) ∝ τ^α across the provided τ window. α ≈ –1 → white FM; α ≈ –3/2 → flicker FM (OCXO); α ≈ +1/2 → random walk FM; α ≈ 0 → flicker phase noise.

Variants§

§

TcxoSteadyState

White frequency modulation (α ≈ –1.0). Typical of a TCXO in steady-state or immediately post-warmup.

§

OcxoWarmup

Flicker frequency modulation (α ≈ –0.5, strong τ^0 floor). Typical of OCXO during oven thermal equilibration (~1–10 min).

§

FreeRunXtal

Random walk frequency modulation (α ≈ +0.5). Typical of a free-run crystal without temperature compensation.

§

PllAcquisition

Transient oscillation around a fast-crossing τ value. Indicates an active PLL mid-acquisition or a loop bandwidth mismatch.

§

LowNoiseOcxo

Flicker phase noise (α ≈ –1.5), adjacent to carrier. Typical of a low-noise OCXO or Rb oscillator in steady-state.

§

Unknown

Slope could not be determined (too few τ points or noisy data).

Implementations§

Source§

impl KnownClockClass

Source

pub const fn label(self) -> &'static str

Human-readable label for SigMF annotation or log emission.

Source

pub const fn is_internal_cause(self) -> bool

Whether this class indicates an internal cause (clock/LO issue) rather than an external cause (channel interference).

Trait Implementations§

Source§

impl Clone for KnownClockClass

Source§

fn clone(&self) -> KnownClockClass

Returns a duplicate 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 KnownClockClass

Source§

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

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

impl PartialEq for KnownClockClass

Source§

fn eq(&self, other: &KnownClockClass) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for KnownClockClass

Source§

impl Eq for KnownClockClass

Source§

impl StructuralPartialEq for KnownClockClass

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, 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.