9 #ifndef _COMPADRE_LINEAR_ALGEBRA_DECLARATIONS_HPP_
10 #define _COMPADRE_LINEAR_ALGEBRA_DECLARATIONS_HPP_
12 #include "Compadre_Config.h"
18 namespace GMLS_LinearAlgebra {
26 KOKKOS_INLINE_FUNCTION
55 template <
typename A_layout=layout_right,
typename B_layout=layout_right,
typename X_layout=layout_right>
56 void batchQRPivotingSolve(ParallelManager pm,
double *A,
int lda,
int nda,
double *B,
int ldb,
int ndb,
int M,
int N,
int NRHS,
const int num_matrices,
const bool implicit_RHS =
true);
team_policy::member_type member_type
KOKKOS_INLINE_FUNCTION void largestTwoEigenvectorsThreeByThreeSymmetric(const member_type &teamMember, scratch_matrix_right_type V, scratch_matrix_right_type PtP, const int dimensions, pool_type &random_number_pool)
Calculates two eigenvectors corresponding to two dominant eigenvalues.
void batchQRPivotingSolve(ParallelManager pm, double *A, int lda, int nda, double *B, int ldb, int ndb, int M, int N, int NRHS, const int num_matrices, const bool implicit_RHS)
Solves a batch of problems with QR+Pivoting.
Kokkos::View< double **, layout_right, Kokkos::MemoryTraits< Kokkos::Unmanaged > > scratch_matrix_right_type
Kokkos::Random_XorShift64_Pool pool_type