dune-pdelab  2.4-dev
Public Types | Public Member Functions | List of all members
Dune::PDELab::istl::BCRSMatrix< GFSV, GFSU, C, Stats > Class Template Reference

#include <dune/pdelab/backend/istl/bcrsmatrix.hh>

Inheritance diagram for Dune::PDELab::istl::BCRSMatrix< GFSV, GFSU, C, Stats >:
Inheritance graph

Public Types

typedef C::field_type ElementType
 
typedef ElementType E
 
typedef C Container
 
typedef C BaseT
 
typedef C::field_type field_type
 
typedef C::block_type block_type
 
typedef C::size_type size_type
 
typedef GFSU TrialGridFunctionSpace
 
typedef GFSV TestGridFunctionSpace
 
typedef GFSV::Ordering::Traits::ContainerIndex RowIndex
 
typedef GFSU::Ordering::Traits::ContainerIndex ColIndex
 
typedef istl::build_pattern_type< C, GFSV, GFSU, typename GFSV::Ordering::ContainerAllocationTag >::type Pattern
 
typedef Stats PatternStatistics
 
template<typename RowCache , typename ColCache >
using LocalView = UncachedMatrixView< BCRSMatrix, RowCache, ColCache >
 
template<typename RowCache , typename ColCache >
using ConstLocalView = ConstUncachedMatrixView< const BCRSMatrix, RowCache, ColCache >
 

Public Member Functions

template<typename GO >
 BCRSMatrix (const GO &go)
 
template<typename GO >
 BCRSMatrix (const GO &go, Container &container)
 Construct matrix container using an externally given matrix as storage. More...
 
template<typename GO >
 BCRSMatrix (const GO &go, const E &e)
 
 BCRSMatrix (Backend::unattached_container=Backend::unattached_container())
 Creates an BCRSMatrix without allocating an underlying ISTL matrix. More...
 
 BCRSMatrix (Backend::attached_container)
 Creates an BCRSMatrix with an empty underlying ISTL matrix. More...
 
 BCRSMatrix (const BCRSMatrix &rhs)
 
BCRSMatrixoperator= (const BCRSMatrix &rhs)
 
const StatisticsReturnType & patternStatistics () const
 Returns pattern statistics for all contained BCRSMatrix objects. More...
 
void detach ()
 
void attach (std::shared_ptr< Container > container)
 
bool attached () const
 
const std::shared_ptr< Container > & storage () const
 
size_type N () const
 
size_type M () const
 
BCRSMatrixoperator= (const E &e)
 
BCRSMatrixoperator*= (const E &e)
 
Eoperator() (const RowIndex &ri, const ColIndex &ci)
 
const Eoperator() (const RowIndex &ri, const ColIndex &ci) const
 
const Containerbase () const
 
Containerbase ()
 
void flush ()
 
void finalize ()
 
void clear_row (const RowIndex &ri, const E &diagonal_entry)
 

Member Typedef Documentation

