tetl 0.1.0
Embedded Template Library
|
Classes | |
struct | accessor_conjugate |
struct | accessor_scaled |
struct | column_major_t |
struct | explicit_diagonal_t |
struct | implicit_unit_diagonal_t |
struct | layout_transpose |
struct | lower_triangle_t |
struct | row_major_t |
struct | upper_triangle_t |
Concepts | |
concept | in_vector |
concept | out_vector |
concept | inout_vector |
concept | in_matrix |
concept | out_matrix |
concept | inout_matrix |
concept | in_object |
concept | out_object |
concept | inout_object |
Functions | |
template<in_object InObj1, in_object InObj2, out_object OutObj> requires (InObj1::rank() == OutObj::rank() and InObj2::rank() == OutObj::rank()) | |
constexpr auto | add (InObj1 x, InObj2 y, OutObj z) -> void |
template<typename ElementType, typename Extents, typename Layout, typename Accessor> | |
constexpr auto | conjugated (mdspan< ElementType, Extents, Layout, Accessor > a) |
template<typename ElementType, typename Extents, typename Layout, typename NestedAccessor> | |
constexpr auto | conjugated (mdspan< ElementType, Extents, Layout, accessor_conjugate< NestedAccessor > > a) |
template<in_object InObj, out_object OutObj> requires (InObj::rank() == OutObj::rank()) | |
constexpr auto | copy (InObj x, OutObj y) -> void |
template<in_vector InVec> | |
constexpr auto | idx_abs_max (InVec v) -> typename InVec::size_type |
template<in_matrix InMat> | |
constexpr auto | matrix_frob_norm (InMat a) |
template<in_matrix InMat, typename Scalar> | |
constexpr auto | matrix_frob_norm (InMat a, Scalar init) -> Scalar |
template<in_matrix InMat, in_vector InVec, out_vector OutVec> | |
constexpr auto | matrix_vector_product (InMat a, InVec x, OutVec y) noexcept -> void |
template<typename Scalar, inout_object InOutObj> | |
constexpr auto | scale (Scalar alpha, InOutObj x) -> void |
template<typename ScalingFactor, typename ElementType, typename Extents, typename Layout, typename Accessor> | |
constexpr auto | scaled (ScalingFactor alpha, mdspan< ElementType, Extents, Layout, Accessor > x) |
template<inout_object InOutObj1, inout_object InOutObj2> requires (InOutObj1::rank() == InOutObj1::rank()) | |
constexpr auto | swap_elements (InOutObj1 x, InOutObj2 y) -> void |
template<in_vector InVec> | |
constexpr auto | vector_abs_sum (InVec v) noexcept -> typename InVec::value_type |
template<in_vector InVec, typename Scalar> | |
constexpr auto | vector_abs_sum (InVec v, Scalar init) noexcept -> Scalar |
template<in_vector InVec> | |
constexpr auto | vector_two_norm (InVec v) noexcept -> typename InVec::value_type |
template<in_vector InVec, typename Scalar> | |
constexpr auto | vector_two_norm (InVec v, Scalar init) noexcept -> Scalar |