Uni20
Asynchronous tensor and runtime library.
Loading...
Searching...
No Matches
Public Member Functions | List of all members
uni20::krylov::DenseHostVectorOps< Scalar > Class Template Reference

Dense reference operator combined with host vector algebra for prototypes. More...

#include <dense_host_vector.hpp>

Inheritance diagram for uni20::krylov::DenseHostVectorOps< Scalar >:
[legend]
Collaboration diagram for uni20::krylov::DenseHostVectorOps< Scalar >:
[legend]

Public Member Functions

 DenseHostVectorOps (std::size_t dimension, std::vector< Scalar > matrix)
 
void matvec (DenseHostVector< Scalar > &y, DenseHostVector< Scalar > const &x)
 
int matvec_count () const noexcept
 
- Public Member Functions inherited from uni20::krylov::DenseHostVectorAlgebra< Scalar >
DenseHostVector< Scalar > allocate_like (DenseHostVector< Scalar > const &x)
 
DenseHostVector< Scalar > allocate_like (std::span< Scalar const > x)
 Allocate independent owning storage from a retained span's extent.
 
int allocation_count () const noexcept
 
void axpy (DenseHostVector< Scalar > &y, Scalar alpha, DenseHostVector< Scalar > const &x)
 
int axpy_count () const noexcept
 
void copy (DenseHostVector< Scalar > &dst, DenseHostVector< Scalar > const &src)
 
int copy_count () const noexcept
 
 DenseHostVectorAlgebra (std::size_t dimension)
 
std::size_t dimension () const noexcept
 
Scalar inner_product (DenseHostVector< Scalar > const &x, DenseHostVector< Scalar > const &y)
 
int inner_product_count () const noexcept
 
uni20::make_real_t< Scalar > norm (DenseHostVector< Scalar > const &x)
 
int norm_count () const noexcept
 
std::size_t problem_dimension () const noexcept
 
auto prototype_view (DenseHostVector< Scalar > const &&) const =delete
 
auto prototype_view (DenseHostVector< Scalar > const &x) const -> std::span< Scalar const >
 Retain a read-only allocation descriptor without copying vector elements.
 
template<class Element , std::size_t Extent>
requires std::same_as<std::remove_const_t<Element>, Scalar>
auto prototype_view (std::span< Element, Extent > x) const -> std::span< Scalar const >
 Copy a borrowed span descriptor, including a temporary span.
 
void scal (DenseHostVector< Scalar > &x, Scalar alpha)
 
int scal_count () const noexcept
 
void set_zero (DenseHostVector< Scalar > &x)
 
int set_zero_count () const noexcept
 
std::size_t vector_dimension (DenseHostVector< Scalar > const &x) const noexcept
 
std::size_t vector_dimension (std::span< Scalar const > x) const noexcept
 

Detailed Description

template<typename Scalar>
class uni20::krylov::DenseHostVectorOps< Scalar >

Dense reference operator combined with host vector algebra for prototypes.

Constructor & Destructor Documentation

◆ DenseHostVectorOps()

template<typename Scalar >
uni20::krylov::DenseHostVectorOps< Scalar >::DenseHostVectorOps ( std::size_t  dimension,
std::vector< Scalar >  matrix 
)
inline

Member Function Documentation

◆ matvec()

template<typename Scalar >
void uni20::krylov::DenseHostVectorOps< Scalar >::matvec ( DenseHostVector< Scalar > &  y,
DenseHostVector< Scalar > const &  x 
)
inline

◆ matvec_count()

template<typename Scalar >
int uni20::krylov::DenseHostVectorOps< Scalar >::matvec_count ( ) const
inlinenoexcept

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