Reference documentation for deal.II version 9.2.0
\(\newcommand{\dealvcentcolon}{\mathrel{\mathop{:}}}\) \(\newcommand{\dealcoloneq}{\dealvcentcolon\mathrel{\mkern-1.2mu}=}\) \(\newcommand{\jump}[1]{\left[\!\left[ #1 \right]\!\right]}\) \(\newcommand{\average}[1]{\left\{\!\left\{ #1 \right\}\!\right\}}\)
Public Types | Public Member Functions | List of all members
LinearAlgebra::VectorSpaceVector< Number > Class Template Referenceabstract

#include <deal.II/lac/vector_space_vector.h>

Inheritance diagram for LinearAlgebra::VectorSpaceVector< Number >:
[legend]

Public Types

using value_type = Number
 
using size_type = types::global_dof_index
 
using real_type = typename numbers::NumberTraits< Number >::real_type
 

Public Member Functions

virtual void reinit (const VectorSpaceVector< Number > &V, const bool omit_zeroing_entries=false)=0
 
virtual VectorSpaceVector< Number > & operator= (const Number s)=0
 
virtual VectorSpaceVector< Number > & operator*= (const Number factor)=0
 
virtual VectorSpaceVector< Number > & operator/= (const Number factor)=0
 
virtual VectorSpaceVector< Number > & operator+= (const VectorSpaceVector< Number > &V)=0
 
virtual VectorSpaceVector< Number > & operator-= (const VectorSpaceVector< Number > &V)=0
 
virtual void import (const ReadWriteVector< Number > &V, VectorOperation::values operation, std::shared_ptr< const CommunicationPatternBase > communication_pattern=std::shared_ptr< const CommunicationPatternBase >())=0
 
virtual Number operator* (const VectorSpaceVector< Number > &V) const =0
 
virtual void add (const Number a)=0
 
virtual void add (const Number a, const VectorSpaceVector< Number > &V)=0
 
virtual void add (const Number a, const VectorSpaceVector< Number > &V, const Number b, const VectorSpaceVector< Number > &W)=0
 
virtual void sadd (const Number s, const Number a, const VectorSpaceVector< Number > &V)=0
 
virtual void scale (const VectorSpaceVector< Number > &scaling_factors)=0
 
virtual void equ (const Number a, const VectorSpaceVector< Number > &V)=0
 
virtual bool all_zero () const =0
 
virtual value_type mean_value () const =0
 
virtual real_type l1_norm () const =0
 
virtual real_type l2_norm () const =0
 
virtual real_type linfty_norm () const =0
 
virtual Number add_and_dot (const Number a, const VectorSpaceVector< Number > &V, const VectorSpaceVector< Number > &W)=0
 
virtual void compress (VectorOperation::values)
 
virtual size_type size () const =0
 
virtual ::IndexSet locally_owned_elements () const =0
 
virtual void print (std::ostream &out, const unsigned int precision=3, const bool scientific=true, const bool across=true) const =0
 
virtual std::size_t memory_consumption () const =0
 
virtual ~VectorSpaceVector ()=default
 

Detailed Description

template<typename Number>
class LinearAlgebra::VectorSpaceVector< Number >

VectorSpaceVector is an abstract class that is used to define the interface that vector classes need to implement when they want to implement global operations. This class is complementary of ReadWriteVector which allows the access of individual elements but does not allow global operations.

Author
Bruno Turcksin, 2015.

Definition at line 57 of file vector_space_vector.h.


The documentation for this class was generated from the following file: