dune-pdelab  2.0.0
Classes | Public Types | Public Member Functions | List of all members
Dune::PDELab::ISTLMatrixContainer< GFSV, GFSU, C, Stats > Class Template Reference

#include <dune/pdelab/backend/istlmatrixbackend.hh>

Classes

struct  ConstLocalView
 
struct  LocalView
 

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
 

Public Member Functions

template<typename GO >
 ISTLMatrixContainer (const GO &go)
 
template<typename GO >
 ISTLMatrixContainer (const GO &go, Container &container)
 Construct matrix container using an externally given matrix as storage. More...
 
template<typename GO >
 ISTLMatrixContainer (const GO &go, const E &e)
 
 ISTLMatrixContainer (tags::unattached_container=tags::unattached_container())
 Creates an ISTLMatrixContainer without allocating an underlying ISTL matrix. More...
 
 ISTLMatrixContainer (tags::attached_container)
 Creates an ISTLMatrixContainer with an empty underlying ISTL matrix. More...
 
 ISTLMatrixContainer (const ISTLMatrixContainer &rhs)
 
ISTLMatrixContaineroperator= (const ISTLMatrixContainer &rhs)
 
const StatisticsReturnType & patternStatistics () const
 Returns pattern statistics for all contained BCRSMatrix objects. More...
 
void detach ()
 
void attach (shared_ptr< Container > container)
 
bool attached () const
 
const shared_ptr< Container > & storage () const
 
size_type N () const
 
size_type M () const
 
ISTLMatrixContaineroperator= (const E &e)
 
