Uni20
Asynchronous tensor and runtime library.
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
uni20::krylov::symmetric_tridiagonal_view< Real > Struct Template Reference

Non-owning read-only view of a real symmetric tridiagonal matrix. More...

#include <tridiagonal.hpp>

Public Member Functions

constexpr bool empty () const noexcept
 
Real operator[] (std::size_t row, std::size_t column) const
 
constexpr std::size_t size () const noexcept
 
 symmetric_tridiagonal_view (std::span< Real const > diagonal_in, std::span< Real const > offdiagonal_in)
 

Public Attributes

std::span< Real const > const diagonal
 
std::span< Real const > const offdiagonal
 

Detailed Description

template<uni20::Real Real>
struct uni20::krylov::symmetric_tridiagonal_view< Real >

Non-owning read-only view of a real symmetric tridiagonal matrix.

Template Parameters
RealReal floating-point scalar type.

The matrix is represented by its diagonal d[0..n) and offdiagonal e[0..n-1), where e[i] is both element (i, i + 1) and (i + 1, i). This is the natural projected matrix format produced by Hermitian Lanczos, including complex-Hermitian problems, whose Lanczos projection is real symmetric tridiagonal.

Constructor & Destructor Documentation

◆ symmetric_tridiagonal_view()

template<uni20::Real Real>
uni20::krylov::symmetric_tridiagonal_view< Real >::symmetric_tridiagonal_view ( std::span< Real const >  diagonal_in,
std::span< Real const >  offdiagonal_in 
)
inline

Member Function Documentation

◆ empty()

template<uni20::Real Real>
constexpr bool uni20::krylov::symmetric_tridiagonal_view< Real >::empty ( ) const
inlineconstexprnoexcept

◆ operator[]()

template<uni20::Real Real>
Real uni20::krylov::symmetric_tridiagonal_view< Real >::operator[] ( std::size_t  row,
std::size_t  column 
) const
inline

◆ size()

template<uni20::Real Real>
constexpr std::size_t uni20::krylov::symmetric_tridiagonal_view< Real >::size ( ) const
inlineconstexprnoexcept

Member Data Documentation

◆ diagonal

template<uni20::Real Real>
std::span<Real const> const uni20::krylov::symmetric_tridiagonal_view< Real >::diagonal

◆ offdiagonal

template<uni20::Real Real>
std::span<Real const> const uni20::krylov::symmetric_tridiagonal_view< Real >::offdiagonal

The documentation for this struct was generated from the following file: