16 #ifndef dealii_cuda_solver_direct_h 17 #define dealii_cuda_solver_direct_h 19 #include <deal.II/base/config.h> 21 #ifdef DEAL_II_WITH_CUDA 22 #include <deal.II/base/cuda.h> 23 #include <deal.II/lac/cuda_sparse_matrix.h> 24 #include <deal.II/lac/cuda_vector.h> 25 #include <deal.II/lac/solver_control.h> 27 DEAL_II_NAMESPACE_OPEN
41 template <
typename Number>
51 AdditionalData (
const std::string &solver_type =
"LU_dense");
62 std::string solver_type;
70 const AdditionalData &data = AdditionalData());
110 DEAL_II_NAMESPACE_CLOSE
const AdditionalData additional_data
SolverControl & solver_control
virtual ~SolverDirect()=default
SolverDirect(const Utilities::CUDA::Handle &handle, SolverControl &cn, const AdditionalData &data=AdditionalData())
const Utilities::CUDA::Handle & cuda_handle
SolverControl & control() const
void solve(const SparseMatrix< Number > &A, LinearAlgebra::CUDAWrappers::Vector< Number > &x, const LinearAlgebra::CUDAWrappers::Vector< Number > &b)