|
| | fast_matrix_impl () noexcept |
| | Construction. More...
|
| |
| template<typename VT > |
| | fast_matrix_impl (const VT &value) noexcept requires(std |
| | Construct a fast matrix filled with the same value. More...
|
| |
| | fast_matrix_impl (std::initializer_list< value_type > l) |
| | Construct a fast matrix filled with the given values. More...
|
| |
| | fast_matrix_impl (const storage_impl &data) |
| | Construct a fast matrix directly from storage. More...
|
| |
| | fast_matrix_impl (const fast_matrix_impl &rhs) noexcept |
| | Copy construct a fast matrix. More...
|
| |
| | fast_matrix_impl (fast_matrix_impl &&rhs) noexcept |
| | Move construct a fast matrix. More...
|
| |
| template<std_container Container> |
| | fast_matrix_impl (const Container &container) requires(!is_complex_t< Container > &&std |
| | Construct a fast matrix from the given STL container. More...
|
| |
| fast_matrix_impl & | operator= (const fast_matrix_impl &rhs) noexcept(assert_nothrow) |
| | Copy assign a fast matrix. More...
|
| |
| fast_matrix_impl & | operator= (fast_matrix_impl &&rhs) noexcept |
| | Copy assign a fast matrix. More...
|
| |
| template<size_t... SDims> |
| fast_matrix_impl & | operator= (const fast_matrix_impl< T, ST, SO, SDims... > &rhs) noexcept |
| | Copy assign a fast matrix from a matrix fast matrix type. More...
|
| |
| template<std_container Container> |
| fast_matrix_impl & | operator= (const Container &container) noexcept requires(std |
| | Assign the values of the STL container to the fast matrix. More...
|
| |
| template<etl_expr E> |
| fast_matrix_impl & | operator= (E &&e) requires(std |
| | Assign the values of the ETL expression to the fast matrix. More...
|
| |
| template<typename VT > |
| fast_matrix_impl & | operator= (const VT &value) noexcept requires requires(T &lhs |
| | Assign the value to each element. More...
|
| |
| template<typename Y > |
| auto & | gpu_compute_hint ([[maybe_unused]] Y &y) |
| | Return a GPU computed version of this expression. More...
|
| |
| template<typename Y > |
| const auto & | gpu_compute_hint ([[maybe_unused]] Y &y) const |
| | Return a GPU computed version of this expression. More...
|
| |
| void | swap (fast_matrix_impl &other) |
| | Swap the contents of the matrix with another matrix. More...
|
| |
| template<typename V = default_vec> |
| void | store (vec_type< V > in, size_t i) noexcept |
| | Store several elements in the matrix at once. More...
|
| |
| template<typename V = default_vec> |
| void | storeu (vec_type< V > in, size_t i) noexcept |
| | Store several elements in the matrix at once. More...
|
| |
| template<typename V = default_vec> |
| void | stream (vec_type< V > in, size_t i) noexcept |
| | Store several elements in the matrix at once, using non-temporal store. More...
|
| |
| template<typename V = default_vec> |
| vec_type< V > | load (size_t i) const noexcept |
| | Load several elements of the matrix at once. More...
|
| |
| template<typename V = default_vec> |
| vec_type< V > | loadu (size_t i) const noexcept |
| | Load several elements of the matrix at once. More...
|
| |
| template<typename L > |
| void | assign_to (L &&lhs) const |
| | Assign to the given left-hand-side expression. More...
|
| |
| template<typename L > |
| void | assign_add_to (L &&lhs) const |
| | Add to the given left-hand-side expression. More...
|
| |
| template<typename L > |
| void | assign_sub_to (L &&lhs) const |
| | Subtract from the given left-hand-side expression. More...
|
| |
| template<typename L > |
| void | assign_mul_to (L &&lhs) const |
| | Multiply the given left-hand-side expression. More...
|
| |
| template<typename L > |
| void | assign_div_to (L &&lhs) const |
| | Divide to the given left-hand-side expression. More...
|
| |
| template<typename L > |
| void | assign_mod_to (L &&lhs) const |
| | Modulo the given left-hand-side expression. More...
|
| |
| void | visit ([[maybe_unused]] const detail::evaluator_visitor &visitor) const |
| | Apply the given visitor to this expression and its descendants. More...
|
| |
|
| fast_matrix_base () |
| | Construct a default fast_matrix_base.
|
| |
| | fast_matrix_base (storage_impl data) |
| | Construct a default fast_matrix_base from storage. More...
|
| |
| | fast_matrix_base (const fast_matrix_base &rhs) |
| | Copy Construct a fast_matrix_base. More...
|
| |
| | fast_matrix_base (fast_matrix_base &&rhs) noexcept |
| | Move Construct a fast_matrix_base. More...
|
| |
|
fast_matrix_base & | operator= (const fast_matrix_base &rhs)=delete |
| |
|
fast_matrix_base & | operator= (fast_matrix_base &&rhs)=delete |
| |
| memory_type | memory_start () noexcept |
| | Returns a pointer to the first element in memory. More...
|
| |
| const_memory_type | memory_start () const noexcept |
| | Returns a pointer to the first element in memory. More...
|
| |
| memory_type | memory_end () noexcept |
| | Returns a pointer to the past-the-end element in memory. More...
|
| |
| const_memory_type | memory_end () const noexcept |
| | Returns a pointer to the past-the-end element in memory. More...
|
| |
| size_t | dim (size_t d) const noexcept |
| | Returns the dth dimension of the matrix. More...
|
| |
| auto | operator() (size_t i) noexcept requires(n_dimensions > 1) |
| | Creates a sub view of the matrix, effectively removing the first dimension and fixing it to the given index. More...
|
| |
| auto | operator() (size_t i) const noexcept requires(n_dimensions > 1) |
| | Creates a sub view of the matrix, effectively removing the first dimension and fixing it to the given index. More...
|
| |
| auto | slice (size_t first, size_t last) noexcept |
| | Creates a slice view of the matrix, effectively reducing the first dimension. More...
|
| |
| auto | slice (size_t first, size_t last) const noexcept |
| | Creates a slice view of the matrix, effectively reducing the first dimension. More...
|
| |
| derived_t & | as_derived () noexcept |
| | Returns a reference to the derived object, i.e. the object using the CRTP injector. More...
|
| |
| derived_t & | scale_inplace (E &&e) |
| | Scale the matrix by the factor e, in place. More...
|
| |
|
derived_t & | fflip_inplace () requires(mat_or_vec< derived_t >) |
| | Flip the matrix horizontally and vertically, in place.
|
| |
|
derived_t & | deep_fflip_inplace () |
| | Fully flip each sub 2D matrix in place.
|
| |
|
derived_t & | deep_transpose_inplace () |
| | Transpose each sub 2D matrix in place.
|
| |
|
derived_t & | direct_deep_transpose_inplace () |
| | Transpose each sub 2D matrix in place.
|
| |
| derived_t & | transpose_inplace () requires(etl_2d< derived_t >) |
| | Transpose the matrix in place. More...
|
| |
| derived_t & | direct_transpose_inplace () requires(etl_2d< derived_t >) |
| | Transpose the matrix in place. More...
|
| |
|
derived_t & | fft_inplace () requires(etl_1d< derived_t > &&etl_complex_expr< derived_t >) |
| | Perform inplace 1D FFT of the vector.
|
| |
| derived_t & | fft_many_inplace () requires(matrix< derived_t > &&etl_complex_expr< derived_t >) |
| | Perform many inplace 1D FFT of the matrix. More...
|
| |
|
derived_t & | ifft_inplace () requires(etl_1d< derived_t > &&etl_complex_expr< derived_t >) |
| | Perform inplace 1D Inverse FFT of the vector.
|
| |
|
derived_t & | ifft_many_inplace () requires(matrix< derived_t > &&etl_complex_expr< derived_t >) |
| | Perform many inplace 1D Inverse FFT of the vector.
|
| |
|
derived_t & | fft2_inplace () requires(etl_2d< derived_t > &&etl_complex_expr< derived_t >) |
| | Perform inplace 2D FFT of the matrix.
|
| |
| derived_t & | fft2_many_inplace () requires(deep_mat< derived_t > &&etl_complex_expr< derived_t >) |
| | Perform many inplace 2D FFT of the matrix. More...
|
| |
|
derived_t & | ifft2_inplace () requires(etl_2d< derived_t > &&etl_complex_expr< derived_t >) |
| | Perform inplace 2D Inverse FFT of the matrix.
|
| |
|
derived_t & | ifft2_many_inplace () requires(deep_mat< derived_t > &&etl_complex_expr< derived_t >) |
| | Perform many inplace 2D Inverse FFT of the matrix.
|
| |
| derived_t & | as_derived () noexcept |
| | Returns a reference to the derived object, i.e. the object using the CRTP injector. More...
|
| |
| auto | scale (E &&e) |
| | Scale the expression by a scalar factor or another expression. More...
|
| |
| auto | fflip () |
| | Flip the matrix horizontally and vertically. More...
|
| |
| auto | hflip () |
| | Flip the matrix horizontally. More...
|
| |
| auto | vflip () |
| | Flip the matrix vertically. More...
|
| |
| auto | transpose () |
| | Transpose the matrix. More...
|
| |
| auto | real () |
| | Extract the real part of a complex expression. More...
|
| |
| auto | imag () |
| | Extract the imag part of a complex expression. More...
|
| |
| auto | conj () |
| | Returns a new expression containg the conjugate of each value of the expression. More...
|
| |
| derived_t & | as_derived () noexcept |
| | Returns a reference to the derived object, i.e. the object using the CRTP injector. More...
|
| |
| const derived_t & | as_derived () const noexcept |
| | Returns a reference to the derived object, i.e. the object using the CRTP injector. More...
|
| |
| bool | is_finite () const noexcept |
| | Indicates if the expression contains only finite values. More...
|
| |
| bool | is_zero () const noexcept |
| | Indicates if the expression contains only zero values. More...
|
| |
| bool | is_diagonal () const noexcept |
| | Indicates if the expression is diagonal. More...
|
| |
| bool | is_uniform () const noexcept |
| | Indicates if the expression is uniform, i.e. all elements are of the same value. More...
|
| |
| derived_t & | as_derived () noexcept |
| | Returns a reference to the derived object, i.e. the object using the CRTP injector. More...
|
| |
| const derived_t & | as_derived () const noexcept |
| | Returns a reference to the derived object, i.e. the object using the CRTP injector. More...
|
| |
| auto | begin () noexcept |
| | Return an iterator to the first element of the matrix. More...
|
| |
| auto | begin () const noexcept |
| | Return an iterator to the first element of the matrix. More...
|
| |
| auto | end () noexcept |
| | Return an iterator to the past-the-end element of the matrix. More...
|
| |
| auto | end () const noexcept |
| | Return an iterator to the past-the-end element of the matrix. More...
|
| |
| auto | cbegin () const noexcept |
| | Return an iterator to the first element of the matrix. More...
|
| |
| auto | cend () const noexcept |
| | Return an iterator to the past-the-end element of the matrix. More...
|
| |
| derived_t & | as_derived () noexcept |
| | Returns a reference to the derived object, i.e. the object using the CRTP injector. More...
|
| |
| const derived_t & | as_derived () const noexcept |
| | Returns a reference to the derived object, i.e. the object using the CRTP injector. More...
|
| |
| bool | is_square () const noexcept |
| | Indicates if the expressions is of square dimensions (only for 2d expression) More...
|
| |
| bool | is_rectangular () const noexcept |
| | Indicates if the expressions is of rectangular dimensions (only for 2d expression) More...
|
| |
| bool | is_sub_square () const noexcept |
| | Indicates if the expressions is of square dimensions, ignoring the first dimension (only for 3d expression) More...
|
| |
| bool | is_sub_rectangular () const noexcept |
| | Indicates if the expressions is of rectangular dimensions, ignoring the first dimension (only for 3d expression) More...
|
| |
| bool | is_symmetric () const noexcept |
| | Indicates if the given expression is a symmetric matrix or not. More...
|
| |
| bool | is_lower_triangular () const noexcept |
| | Indicates if the given expression is a lower triangular matrix or not. More...
|
| |
| bool | is_uni_lower_triangular () const noexcept |
| | Indicates if the given expression is a uni lower triangular matrix or not. More...
|
| |
| bool | is_strictly_lower_triangular () const noexcept |
| | Indicates if the given expression is a strictly lower triangular matrix or not. More...
|
| |
| bool | is_upper_triangular () const noexcept |
| | Indicates if the given expression is a upper triangular matrix or not. More...
|
| |
| bool | is_uni_upper_triangular () const noexcept |
| | Indicates if the given expression is a uni upper triangular matrix or not. More...
|
| |
| bool | is_strictly_upper_triangular () const noexcept |
| | Indicates if the given expression is a strictly upper triangular matrix or not. More...
|
| |
| bool | is_triangular () const noexcept |
| | Indicates if the given expression is a triangular matrix or not. More...
|
| |