TRIQS/nda 2.0.0
Multi-dimensional array library for C++
Loading...
Searching...
No Matches
geqrf_batch.hpp
#include "./geqrf.hpp"
#include "./interface/cxx_interface.hpp"
#include "../basic_array.hpp"
#include "../basic_functions.hpp"
#include "../blas/interface/cxx_interface.hpp"
#include "../blas/tools.hpp"
#include "../concepts.hpp"
#include "../declarations.hpp"
#include "../device.hpp"
#include "../layout_transforms.hpp"
#include "../macros.hpp"
#include "../mem/address_space.hpp"
#include "../traits.hpp"
#include <algorithm>
#include <type_traits>
#include <utility>

Detailed Description

Provides a generic interface to batched versions of the LAPACK/cuSOLVER geqrf routine.

Definition in file geqrf_batch.hpp.

Go to the source code of this file.

Functions

template<BlasArray< 3 > A, BlasArrayFor< A, 2 > TAU, BlasArrayFor< A, 1 > W = vector_value_t<A>>
requires (has_F_layout<A, TAU>)
int nda::lapack::geqrf (A &&a, TAU &&tau, W &&work=vector_value_t< A >{})
 Generic-friendly overload of nda::lapack::geqrf for batches stored as 3-dimensional arrays.
template<BlasArray< 3 > A, BlasArrayFor< A, 2 > TAU, BlasArrayFor< A, 1 > W = vector_value_t<A>>
requires (has_F_layout<A, TAU>)
int nda::lapack::geqrf_batch (A &&a, TAU &&tau, W &&work=vector_value_t< A >{})
 Interface to batched versions of the LAPACK/cuSOLVER geqrf routine.

Function Documentation

◆ geqrf()

template<BlasArray< 3 > A, BlasArrayFor< A, 2 > TAU, BlasArrayFor< A, 1 > W = vector_value_t<A>>
requires (has_F_layout<A, TAU>)
int nda::lapack::geqrf ( A && a,
TAU && tau,
W && work = vector_value_t<A>{} )

Generic-friendly overload of nda::lapack::geqrf for batches stored as 3-dimensional arrays.

It simply calls nda::lapack::geqrf_batch and lets generic code call geqrf(...) regardless of whether the input is a single matrix (rank 2) or a batch (rank 3).

Definition at line 111 of file geqrf_batch.hpp.