Skip to content

Commit

Permalink
Add a Tpetra-based version of Trilinos SparseMatrix and SparsityPattern.
Browse files Browse the repository at this point in the history
  • Loading branch information
Sebastian Kinnewig authored and kinnewig committed Jan 9, 2024
1 parent 239f11e commit f0eaee6
Show file tree
Hide file tree
Showing 12 changed files with 3,955 additions and 1 deletion.
2 changes: 2 additions & 0 deletions cmake/config/template-arguments.in
Original file line number Diff line number Diff line change
Expand Up @@ -242,6 +242,8 @@ TRIANGULATIONS := { Triangulation<deal_II_dimension, deal_II_space_dimension>;
parallel::distributed::Triangulation<deal_II_dimension, deal_II_space_dimension>;
parallel::fullydistributed::Triangulation<deal_II_dimension, deal_II_space_dimension>; }

TRILINOS_SCALARS := { @DEAL_II_EXPAND_TPETRA_TYPES@; }

// all supported logical dimensions
DIMENSIONS := { 1; 2; 3 }

Expand Down
1 change: 1 addition & 0 deletions cmake/configure/configure_20_trilinos.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -481,6 +481,7 @@ macro(feature_trilinos_configure_external)

if(${DEAL_II_TRILINOS_WITH_TPETRA})
if(DEAL_II_HAVE_TPETRA_INST_DOUBLE)
set(DEAL_II_EXPAND_TPETRA_TYPES "double")
set(DEAL_II_EXPAND_TPETRA_VECTOR_DOUBLE "LinearAlgebra::TpetraWrappers::Vector<double>")
endif()
if(DEAL_II_HAVE_TPETRA_INST_FLOAT)
Expand Down
5 changes: 5 additions & 0 deletions doc/news/changes/major/20231122SebastianKinnewig
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
New: LinearAlgebra::TpetraWrappers::SparseMatrix class
that implements a wrapper for Tpetra::CrsMatrix.
<br>
(Sebastian Kinnewig, 2023/11/22)

5 changes: 4 additions & 1 deletion include/deal.II/base/template_constraints.h
Original file line number Diff line number Diff line change
Expand Up @@ -670,7 +670,10 @@ namespace LinearAlgebra
{
template <typename Number>
class Vector;
}

template <typename Number, typename NodeType>
class SparseMatrix;
} // namespace TpetraWrappers
# endif
} // namespace LinearAlgebra
#endif
Expand Down
2 changes: 2 additions & 0 deletions include/deal.II/lac/affine_constraints.templates.h
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,8 @@
#include <deal.II/lac/trilinos_block_sparse_matrix.h>
#include <deal.II/lac/trilinos_parallel_block_vector.h>
#include <deal.II/lac/trilinos_sparse_matrix.h>
#include <deal.II/lac/trilinos_tpetra_sparse_matrix.h>
#include <deal.II/lac/trilinos_tpetra_vector.h>
#include <deal.II/lac/trilinos_vector.h>

#include <boost/serialization/complex.hpp>
Expand Down

0 comments on commit f0eaee6

Please sign in to comment.