template<typename GFSV , typename GFSU , typename C , typename Stats >
typedef C Dune::PDELab::istl::BCRSMatrix< GFSV, GFSU, C, Stats >::BaseT
template<typename GFSV , typename GFSU , typename C , typename Stats >
typedef C::block_type Dune::PDELab::istl::BCRSMatrix< GFSV, GFSU, C, Stats >::block_type
template<typename GFSV , typename GFSU , typename C , typename Stats >
typedef GFSU::Ordering::Traits::ContainerIndex Dune::PDELab::istl::BCRSMatrix< GFSV, GFSU, C, Stats >::ColIndex
template<typename GFSV , typename GFSU , typename C , typename Stats >
template<typename RowCache , typename ColCache >
using Dune::PDELab::istl::BCRSMatrix< GFSV, GFSU, C, Stats >::ConstLocalView = ConstUncachedMatrixView<const BCRSMatrix,RowCache,ColCache>
template<typename GFSV , typename GFSU , typename C , typename Stats >
typedef C Dune::PDELab::istl::BCRSMatrix< GFSV, GFSU, C, Stats >::Container
template<typename GFSV , typename GFSU , typename C , typename Stats >
typedef ElementType Dune::PDELab::istl::BCRSMatrix< GFSV, GFSU, C, Stats >::E
template<typename GFSV , typename GFSU , typename C , typename Stats >
typedef C::field_type Dune::PDELab::istl::BCRSMatrix< GFSV, GFSU, C, Stats >::ElementType
template<typename GFSV , typename GFSU , typename C , typename Stats >
typedef C::field_type Dune::PDELab::istl::BCRSMatrix< GFSV, GFSU, C, Stats >::field_type
template<typename GFSV , typename GFSU , typename C , typename Stats >
template<typename RowCache , typename ColCache >
using Dune::PDELab::istl::BCRSMatrix< GFSV, GFSU, C, Stats >::LocalView = UncachedMatrixView<BCRSMatrix,RowCache,ColCache>
template<typename GFSV , typename GFSU , typename C , typename Stats >
typedef istl::build_pattern_type<C,GFSV,GFSU,typename GFSV::Ordering::ContainerAllocationTag>::type Dune::PDELab::istl::BCRSMatrix< GFSV, GFSU, C, Stats >::Pattern
template<typename GFSV , typename GFSU , typename C , typename Stats >
typedef Stats Dune::PDELab::istl::BCRSMatrix< GFSV, GFSU, C, Stats >::PatternStatistics
template<typename GFSV , typename GFSU , typename C , typename Stats >
typedef GFSV::Ordering::Traits::ContainerIndex Dune::PDELab::istl::BCRSMatrix< GFSV, GFSU, C, Stats >::RowIndex
template<typename GFSV , typename GFSU , typename C , typename Stats >
typedef C::size_type Dune::PDELab::istl::BCRSMatrix< GFSV, GFSU, C, Stats >::size_type
template<typename GFSV , typename GFSU , typename C , typename Stats >
typedef GFSV Dune::PDELab::istl::BCRSMatrix< GFSV, GFSU, C, Stats >::TestGridFunctionSpace
template<typename GFSV , typename GFSU , typename C , typename Stats >
typedef GFSU Dune::PDELab::istl::BCRSMatrix< GFSV, GFSU, C, Stats >::TrialGridFunctionSpace

Constructor & Destructor Documentation

template<typename GFSV , typename GFSU , typename C , typename Stats >
template<typename GO >
Dune::PDELab::istl::BCRSMatrix< GFSV, GFSU, C, Stats >::BCRSMatrix ( const GO &  go)
inlineexplicit
template<typename GFSV , typename GFSU , typename C , typename Stats >
template<typename GO >
Dune::PDELab::istl::BCRSMatrix< GFSV, GFSU, C, Stats >::BCRSMatrix ( const GO &  go,
Container container 
)
inline

Construct matrix container using an externally given matrix as storage.

Template Parameters
GOGridOperator type used to assemble into the matrix
Parameters
goGridOperator object used to assemble into the matrix
containerISTL matrix type that stores the actual data

This BCRSMatrix constructor will reassemble the matrix occupation pattern.

template<typename GFSV , typename GFSU , typename C , typename Stats >
template<typename GO >
Dune::PDELab::istl::BCRSMatrix< GFSV, GFSU, C, Stats >::BCRSMatrix ( const GO &  go,
const E e 
)
inline

References e.

template<typename GFSV , typename GFSU , typename C , typename Stats >
Dune::PDELab::istl::BCRSMatrix< GFSV, GFSU, C, Stats >::BCRSMatrix ( Backend::unattached_container  = Backend::unattached_container())
inlineexplicit

Creates an BCRSMatrix without allocating an underlying ISTL matrix.

template<typename GFSV , typename GFSU , typename C , typename Stats >
Dune::PDELab::istl::BCRSMatrix< GFSV, GFSU, C, Stats >::BCRSMatrix ( Backend::attached_container  )
inlineexplicit

Creates an BCRSMatrix with an empty underlying ISTL matrix.

template<typename GFSV , typename GFSU , typename C , typename Stats >
Dune::PDELab::istl::BCRSMatrix< GFSV, GFSU, C, Stats >::BCRSMatrix ( const BCRSMatrix< GFSV, GFSU, C, Stats > &  rhs)
inline

