Uni20
Asynchronous tensor and runtime library.
Loading...
Searching...
No Matches
Classes | Namespaces | Functions
vector_space.hpp File Reference
#include <uni20/core/runtime_precision.hpp>
#include <uni20/krylov/matrix_free.hpp>
#include <type_traits>
#include <utility>
Include dependency graph for vector_space.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  uni20::krylov::KrylovVectorSpace< S, Ops, Prototype >
 An opaque vector space with one explicit arithmetic precision. More...
 

Namespaces

namespace  uni20
 
namespace  uni20::krylov
 
namespace  uni20::krylov::gmres_detail
 

Functions

template<RealOrComplex To, RealOrComplex From>
requires (Complex<To> == Complex<From>)
To uni20::krylov::gmres_detail::convert_scalar (From const &value, Precision p)
 
template<RealOrComplex S, class Ops , class V >
requires (!has_runtime_precision_v<S>) && requires(Ops& ops, V&& source) { ops.prototype_view(std::forward<V>(source)); }
auto uni20::krylov::krylov_space (Ops &ops, V &&source)
 Bind fixed-scalar vector operations at native precision.
 
template<RealOrComplex S, class Ops , class V >
requires requires(Ops& ops, V&& source) { ops.prototype_view(std::forward<V>(source)); }
auto uni20::krylov::krylov_space (Ops &ops, V &&source, Precision p)
 Bind vector operations and an allocation prototype to finite precision.