pub struct HankelMatrix<A>{ /* private fields */ }
Expand description
Hankel matrix implementation
A Hankel matrix is represented by its first column and last row, where the last element of the first column must be the same as the first element of the last row.
Implementations§
Source§impl<A> HankelMatrix<A>
impl<A> HankelMatrix<A>
Sourcepub fn new(
_first_col: ArrayView1<'_, A>,
lastrow: ArrayView1<'_, A>,
) -> LinalgResult<Self>
pub fn new( _first_col: ArrayView1<'_, A>, lastrow: ArrayView1<'_, A>, ) -> LinalgResult<Self>
Sourcepub fn from_sequence(
sequence: ArrayView1<'_, A>,
n_rows: usize,
n_cols: usize,
) -> LinalgResult<Self>
pub fn from_sequence( sequence: ArrayView1<'_, A>, n_rows: usize, n_cols: usize, ) -> LinalgResult<Self>
Create a new Hankel matrix from a single sequence
The sequence will be used to form both the first column and last row.
§Arguments
sequence
- The sequence forming the Hankel matrixn_rows
- Number of rows in the resulting matrixn_cols
- Number of columns in the resulting matrix
§Returns
A new HankelMatrix
instance
Trait Implementations§
Source§impl<A> Clone for HankelMatrix<A>
impl<A> Clone for HankelMatrix<A>
Source§fn clone(&self) -> HankelMatrix<A>
fn clone(&self) -> HankelMatrix<A>
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl<A> Debug for HankelMatrix<A>
impl<A> Debug for HankelMatrix<A>
Source§impl<A> StructuredMatrix<A> for HankelMatrix<A>
impl<A> StructuredMatrix<A> for HankelMatrix<A>
Source§fn matvec(&self, x: &ArrayView1<'_, A>) -> LinalgResult<Array1<A>>
fn matvec(&self, x: &ArrayView1<'_, A>) -> LinalgResult<Array1<A>>
Multiply the matrix by a vector (matrix-vector product)
Source§fn matvec_transpose(&self, x: &ArrayView1<'_, A>) -> LinalgResult<Array1<A>>
fn matvec_transpose(&self, x: &ArrayView1<'_, A>) -> LinalgResult<Array1<A>>
Multiply the transpose of the matrix by a vector
Source§fn to_dense(&self) -> LinalgResult<Array2<A>>
fn to_dense(&self) -> LinalgResult<Array2<A>>
Convert the structured matrix to a dense ndarray representation
Source§fn to_operator(&self) -> LinearOperator<A>
fn to_operator(&self) -> LinearOperator<A>
Create a matrix-free operator from this structured matrix
Auto Trait Implementations§
impl<A> Freeze for HankelMatrix<A>
impl<A> RefUnwindSafe for HankelMatrix<A>where
A: RefUnwindSafe,
impl<A> Send for HankelMatrix<A>
impl<A> Sync for HankelMatrix<A>
impl<A> Unpin for HankelMatrix<A>
impl<A> UnwindSafe for HankelMatrix<A>where
A: RefUnwindSafe,
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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