16#ifndef dealii_trilinos_epetra_vector_h
17#define dealii_trilinos_epetra_vector_h
22#ifdef DEAL_II_WITH_TRILINOS
33# include <Epetra_FEVector.h>
42 template <
typename Number>
43 class ReadWriteVector;
52 namespace EpetraWrappers
96 const bool omit_zeroing_entries =
false);
104 const bool omit_zeroing_entries =
false)
override;
133 std::shared_ptr<const Utilities::MPI::CommunicationPatternBase>
134 communication_pattern = {})
override;
139 DEAL_II_DEPRECATED_EARLY
143 std::shared_ptr<const Utilities::MPI::CommunicationPatternBase>
144 communication_pattern = {})
override
184 add(
const double a)
override;
298 size()
const override;
331 const Epetra_FEVector &
345 print(std::ostream & out,
346 const unsigned int precision = 3,
347 const bool scientific =
true,
348 const bool across =
true)
const override;
376 <<
"An error with error number " << arg1
377 <<
" occurred while calling a Trilinos function");
virtual double mean_value() const override
virtual Vector & operator/=(const double factor) override
bool has_ghost_elements() const
virtual double l2_norm() const override
Vector & operator=(const Vector &V)
MPI_Comm get_mpi_communicator() const
std::unique_ptr< Epetra_FEVector > vector
const Epetra_FEVector & trilinos_vector() const
virtual double l1_norm() const override
virtual ::IndexSet locally_owned_elements() const override
virtual double add_and_dot(const double a, const VectorSpaceVector< double > &V, const VectorSpaceVector< double > &W) override
virtual void scale(const VectorSpaceVector< double > &scaling_factors) override
virtual double operator*(const VectorSpaceVector< double > &V) const override
virtual void import_elements(const ReadWriteVector< double > &V, VectorOperation::values operation, std::shared_ptr< const Utilities::MPI::CommunicationPatternBase > communication_pattern={}) override
virtual size_type size() const override
virtual void print(std::ostream &out, const unsigned int precision=3, const bool scientific=true, const bool across=true) const override
virtual Vector & operator-=(const VectorSpaceVector< double > &V) override
size_type locally_owned_size() const
virtual double linfty_norm() const override
virtual bool all_zero() const override
void create_epetra_comm_pattern(const IndexSet &source_index_set, const MPI_Comm mpi_comm)
virtual void add(const double a) override
::IndexSet source_stored_elements
virtual void equ(const double a, const VectorSpaceVector< double > &V) override
virtual std::size_t memory_consumption() const override
std::shared_ptr< const CommunicationPattern > epetra_comm_pattern
virtual Vector & operator*=(const double factor) override
virtual Vector & operator+=(const VectorSpaceVector< double > &V) override
void reinit(const IndexSet ¶llel_partitioner, const MPI_Comm communicator, const bool omit_zeroing_entries=false)
virtual void sadd(const double s, const double a, const VectorSpaceVector< double > &V) override
types::global_dof_index size_type
#define DEAL_II_NAMESPACE_OPEN
#define DEAL_II_NAMESPACE_CLOSE
static ::ExceptionBase & ExcVectorTypeNotCompatible()
#define DeclException0(Exception0)
static ::ExceptionBase & ExcTrilinosError(int arg1)
static ::ExceptionBase & ExcDifferentParallelPartitioning()
#define DeclException1(Exception1, type1, outsequence)