ISTLMatrixContaineroperator*= (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::ISTLMatrixContainer< GFSV, GFSU, C, Stats >::BaseT
template<typename GFSV , typename GFSU , typename C , typename Stats >
typedef C::block_type Dune::PDELab::ISTLMatrixContainer< GFSV, GFSU, C, Stats >::block_type
template<typename GFSV , typename GFSU , typename C , typename Stats >
typedef GFSU::Ordering::Traits::ContainerIndex Dune::PDELab::ISTLMatrixContainer< GFSV, GFSU, C, Stats >::ColIndex
template<typename GFSV , typename GFSU , typename C , typename Stats >
typedef C Dune::PDELab::ISTLMatrixContainer< GFSV, GFSU, C, Stats >::Container
template<typename GFSV , typename GFSU , typename C , typename Stats >
typedef ElementType Dune::PDELab::ISTLMatrixContainer< GFSV, GFSU, C, Stats >::E
template<typename GFSV , typename GFSU , typename C , typename Stats >
typedef C::field_type Dune::PDELab::ISTLMatrixContainer< GFSV, GFSU, C, Stats >::ElementType
template<typename GFSV , typename GFSU , typename C , typename Stats >
typedef C::field_type Dune::PDELab::ISTLMatrixContainer< GFSV, GFSU, C, Stats >::field_type
template<typename GFSV , typename GFSU , typename C , typename Stats >
typedef istl::build_pattern_type<C,GFSV,GFSU,typename GFSV::Ordering::ContainerAllocationTag>::type Dune::PDELab::ISTLMatrixContainer< GFSV, GFSU, C, Stats >::Pattern
template<typename GFSV , typename GFSU , typename C , typename Stats >
typedef Stats Dune::PDELab::ISTLMatrixContainer< GFSV, GFSU, C, Stats >::PatternStatistics
template<typename GFSV , typename GFSU , typename C , typename Stats >
typedef GFSV::Ordering::Traits::ContainerIndex Dune::PDELab::ISTLMatrixContainer< GFSV, GFSU, C, Stats >::RowIndex
template<typename GFSV , typename GFSU , typename C , typename Stats >
typedef C::size_type Dune::PDELab::ISTLMatrixContainer< GFSV, GFSU, C, Stats >::size_type
template<typename GFSV , typename GFSU , typename C , typename Stats >
typedef GFSV Dune::PDELab::ISTLMatrixContainer< GFSV, GFSU, C, Stats >::TestGridFunctionSpace
template<typename GFSV , typename GFSU , typename C , typename Stats >
typedef GFSU Dune::PDELab::ISTLMatrixContainer< GFSV, GFSU, C, Stats >::TrialGridFunctionSpace

Constructor & Destructor Documentation

template<typename GFSV , typename GFSU , typename C , typename Stats >
template<typename GO >
Dune::PDELab::ISTLMatrixContainer< GFSV, GFSU, C, Stats >::ISTLMatrixContainer ( const GO &  go)
inline
template<typename GFSV , typename GFSU , typename C , typename Stats >
template<typename GO >
Dune::PDELab::ISTLMatrixContainer< GFSV, GFSU, C, Stats >::ISTLMatrixContainer ( 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 ISTLMatrixContainer constructor will reassemble the matrix occupation pattern.

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

References e.

template<typename GFSV , typename GFSU , typename C , typename Stats >
Dune::PDELab::ISTLMatrixContainer< GFSV, GFSU, C, Stats >::ISTLMatrixContainer ( tags::unattached_container  = tags::unattached_container())
inlineexplicit

Creates an ISTLMatrixContainer without allocating an underlying ISTL matrix.

template<typename GFSV , typename GFSU , typename C , typename Stats >
Dune::PDELab::ISTLMatrixContainer< GFSV, GFSU, C, Stats >::ISTLMatrixContainer ( tags::attached_container  )
inlineexplicit

Creates an ISTLMatrixContainer with an empty underlying ISTL matrix.

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

Member Function Documentation

template<typename GFSV , typename GFSU , typename C , typename Stats >
void Dune::PDELab::ISTLMatrixContainer< GFSV, GFSU, C, Stats >::attach ( shared_ptr< Container container)
inline
template<typename GFSV , typename GFSU , typename C , typename Stats >
bool Dune::PDELab::ISTLMatrixContainer< GFSV, GFSU, C, Stats >::attached ( ) const
inline
template<typename GFSV , typename GFSU , typename C , typename Stats >
const Container& Dune::PDELab::ISTLMatrixContainer< GFSV, GFSU, C, Stats >::base ( ) const
inline
template<typename GFSV , typename GFSU , typename C , typename Stats >
Container& Dune::PDELab::ISTLMatrixContainer< GFSV, GFSU, C, Stats >::base ( )
inline
template<typename GFSV , typename GFSU , typename C , typename Stats >
void Dune::PDELab::ISTLMatrixContainer< 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::ISTLMatrixContainer< GFSV, GFSU, C, Stats >::detach ( )
inline
template<typename GFSV , typename GFSU , typename C , typename Stats >
void Dune::PDELab::ISTLMatrixContainer< GFSV, GFSU, C, Stats >::finalize ( )
inline
template<typename GFSV , typename GFSU , typename C , typename Stats >
void Dune::PDELab::ISTLMatrixContainer< GFSV, GFSU, C, Stats >::flush ( )
inline
template<typename GFSV , typename GFSU , typename C , typename Stats >
size_type Dune::PDELab::ISTLMatrixContainer< GFSV, GFSU, C, Stats >::M ( ) const
inline
template<typename GFSV , typename GFSU , typename C , typename Stats >
size_type Dune::PDELab::ISTLMatrixContainer< GFSV, GFSU, C, Stats >::N ( ) const
inline
template<typename GFSV , typename GFSU , typename C , typename Stats >
E& Dune::PDELab::ISTLMatrixContainer< 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::ISTLMatrixContainer< GFSV, GFSU, C, Stats >::operator() ( const RowIndex ri,
const ColIndex ci 
) const
inline
template<typename GFSV , typename GFSU , typename C , typename Stats >
ISTLMatrixContainer& Dune::PDELab::ISTLMatrixContainer< GFSV, GFSU, C, Stats >::operator*= ( const E e)
inline

References e.

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

References e.

template<typename GFSV , typename GFSU , typename C , typename Stats >
const StatisticsReturnType& Dune::PDELab::ISTLMatrixContainer< 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 shared_ptr<Container>& Dune::PDELab::ISTLMatrixContainer< GFSV, GFSU, C, Stats >::storage ( ) const
inline

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