Struct ggez::graphics::na::Hessenberg
[−]
[src]
pub struct Hessenberg<N, D> where
D: DimSub<U1>,
N: Real,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, <D as DimSub<U1>>::Output, U1>, { /* fields omitted */ }
Hessenberg decomposition of a general matrix.
Methods
impl<N, D> Hessenberg<N, D> where
D: DimSub<U1>,
N: Real,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, <D as DimSub<U1>>::Output, U1>,
[src]
D: DimSub<U1>,
N: Real,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, D, U1>,
DefaultAllocator: Allocator<N, <D as DimSub<U1>>::Output, U1>,
fn new(
hess: Matrix<N, D, D, <DefaultAllocator as Allocator<N, D, D>>::Buffer>
) -> Hessenberg<N, D>
[src]
hess: Matrix<N, D, D, <DefaultAllocator as Allocator<N, D, D>>::Buffer>
) -> Hessenberg<N, D>
Computes the Hessenberg decomposition using householder reflections.
fn new_with_workspace(
hess: Matrix<N, D, D, <DefaultAllocator as Allocator<N, D, D>>::Buffer>,
work: &mut Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>
) -> Hessenberg<N, D>
[src]
hess: Matrix<N, D, D, <DefaultAllocator as Allocator<N, D, D>>::Buffer>,
work: &mut Matrix<N, D, U1, <DefaultAllocator as Allocator<N, D, U1>>::Buffer>
) -> Hessenberg<N, D>
Computes the Hessenberg decomposition using householder reflections.
The workspace containing D
elements must be provided but its content does not have to be
initialized.
fn unpack(
self
) -> (Matrix<N, D, D, <DefaultAllocator as Allocator<N, D, D>>::Buffer>, Matrix<N, D, D, <DefaultAllocator as Allocator<N, D, D>>::Buffer>) where
ShapeConstraint: DimEq<Dynamic, <D as DimSub<U1>>::Output>,
[src]
self
) -> (Matrix<N, D, D, <DefaultAllocator as Allocator<N, D, D>>::Buffer>, Matrix<N, D, D, <DefaultAllocator as Allocator<N, D, D>>::Buffer>) where
ShapeConstraint: DimEq<Dynamic, <D as DimSub<U1>>::Output>,
Retrieves (q, h)
with q
the orthogonal matrix of this decomposition and h
the
hessenberg matrix.
fn unpack_h(
self
) -> Matrix<N, D, D, <DefaultAllocator as Allocator<N, D, D>>::Buffer> where
ShapeConstraint: DimEq<Dynamic, <D as DimSub<U1>>::Output>,
[src]
self
) -> Matrix<N, D, D, <DefaultAllocator as Allocator<N, D, D>>::Buffer> where
ShapeConstraint: DimEq<Dynamic, <D as DimSub<U1>>::Output>,
Retrieves the upper trapezoidal submatrix H
of this decomposition.
fn h(&self) -> Matrix<N, D, D, <DefaultAllocator as Allocator<N, D, D>>::Buffer> where
ShapeConstraint: DimEq<Dynamic, <D as DimSub<U1>>::Output>,
[src]
ShapeConstraint: DimEq<Dynamic, <D as DimSub<U1>>::Output>,
Retrieves the upper trapezoidal submatrix H
of this decomposition.
This is less efficient than .unpack_h()
as it allocates a new matrix.
fn q(&self) -> Matrix<N, D, D, <DefaultAllocator as Allocator<N, D, D>>::Buffer>
[src]
Computes the orthogonal matrix Q
of this decomposition.
Trait Implementations
impl<N, D> Copy for Hessenberg<N, D> where
D: DimSub<U1>,
N: Real,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, <D as DimSub<U1>>::Output, U1>,
Matrix<N, D, D, <DefaultAllocator as Allocator<N, D, D>>::Buffer>: Copy,
Matrix<N, <D as DimSub<U1>>::Output, U1, <DefaultAllocator as Allocator<N, <D as DimSub<U1>>::Output, U1>>::Buffer>: Copy,
[src]
D: DimSub<U1>,
N: Real,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, <D as DimSub<U1>>::Output, U1>,
Matrix<N, D, D, <DefaultAllocator as Allocator<N, D, D>>::Buffer>: Copy,
Matrix<N, <D as DimSub<U1>>::Output, U1, <DefaultAllocator as Allocator<N, <D as DimSub<U1>>::Output, U1>>::Buffer>: Copy,
impl<N, D> Clone for Hessenberg<N, D> where
D: DimSub<U1> + Clone,
N: Clone + Real,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, <D as DimSub<U1>>::Output, U1>,
[src]
D: DimSub<U1> + Clone,
N: Clone + Real,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, <D as DimSub<U1>>::Output, U1>,
fn clone(&self) -> Hessenberg<N, D>
[src]
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
Performs copy-assignment from source
. Read more
impl<N, D> Debug for Hessenberg<N, D> where
D: DimSub<U1> + Debug,
N: Debug + Real,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, <D as DimSub<U1>>::Output, U1>,
[src]
D: DimSub<U1> + Debug,
N: Debug + Real,
DefaultAllocator: Allocator<N, D, D>,
DefaultAllocator: Allocator<N, <D as DimSub<U1>>::Output, U1>,