20 #ifndef AMESOS2_LAPACK_DECL_HPP 
   21 #define AMESOS2_LAPACK_DECL_HPP 
   23 #include <Teuchos_ScalarTraits.hpp> 
   24 #include <Teuchos_SerialDenseSolver.hpp> 
   25 #include <Teuchos_SerialDenseMatrix.hpp> 
   28 #include "Amesos2_SolverCore.hpp" 
   44   template <
class Matrix,
 
   60     typedef typename super_type::scalar_type                              scalar_type;
 
   61     typedef typename super_type::local_ordinal_type                local_ordinal_type;
 
   62     typedef typename super_type::global_ordinal_type              global_ordinal_type;
 
   63     typedef typename super_type::global_size_type                    global_size_type;
 
   66     typedef typename MatrixTraits<Matrix>::impl_scalar_type          impl_scalar_type;
 
   68     typedef typename Teuchos::ScalarTraits<scalar_type>::magnitudeType magnitude_type;
 
   70     typedef Kokkos::DefaultHostExecutionSpace              HostExecSpaceType;
 
   71     typedef Kokkos::View<int*, HostExecSpaceType>          host_size_type_array;
 
   72     typedef Kokkos::View<int*, HostExecSpaceType>          host_ordinal_type_array;
 
   73     typedef Kokkos::View<impl_scalar_type*, HostExecSpaceType>  host_value_type_array;
 
   84     Lapack(Teuchos::RCP<const Matrix> A,
 
   85      Teuchos::RCP<Vector>       X,
 
   86      Teuchos::RCP<const Vector> B);
 
  126     int 
solve_impl(const Teuchos::Ptr<MultiVecAdapter<Vector> >       X,
 
  127        const Teuchos::Ptr<const MultiVecAdapter<Vector> > B) const;
 
  194     Teuchos::SerialDenseMatrix<int,scalar_type> 
lu_;
 
  198     mutable Teuchos::SerialDenseSolver<int,scalar_type> 
solver_;
 
  220     typedef Meta::make_list2<float, double> supported_scalars;
 
  226 #endif  // AMESOS2_NEWSOLVER_DECL_HPP 
Teuchos::Array< int > colptr_
Stores the location in Ai_ and Aval_ that starts col j. 
Definition: Amesos2_Lapack_decl.hpp:180
Amesos2::SolverCore: A templated interface for interaction with third-party direct sparse solvers...
Definition: Amesos2_SolverCore_decl.hpp:71
Amesos2 interface to the LAPACK. 
Definition: Amesos2_Lapack_decl.hpp:46
int symbolicFactorization_impl()
No-op. 
Definition: Amesos2_Lapack_def.hpp:63
host_size_type_array colptr_view_
Stores the row indices of the nonzero entries. 
Definition: Amesos2_Lapack_decl.hpp:190
Teuchos::SerialDenseMatrix< int, scalar_type > lu_
L and U storage. 
Definition: Amesos2_Lapack_decl.hpp:194
Teuchos::SerialDenseSolver< int, scalar_type > solver_
The serial solver. 
Definition: Amesos2_Lapack_decl.hpp:198
void setParameters_impl(const Teuchos::RCP< Teuchos::ParameterList > ¶meterList)
Definition: Amesos2_Lapack_def.hpp:183
Teuchos::Array< int > rowind_
Stores the column indices of the nonzero entries. 
Definition: Amesos2_Lapack_decl.hpp:177
Provides traits about solvers. 
Definition: Amesos2_SolverTraits.hpp:37
bool matrixShapeOK_impl() const 
Determines whether the shape of the matrix is OK for this solver. 
Definition: Amesos2_Lapack_def.hpp:172
host_value_type_array nzvals_view_
Stores the values of the nonzero entries for Umfpack. 
Definition: Amesos2_Lapack_decl.hpp:186
Teuchos::Array< scalar_type > nzvals_
Stores the values of the nonzero entries. 
Definition: Amesos2_Lapack_decl.hpp:174
std::string name() const override
Return the name of this solver. 
Definition: Amesos2_SolverCore_def.hpp:746
int preOrdering_impl()
No-op. 
Definition: Amesos2_Lapack_def.hpp:55
Teuchos::RCP< const Teuchos::ParameterList > getValidParameters_impl() const 
Definition: Amesos2_Lapack_def.hpp:199
int solve_impl(const Teuchos::Ptr< MultiVecAdapter< Vector > > X, const Teuchos::Ptr< const MultiVecAdapter< Vector > > B) const 
Lapack solve. 
Definition: Amesos2_Lapack_def.hpp:98
bool loadA_impl(EPhase current_phase)
Reads matrix data into internal structures. 
Definition: Amesos2_Lapack_def.hpp:223
Provides access to interesting solver traits. 
host_ordinal_type_array rowind_view_
Stores the location in Ai_ and Aval_ that starts row j. 
Definition: Amesos2_Lapack_decl.hpp:188
Teuchos::Array< scalar_type > rhsvals_
Store for RHS and Solution values. 
Definition: Amesos2_Lapack_decl.hpp:182
int numericFactorization_impl()
Perform numeric factorization using LAPACK. 
Definition: Amesos2_Lapack_def.hpp:71