Trait alga::linear::NormedSpace[][src]

pub trait NormedSpace: VectorSpace<Field = Self::ComplexField> {
    type RealField: RealField;
    type ComplexField: ComplexField<RealField = Self::RealField>;
    fn norm_squared(&self) -> Self::RealField;
fn norm(&self) -> Self::RealField;
fn normalize(&self) -> Self;
fn normalize_mut(&mut self) -> Self::RealField;
fn try_normalize(&self, eps: Self::RealField) -> Option<Self>;
fn try_normalize_mut(
        &mut self,
        eps: Self::RealField
    ) -> Option<Self::RealField>; }

A normed vector space.

Associated Types

type RealField: RealField[src]

The result of the norm (not necessarily the same same as the field used by this vector space).

type ComplexField: ComplexField<RealField = Self::RealField>[src]

The field of this space must be this complex number.

Loading content...

Required methods

fn norm_squared(&self) -> Self::RealField[src]

The squared norm of this vector.

fn norm(&self) -> Self::RealField[src]

The norm of this vector.

fn normalize(&self) -> Self[src]

Returns a normalized version of this vector.

fn normalize_mut(&mut self) -> Self::RealField[src]

Normalizes this vector in-place and returns its norm.

fn try_normalize(&self, eps: Self::RealField) -> Option<Self>[src]

Returns a normalized version of this vector unless its norm as smaller or equal to eps.

fn try_normalize_mut(&mut self, eps: Self::RealField) -> Option<Self::RealField>[src]

Normalizes this vector in-place or does nothing if its norm is smaller or equal to eps.

If the normalization succeeded, returns the old normal of this vector.

Loading content...

Implementations on Foreign Types

impl NormedSpace for f32[src]

type RealField = f32

type ComplexField = f32

impl NormedSpace for f64[src]

type RealField = f64

type ComplexField = f64

impl<N: RealField> NormedSpace for Complex<N>[src]

type RealField = N

type ComplexField = N

Loading content...

Implementors

Loading content...