Member Function Documentation

template<typename GFSV , typename GFSU , typename C , typename Stats >
void Dune::PDELab::istl::BCRSMatrix< GFSV, GFSU, C, Stats >::attach ( std::shared_ptr< Container container)
inline
template<typename GFSV , typename GFSU , typename C , typename Stats >
bool Dune::PDELab::istl::BCRSMatrix< GFSV, GFSU, C, Stats >::attached ( ) const
inline
template<typename GFSV , typename GFSU , typename C , typename Stats >
const Container& Dune::PDELab::istl::BCRSMatrix< GFSV, GFSU, C, Stats >::base ( ) const
inline
Deprecated:
"base() is deprecated and will be removed after PDELab 2.4. Use Backend::native() instead."
template<typename GFSV , typename GFSU , typename C , typename Stats >
Container& Dune::PDELab::istl::BCRSMatrix< GFSV, GFSU, C, Stats >::base ( )
inline
Deprecated:
"base() is deprecated and will be removed after PDELab 2.4. Use Backend::native() instead."
template<typename GFSV , typename GFSU , typename C , typename Stats >
void Dune::PDELab::istl::BCRSMatrix< GFSV, GFSU, C, Stats >::clear_row ( const RowIndex ri,
const E diagonal_entry 
)
inline
template<typename GFSV , typename GFSU , typename C , typename Stats >
void Dune::PDELab::istl::BCRSMatrix< GFSV, GFSU, C, Stats >::detach ( )
inline
template<typename GFSV , typename GFSU , typename C , typename Stats >
void Dune::PDELab::istl::BCRSMatrix< GFSV, GFSU, C, Stats >::finalize ( )
inline
template<typename GFSV , typename GFSU , typename C , typename Stats >
void Dune::PDELab::istl::BCRSMatrix< GFSV, GFSU, C, Stats >::flush ( )
inline
template<typename GFSV , typename GFSU , typename C , typename Stats >
size_type Dune::PDELab::istl::BCRSMatrix< GFSV, GFSU, C, Stats >::M ( ) const
inline
template<typename GFSV , typename GFSU , typename C , typename Stats >
size_type Dune::PDELab::istl::BCRSMatrix< GFSV, GFSU, C, Stats >::N ( ) const
inline
template<typename GFSV , typename GFSU , typename C , typename Stats >
E& Dune::PDELab::istl::BCRSMatrix< GFSV, GFSU, C, Stats >::operator() ( const RowIndex ri,
const ColIndex ci 
)
inline
template<typename GFSV , typename GFSU , typename C , typename Stats >
const E& Dune::PDELab::istl::BCRSMatrix< GFSV, GFSU, C, Stats >::operator() ( const RowIndex ri,
const ColIndex ci 
) const
inline
template<typename GFSV , typename GFSU , typename C , typename Stats >
BCRSMatrix& Dune::PDELab::istl::BCRSMatrix< GFSV, GFSU, C, Stats >::operator*= ( const E e)
inline

References e.

template<typename GFSV , typename GFSU , typename C , typename Stats >
BCRSMatrix& Dune::PDELab::istl::BCRSMatrix< GFSV, GFSU, C, Stats >::operator= ( const BCRSMatrix< GFSV, GFSU, C, Stats > &  rhs)
inline
template<typename GFSV , typename GFSU , typename C , typename Stats >
BCRSMatrix& Dune::PDELab::istl::BCRSMatrix< GFSV, GFSU, C, Stats >::operator= ( const E e)
inline

References e.

template<typename GFSV , typename GFSU , typename C , typename Stats >
const StatisticsReturnType& Dune::PDELab::istl::BCRSMatrix< GFSV, GFSU, C, Stats >::patternStatistics ( ) const
inline

Returns pattern statistics for all contained BCRSMatrix objects.

template<typename GFSV , typename GFSU , typename C , typename Stats >
const std::shared_ptr<Container>& Dune::PDELab::istl::BCRSMatrix< GFSV, GFSU, C, Stats >::storage ( ) const
inline

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