dune-fem 2.8.0
Loading...
Searching...
No Matches
Classes | Typedefs | Functions | Variables
Communication

Classes

class  Dune::Fem::ParallelScalarProduct< DiscreteFunction >
 
class  Dune::Fem::AuxiliaryDofs< GridPart, Mapper >
 In parallel computations the dofs of a discrete function are made up by all primary dofs. For technical reasons some dofs exists on multiply processes but are only primary on exactly one process. Dofs on processes that are not primary are called auxiliary. More...
 
struct  Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::ConstIterator
 
class  Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::LinkBuilder
 
struct  Dune::Fem::PrimaryDofs< AuxiliaryDofs >
 In parallel computations the dofs of a discrete function are made up by all primary dofs. For technical reasons some dofs exists on multiply processes but are only primary on exactly one process. More...
 
struct  Dune::Fem::PrimaryDofs< AuxiliaryDofs< GridPart, Mapper > >
 
struct  Dune::Fem::PrimaryDofs< AuxiliaryDofs< GridPart, Mapper > >::ConstIterator
 
class  Dune::Fem::DefaultCommunicationManager< Space >
 default communication manager using just the grids communicate method More...
 
class  Dune::Fem::DefaultCommunicationManager< Space >::NonBlockingCommunication
 
class  Dune::Fem::CommunicationManager< SpaceImp >
 use Default CommunicationManager as Communication Manager More...
 
class  Dune::Fem::CommunicationManagerList
 Proxy class to DependencyCache which is singleton per space. More...
 

Typedefs

typedef DiscreteFunction Dune::Fem::ParallelScalarProduct< DiscreteFunction >::DiscreteFunctionType
 
typedef DiscreteFunctionType::DiscreteFunctionSpaceType Dune::Fem::ParallelScalarProduct< DiscreteFunction >::DiscreteFunctionSpaceType
 type of the discrete function space
 
typedef DiscreteFunctionSpaceType::RangeFieldType Dune::Fem::ParallelScalarProduct< DiscreteFunction >::RangeFieldType
 type of range field
 
typedef DiscreteFunctionSpaceType::BlockMapperType Dune::Fem::ParallelScalarProduct< DiscreteFunction >::MapperType
 type of used mapper
 
typedef AuxiliaryDofs< typename DiscreteFunctionSpaceType::GridPartType, MapperTypeDune::Fem::ParallelScalarProduct< DiscreteFunction >::AuxiliaryDofsType
 
typedef RangeFieldType Dune::Fem::ParallelScalarProduct< DiscreteFunction >::field_type
 
typedef Dune::FieldTraits< RangeFieldType >::real_type Dune::Fem::ParallelScalarProduct< DiscreteFunction >::real_type
 
typedef GridPart Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::GridPartType
 type of grid part
 
typedef Mapper Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::MapperType
 type of used mapper
 
typedef Fem::CommunicationIndexMap Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::IndexMapType
 
typedef AuxiliaryDofs< GridPart, Mapper > Dune::Fem::PrimaryDofs< AuxiliaryDofs< GridPart, Mapper > >::AuxiliaryDofsType
 
typedef Space Dune::Fem::DefaultCommunicationManager< Space >::SpaceType
 
typedef DefaultCommunicationManager< Space > Dune::Fem::DefaultCommunicationManager< Space >::ThisType
 
typedef NonBlockingCommunication Dune::Fem::DefaultCommunicationManager< Space >::NonBlockingCommunicationType
 

Functions

 Dune::Fem::ParallelScalarProduct< DiscreteFunction >::ParallelScalarProduct (const DiscreteFunctionSpaceType &space)
 constructor taking space
 
const DiscreteFunctionSpaceTypeDune::Fem::ParallelScalarProduct< DiscreteFunction >::space () const
 
template<class OtherDiscreteFunctionType >
RangeFieldType Dune::Fem::ParallelScalarProduct< DiscreteFunction >::scalarProductDofs (const DiscreteFunctionType &x, const OtherDiscreteFunctionType &y) const
 evaluate scalar product and omit auxiliary nodes
 
const AuxiliaryDofsTypeDune::Fem::ParallelScalarProduct< DiscreteFunction >::auxiliaryDofs () const
 
template<class DofVector , class OtherDofVector >
RangeFieldType Dune::Fem::ParallelScalarProduct< DiscreteFunction >::dotProduct (const DofVector &x, const OtherDofVector &y) const
 evaluate scalar product on dofVector and omit auxiliary nodes
 
 Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::ConstIterator::ConstIterator ()=default
 
 Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::ConstIterator::ConstIterator (const IndexMapType &auxiliarys, int index)
 
const int & Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::ConstIterator::operator* () const
 
const int * Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::ConstIterator::operator-> () const
 
const int & Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::ConstIterator::operator[] (int n) const noexcept
 
bool Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::ConstIterator::operator== (const ConstIterator &other) const
 
bool Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::ConstIterator::operator!= (const ConstIterator &other) const
 
ConstIteratorDune::Fem::AuxiliaryDofs< GridPart, Mapper >::ConstIterator::operator++ ()
 
ConstIterator Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::ConstIterator::operator++ (int)
 
ThisTypeDune::Fem::AuxiliaryDofs< GridPart, Mapper >::ConstIterator::operator-- () noexcept
 
ThisType Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::ConstIterator::operator-- (int) noexcept
 
ThisTypeDune::Fem::AuxiliaryDofs< GridPart, Mapper >::ConstIterator::operator+= (int n) noexcept
 
ThisTypeDune::Fem::AuxiliaryDofs< GridPart, Mapper >::ConstIterator::operator-= (int n) noexcept
 
ThisType Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::ConstIterator::operator+ (int n) const noexcept
 
ThisType Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::ConstIterator::operator- (int n) const noexcept
 
int Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::ConstIterator::operator- (const ThisType &other) const noexcept
 
bool Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::ConstIterator::operator< (const ThisType &other) const noexcept
 
bool Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::ConstIterator::operator<= (const ThisType &other) const noexcept
 
bool Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::ConstIterator::operator>= (const ThisType &other) const noexcept
 
bool Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::ConstIterator::operator> (const ThisType &other) const noexcept
 
 Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::AuxiliaryDofs (const GridPartType &gridPart, const MapperType &mapper)
 
 Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::AuxiliaryDofs (const AuxiliaryDofs &)=delete
 
int Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::operator[] (const int index) const
 return dof number of auxiliary for index
 
int Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::size () const
 return number of auxiliary dofs
 
ConstIterator Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::begin () const
 
ConstIterator Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::end () const
 
bool Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::contains (int index) const
 return true if index is contained, meaning it is a auxiliary dof
 
bool Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::isSlave (int index) const
 
void Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::rebuild ()
 
const GridPartTypeDune::Fem::AuxiliaryDofs< GridPart, Mapper >::gridPart () const
 
void Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::buildMaps (std::set< int > &auxiliarySet)
 
void Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::buildDiscontinuousMaps (std::set< int > &auxiliarySet)
 
void Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::buildCommunicatedMaps (std::set< int > &auxiliarySet)
 
 Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::LinkBuilder::LinkBuilder (std::set< int > &auxiliarySet, const GridPartType &gridPart, const MapperType &mapper)
 
bool Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::LinkBuilder::contains (int dim, int codim) const
 
bool Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::LinkBuilder::fixedSize (int dim, int codim) const
 
template<class MessageBuffer , class Entity >
void Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::LinkBuilder::gather (MessageBuffer &buffer, const Entity &entity) const
 read buffer and apply operation
 
template<class MessageBuffer , class EntityType >
void Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::LinkBuilder::scatter (MessageBuffer &buffer, const EntityType &entity, std::size_t n)
 
template<class Entity >
std::size_t Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::LinkBuilder::size (const Entity &entity) const
 return local dof size to be communicated
 
template<class Entity >
bool Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::LinkBuilder::sendRank (const Entity &entity) const
 
 Dune::Fem::PrimaryDofs< AuxiliaryDofs< GridPart, Mapper > >::ConstIterator::ConstIterator ()=default
 
 Dune::Fem::PrimaryDofs< AuxiliaryDofs< GridPart, Mapper > >::ConstIterator::ConstIterator (int index, int auxiliary)
 
 Dune::Fem::PrimaryDofs< AuxiliaryDofs< GridPart, Mapper > >::ConstIterator::ConstIterator (const AuxiliaryDofsType &auxiliaryDofs, int index, int auxiliary)
 
int Dune::Fem::PrimaryDofs< AuxiliaryDofs< GridPart, Mapper > >::ConstIterator::operator* () const
 
Envelope< int > Dune::Fem::PrimaryDofs< AuxiliaryDofs< GridPart, Mapper > >::ConstIterator::operator-> () const
 
bool Dune::Fem::PrimaryDofs< AuxiliaryDofs< GridPart, Mapper > >::ConstIterator::operator== (const ConstIterator &other) const
 
bool Dune::Fem::PrimaryDofs< AuxiliaryDofs< GridPart, Mapper > >::ConstIterator::operator!= (const ConstIterator &other) const
 
ConstIterator & Dune::Fem::PrimaryDofs< AuxiliaryDofs< GridPart, Mapper > >::ConstIterator::operator++ ()
 
ConstIterator Dune::Fem::PrimaryDofs< AuxiliaryDofs< GridPart, Mapper > >::ConstIterator::operator++ (int)
 
const AuxiliaryDofsTypeDune::Fem::PrimaryDofs< AuxiliaryDofs< GridPart, Mapper > >::ConstIterator::auxiliaryDofs () const
 
bool Dune::Fem::PrimaryDofs< AuxiliaryDofs< GridPart, Mapper > >::ConstIterator::contains (const int index) const
 
 Dune::Fem::PrimaryDofs< AuxiliaryDofs< GridPart, Mapper > >::PrimaryDofs (const AuxiliaryDofsType &auxiliaryDofs)
 
ConstIterator Dune::Fem::PrimaryDofs< AuxiliaryDofs< GridPart, Mapper > >::begin () const
 
ConstIterator Dune::Fem::PrimaryDofs< AuxiliaryDofs< GridPart, Mapper > >::end () const
 
int Dune::Fem::PrimaryDofs< AuxiliaryDofs< GridPart, Mapper > >::size () const
 
template<class AuxiliaryDofs >
static PrimaryDofs< AuxiliaryDofsDune::Fem::primaryDofs (const AuxiliaryDofs &auxiliaryDofs)
 
template<class AuxiliaryDofs >
static PrimaryDofs< AuxiliaryDofsDune::Fem::masterDofs (const AuxiliaryDofs &auxiliaryDofs)
 
 Dune::Fem::DefaultCommunicationManager< Space >::NonBlockingCommunication::NonBlockingCommunication (const SpaceType &space, InterfaceType interface, CommunicationDirection dir)
 
template<class DiscreteFunction >
void Dune::Fem::DefaultCommunicationManager< Space >::NonBlockingCommunication::send (const DiscreteFunction &discreteFunction)
 send data for given discrete function
 
template<class DiscreteFunctionSpace , class Operation >
double Dune::Fem::DefaultCommunicationManager< Space >::NonBlockingCommunication::receive (PetscDiscreteFunction< DiscreteFunctionSpace > &discreteFunction, const Operation &operation)
 receive data for discrete function and given operation
 
template<class DiscreteFunction , class Operation >
double Dune::Fem::DefaultCommunicationManager< Space >::NonBlockingCommunication::receive (DiscreteFunction &discreteFunction, const Operation &operation)
 receive data for discrete function and given operation
 
template<class DiscreteFunction >
double Dune::Fem::DefaultCommunicationManager< Space >::NonBlockingCommunication::receive (DiscreteFunction &discreteFunction)
 receive method with default operation
 
 Dune::Fem::DefaultCommunicationManager< Space >::DefaultCommunicationManager (const SpaceType &space, const InterfaceType interface, const CommunicationDirection dir)
 constructor taking space and communication interface/direction
 
 Dune::Fem::DefaultCommunicationManager< Space >::DefaultCommunicationManager (const DefaultCommunicationManager &)=delete
 
InterfaceType Dune::Fem::DefaultCommunicationManager< Space >::communicationInterface () const
 return communication interface
 
CommunicationDirection Dune::Fem::DefaultCommunicationManager< Space >::communicationDirection () const
 return communication direction
 
double Dune::Fem::DefaultCommunicationManager< Space >::buildTime () const
 return time needed for last build
 
double Dune::Fem::DefaultCommunicationManager< Space >::exchangeTime () const
 return time needed for last exchange of data
 
NonBlockingCommunicationType Dune::Fem::DefaultCommunicationManager< Space >::nonBlockingCommunication () const
 return object for non-blocking communication
 
template<class DiscreteFunction >
void Dune::Fem::DefaultCommunicationManager< Space >::exchange (DiscreteFunction &discreteFunction) const
 exchange data for a discrete function using the copy operation
 
template<class DiscreteFunction , class Operation >
void Dune::Fem::DefaultCommunicationManager< Space >::exchange (DiscreteFunction &discreteFunction, const Operation &operation) const
 exchange data for a discrete function using the given operation
 
 Dune::Fem::CommunicationManager< SpaceImp >::CommunicationManager (const SpaceImp &space, const InterfaceType interface, const CommunicationDirection dir)
 constructor taking space and communication interface/direction
 
 Dune::Fem::CommunicationManager< SpaceImp >::CommunicationManager (const SpaceImp &space)
 constructor taking space
 
 Dune::Fem::CommunicationManagerList::DiscreteFunctionCommunicatorInterface::DiscreteFunctionCommunicatorInterface ()=default
 
virtual Dune::Fem::CommunicationManagerList::DiscreteFunctionCommunicatorInterface::~DiscreteFunctionCommunicatorInterface ()=default
 
virtual void Dune::Fem::CommunicationManagerList::DiscreteFunctionCommunicatorInterface::exchange () const =0
 
virtual bool Dune::Fem::CommunicationManagerList::DiscreteFunctionCommunicatorInterface::handles (IsDiscreteFunction &df) const =0
 
 Dune::Fem::CommunicationManagerList::DiscreteFunctionCommunicator< DiscreteFunctionImp, Operation >::DiscreteFunctionCommunicator (DiscreteFunctionType &df, const Operation &op)
 constructor taking disctete function
 
void Dune::Fem::CommunicationManagerList::DiscreteFunctionCommunicator< DiscreteFunctionImp, Operation >::exchange () const
 
bool Dune::Fem::CommunicationManagerList::DiscreteFunctionCommunicator< DiscreteFunctionImp, Operation >::handles (IsDiscreteFunction &df) const
 
 Dune::Fem::CommunicationManagerList::CommunicationManagerList ()=default
 
template<class CombinedObjectType >
 Dune::Fem::CommunicationManagerList::CommunicationManagerList (CombinedObjectType &cObj)
 constructor
 
template<class DiscreteFunctionImp , class Operation >
void Dune::Fem::CommunicationManagerList::addToList (DiscreteFunctionImp &df, const Operation &operation)
 add discrete function to communication list
 
template<class DiscreteFunctionImp >
void Dune::Fem::CommunicationManagerList::addToList (DiscreteFunctionImp &df)
 add discrete function to communication list
 
template<class DiscreteFunction >
void Dune::Fem::CommunicationManagerList::removeFromList (DiscreteFunction &df)
 
void Dune::Fem::CommunicationManagerList::exchange () const
 

Variables

const DiscreteFunctionSpaceTypeDune::Fem::ParallelScalarProduct< DiscreteFunction >::space_
 
const GridPartTypeDune::Fem::AuxiliaryDofs< GridPart, Mapper >::gridPart_
 
const MapperTypeDune::Fem::AuxiliaryDofs< GridPart, Mapper >::mapper_
 
IndexMapType Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::auxiliarys_
 
const SpaceTypeDune::Fem::DefaultCommunicationManager< Space >::space_
 
const InterfaceType Dune::Fem::DefaultCommunicationManager< Space >::interface_
 
const CommunicationDirection Dune::Fem::DefaultCommunicationManager< Space >::dir_
 
double Dune::Fem::DefaultCommunicationManager< Space >::exchangeTime_
 

Detailed Description

Typedef Documentation

◆ AuxiliaryDofsType [1/2]

template<class DiscreteFunction >
typedef AuxiliaryDofs< typename DiscreteFunctionSpaceType::GridPartType, MapperType > Dune::Fem::ParallelScalarProduct< DiscreteFunction >::AuxiliaryDofsType

◆ AuxiliaryDofsType [2/2]

template<class GridPart , class Mapper >
typedef AuxiliaryDofs< GridPart, Mapper > Dune::Fem::PrimaryDofs< AuxiliaryDofs< GridPart, Mapper > >::AuxiliaryDofsType

◆ DiscreteFunctionSpaceType

template<class DiscreteFunction >
typedef DiscreteFunctionType::DiscreteFunctionSpaceType Dune::Fem::ParallelScalarProduct< DiscreteFunction >::DiscreteFunctionSpaceType

type of the discrete function space

◆ DiscreteFunctionType

template<class DiscreteFunction >
typedef DiscreteFunction Dune::Fem::ParallelScalarProduct< DiscreteFunction >::DiscreteFunctionType

◆ field_type

template<class DiscreteFunction >
typedef RangeFieldType Dune::Fem::ParallelScalarProduct< DiscreteFunction >::field_type

◆ GridPartType

template<class GridPart , class Mapper >
typedef GridPart Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::GridPartType

type of grid part

◆ IndexMapType

template<class GridPart , class Mapper >
typedef Fem::CommunicationIndexMap Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::IndexMapType
protected

◆ MapperType [1/2]

template<class DiscreteFunction >
typedef DiscreteFunctionSpaceType::BlockMapperType Dune::Fem::ParallelScalarProduct< DiscreteFunction >::MapperType

type of used mapper

◆ MapperType [2/2]

template<class GridPart , class Mapper >
typedef Mapper Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::MapperType

type of used mapper

◆ NonBlockingCommunicationType

template<class Space >
typedef NonBlockingCommunication Dune::Fem::DefaultCommunicationManager< Space >::NonBlockingCommunicationType

◆ RangeFieldType

template<class DiscreteFunction >
typedef DiscreteFunctionSpaceType::RangeFieldType Dune::Fem::ParallelScalarProduct< DiscreteFunction >::RangeFieldType

type of range field

◆ real_type

template<class DiscreteFunction >
typedef Dune::FieldTraits<RangeFieldType>::real_type Dune::Fem::ParallelScalarProduct< DiscreteFunction >::real_type

◆ SpaceType

template<class Space >
typedef Space Dune::Fem::DefaultCommunicationManager< Space >::SpaceType

◆ ThisType

template<class Space >
typedef DefaultCommunicationManager< Space > Dune::Fem::DefaultCommunicationManager< Space >::ThisType
protected

Function Documentation

◆ addToList() [1/2]

template<class DiscreteFunctionImp >
void Dune::Fem::CommunicationManagerList::addToList ( DiscreteFunctionImp &  df)
inline

add discrete function to communication list

◆ addToList() [2/2]

template<class DiscreteFunctionImp , class Operation >
void Dune::Fem::CommunicationManagerList::addToList ( DiscreteFunctionImp &  df,
const Operation &  operation 
)
inline

add discrete function to communication list

◆ auxiliaryDofs() [1/2]

template<class DiscreteFunction >
const AuxiliaryDofsType & Dune::Fem::ParallelScalarProduct< DiscreteFunction >::auxiliaryDofs ( ) const
inline

◆ auxiliaryDofs() [2/2]

template<class GridPart , class Mapper >
const AuxiliaryDofsType & Dune::Fem::PrimaryDofs< AuxiliaryDofs< GridPart, Mapper > >::ConstIterator::auxiliaryDofs ( ) const
inline

◆ AuxiliaryDofs() [1/2]

template<class GridPart , class Mapper >
Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::AuxiliaryDofs ( const AuxiliaryDofs< GridPart, Mapper > &  )
delete

◆ AuxiliaryDofs() [2/2]

template<class GridPart , class Mapper >
Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::AuxiliaryDofs ( const GridPartType gridPart,
const MapperType mapper 
)
inline

◆ begin() [1/2]

template<class GridPart , class Mapper >
ConstIterator Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::begin ( ) const
inline

◆ begin() [2/2]

template<class GridPart , class Mapper >
ConstIterator Dune::Fem::PrimaryDofs< AuxiliaryDofs< GridPart, Mapper > >::begin ( ) const
inline

◆ buildCommunicatedMaps()

template<class GridPart , class Mapper >
void Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::buildCommunicatedMaps ( std::set< int > &  auxiliarySet)
inlineprotected

◆ buildDiscontinuousMaps()

template<class GridPart , class Mapper >
void Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::buildDiscontinuousMaps ( std::set< int > &  auxiliarySet)
inlineprotected

◆ buildMaps()

template<class GridPart , class Mapper >
void Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::buildMaps ( std::set< int > &  auxiliarySet)
inlineprotected

◆ buildTime()

template<class Space >
double Dune::Fem::DefaultCommunicationManager< Space >::buildTime ( ) const
inline

return time needed for last build

Returns
time needed for last build of caches (if needed)

◆ communicationDirection()

template<class Space >
CommunicationDirection Dune::Fem::DefaultCommunicationManager< Space >::communicationDirection ( ) const
inline

return communication direction

◆ communicationInterface()

template<class Space >
InterfaceType Dune::Fem::DefaultCommunicationManager< Space >::communicationInterface ( ) const
inline

return communication interface

◆ CommunicationManager() [1/2]

template<class SpaceImp >
Dune::Fem::CommunicationManager< SpaceImp >::CommunicationManager ( const SpaceImp &  space)
inline

constructor taking space

◆ CommunicationManager() [2/2]

template<class SpaceImp >
Dune::Fem::CommunicationManager< SpaceImp >::CommunicationManager ( const SpaceImp &  space,
const InterfaceType  interface,
const CommunicationDirection  dir 
)
inline

constructor taking space and communication interface/direction

◆ CommunicationManagerList() [1/2]

Dune::Fem::CommunicationManagerList::CommunicationManagerList ( )
default

◆ CommunicationManagerList() [2/2]

template<class CombinedObjectType >
Dune::Fem::CommunicationManagerList::CommunicationManagerList ( CombinedObjectType &  cObj)
inline

constructor

◆ ConstIterator() [1/5]

template<class GridPart , class Mapper >
Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::ConstIterator::ConstIterator ( )
default

◆ ConstIterator() [2/5]

template<class GridPart , class Mapper >
Dune::Fem::PrimaryDofs< AuxiliaryDofs< GridPart, Mapper > >::ConstIterator::ConstIterator ( )
default

◆ ConstIterator() [3/5]

template<class GridPart , class Mapper >
Dune::Fem::PrimaryDofs< AuxiliaryDofs< GridPart, Mapper > >::ConstIterator::ConstIterator ( const AuxiliaryDofsType auxiliaryDofs,
int  index,
int  auxiliary 
)
inline

◆ ConstIterator() [4/5]

template<class GridPart , class Mapper >
Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::ConstIterator::ConstIterator ( const IndexMapType auxiliarys,
int  index 
)
inline

◆ ConstIterator() [5/5]

template<class GridPart , class Mapper >
Dune::Fem::PrimaryDofs< AuxiliaryDofs< GridPart, Mapper > >::ConstIterator::ConstIterator ( int  index,
int  auxiliary 
)
inline

◆ contains() [1/3]

template<class GridPart , class Mapper >
bool Dune::Fem::PrimaryDofs< AuxiliaryDofs< GridPart, Mapper > >::ConstIterator::contains ( const int  index) const
inline

◆ contains() [2/3]

template<class GridPart , class Mapper >
bool Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::LinkBuilder::contains ( int  dim,
int  codim 
) const
inline

◆ contains() [3/3]

template<class GridPart , class Mapper >
bool Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::contains ( int  index) const
inline

return true if index is contained, meaning it is a auxiliary dof

◆ DefaultCommunicationManager() [1/2]

template<class Space >
Dune::Fem::DefaultCommunicationManager< Space >::DefaultCommunicationManager ( const DefaultCommunicationManager< Space > &  )
delete

◆ DefaultCommunicationManager() [2/2]

template<class Space >
Dune::Fem::DefaultCommunicationManager< Space >::DefaultCommunicationManager ( const SpaceType space,
const InterfaceType  interface,
const CommunicationDirection  dir 
)
inlineexplicit

constructor taking space and communication interface/direction

◆ DiscreteFunctionCommunicator()

template<class DiscreteFunctionImp , class Operation >
Dune::Fem::CommunicationManagerList::DiscreteFunctionCommunicator< DiscreteFunctionImp, Operation >::DiscreteFunctionCommunicator ( DiscreteFunctionType &  df,
const Operation &  op 
)
inline

constructor taking disctete function

◆ DiscreteFunctionCommunicatorInterface()

Dune::Fem::CommunicationManagerList::DiscreteFunctionCommunicatorInterface::DiscreteFunctionCommunicatorInterface ( )
protecteddefault

◆ dotProduct()

template<class DiscreteFunction >
template<class DofVector , class OtherDofVector >
RangeFieldType Dune::Fem::ParallelScalarProduct< DiscreteFunction >::dotProduct ( const DofVector &  x,
const OtherDofVector &  y 
) const
inlineprotected

evaluate scalar product on dofVector and omit auxiliary nodes

◆ end() [1/2]

template<class GridPart , class Mapper >
ConstIterator Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::end ( ) const
inline

◆ end() [2/2]

template<class GridPart , class Mapper >
ConstIterator Dune::Fem::PrimaryDofs< AuxiliaryDofs< GridPart, Mapper > >::end ( ) const
inline

◆ exchange() [1/5]

template<class DiscreteFunctionImp , class Operation >
void Dune::Fem::CommunicationManagerList::DiscreteFunctionCommunicator< DiscreteFunctionImp, Operation >::exchange ( ) const
inline

◆ exchange() [2/5]

void Dune::Fem::CommunicationManagerList::exchange ( ) const
inline

exchange discrete function to all procs we share data with by using given OperationImp when receiving data from other procs

◆ exchange() [3/5]

virtual void Dune::Fem::CommunicationManagerList::DiscreteFunctionCommunicatorInterface::exchange ( ) const
pure virtual

◆ exchange() [4/5]

template<class Space >
template<class DiscreteFunction >
void Dune::Fem::DefaultCommunicationManager< Space >::exchange ( DiscreteFunction &  discreteFunction) const
inline

exchange data for a discrete function using the copy operation

Parameters
discreteFunctiondiscrete function to communicate

◆ exchange() [5/5]

template<class Space >
template<class DiscreteFunction , class Operation >
void Dune::Fem::DefaultCommunicationManager< Space >::exchange ( DiscreteFunction &  discreteFunction,
const Operation &  operation 
) const
inline

exchange data for a discrete function using the given operation

The used operation is derived from the type of the op-pointer. The actual pointer is not used.

Parameters
discreteFunctiondiscrete function to communicate
[in]operationa (phony) pointer to an operation

◆ exchangeTime()

template<class Space >
double Dune::Fem::DefaultCommunicationManager< Space >::exchangeTime ( ) const
inline

return time needed for last exchange of data

Returns
time needed for last exchange of data

◆ fixedSize()

template<class GridPart , class Mapper >
bool Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::LinkBuilder::fixedSize ( int  dim,
int  codim 
) const
inline

◆ gather()

template<class GridPart , class Mapper >
template<class MessageBuffer , class Entity >
void Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::LinkBuilder::gather ( MessageBuffer &  buffer,
const Entity &  entity 
) const
inline

read buffer and apply operation

◆ gridPart()

template<class GridPart , class Mapper >
const GridPartType & Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::gridPart ( ) const
inline

◆ handles() [1/2]

template<class DiscreteFunctionImp , class Operation >
bool Dune::Fem::CommunicationManagerList::DiscreteFunctionCommunicator< DiscreteFunctionImp, Operation >::handles ( IsDiscreteFunction df) const
inline

◆ handles() [2/2]

virtual bool Dune::Fem::CommunicationManagerList::DiscreteFunctionCommunicatorInterface::handles ( IsDiscreteFunction df) const
pure virtual

◆ isSlave()

template<class GridPart , class Mapper >
bool Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::isSlave ( int  index) const
inline

◆ LinkBuilder()

template<class GridPart , class Mapper >
Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::LinkBuilder::LinkBuilder ( std::set< int > &  auxiliarySet,
const GridPartType gridPart,
const MapperType mapper 
)
inline

◆ masterDofs()

template<class AuxiliaryDofs >
static PrimaryDofs< AuxiliaryDofs > Dune::Fem::masterDofs ( const AuxiliaryDofs auxiliaryDofs)
inlinestatic

◆ nonBlockingCommunication()

template<class Space >
NonBlockingCommunicationType Dune::Fem::DefaultCommunicationManager< Space >::nonBlockingCommunication ( ) const
inline

return object for non-blocking communication

Returns
NonBlockingCommunicationType containing send and receive facilities

◆ NonBlockingCommunication()

template<class Space >
Dune::Fem::DefaultCommunicationManager< Space >::NonBlockingCommunication::NonBlockingCommunication ( const SpaceType space,
InterfaceType  interface,
CommunicationDirection  dir 
)
inline

◆ operator!=() [1/2]

template<class GridPart , class Mapper >
bool Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::ConstIterator::operator!= ( const ConstIterator other) const
inline

◆ operator!=() [2/2]

template<class GridPart , class Mapper >
bool Dune::Fem::PrimaryDofs< AuxiliaryDofs< GridPart, Mapper > >::ConstIterator::operator!= ( const ConstIterator &  other) const
inline

◆ operator*() [1/2]

template<class GridPart , class Mapper >
const int & Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::ConstIterator::operator* ( ) const
inline

◆ operator*() [2/2]

template<class GridPart , class Mapper >
int Dune::Fem::PrimaryDofs< AuxiliaryDofs< GridPart, Mapper > >::ConstIterator::operator* ( ) const
inline

◆ operator+()

template<class GridPart , class Mapper >
ThisType Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::ConstIterator::operator+ ( int  n) const
inlinenoexcept

◆ operator++() [1/4]

template<class GridPart , class Mapper >
ConstIterator & Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::ConstIterator::operator++ ( )
inline

◆ operator++() [2/4]

template<class GridPart , class Mapper >
ConstIterator & Dune::Fem::PrimaryDofs< AuxiliaryDofs< GridPart, Mapper > >::ConstIterator::operator++ ( )
inline

◆ operator++() [3/4]

template<class GridPart , class Mapper >
ConstIterator Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::ConstIterator::operator++ ( int  )
inline

◆ operator++() [4/4]

template<class GridPart , class Mapper >
ConstIterator Dune::Fem::PrimaryDofs< AuxiliaryDofs< GridPart, Mapper > >::ConstIterator::operator++ ( int  )
inline

◆ operator+=()

template<class GridPart , class Mapper >
ThisType & Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::ConstIterator::operator+= ( int  n)
inlinenoexcept

◆ operator-() [1/2]

template<class GridPart , class Mapper >
int Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::ConstIterator::operator- ( const ThisType other) const
inlinenoexcept

◆ operator-() [2/2]

template<class GridPart , class Mapper >
ThisType Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::ConstIterator::operator- ( int  n) const
inlinenoexcept

◆ operator--() [1/2]

template<class GridPart , class Mapper >
ThisType & Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::ConstIterator::operator-- ( )
inlinenoexcept

◆ operator--() [2/2]

template<class GridPart , class Mapper >
ThisType Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::ConstIterator::operator-- ( int  )
inlinenoexcept

◆ operator-=()

template<class GridPart , class Mapper >
ThisType & Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::ConstIterator::operator-= ( int  n)
inlinenoexcept

◆ operator->() [1/2]

template<class GridPart , class Mapper >
const int * Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::ConstIterator::operator-> ( ) const
inline

◆ operator->() [2/2]

template<class GridPart , class Mapper >
Envelope< int > Dune::Fem::PrimaryDofs< AuxiliaryDofs< GridPart, Mapper > >::ConstIterator::operator-> ( ) const
inline

◆ operator<()

template<class GridPart , class Mapper >
bool Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::ConstIterator::operator< ( const ThisType other) const
inlinenoexcept

◆ operator<=()

template<class GridPart , class Mapper >
bool Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::ConstIterator::operator<= ( const ThisType other) const
inlinenoexcept

◆ operator==() [1/2]

template<class GridPart , class Mapper >
bool Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::ConstIterator::operator== ( const ConstIterator other) const
inline

◆ operator==() [2/2]

template<class GridPart , class Mapper >
bool Dune::Fem::PrimaryDofs< AuxiliaryDofs< GridPart, Mapper > >::ConstIterator::operator== ( const ConstIterator &  other) const
inline

◆ operator>()

template<class GridPart , class Mapper >
bool Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::ConstIterator::operator> ( const ThisType other) const
inlinenoexcept

◆ operator>=()

template<class GridPart , class Mapper >
bool Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::ConstIterator::operator>= ( const ThisType other) const
inlinenoexcept

◆ operator[]() [1/2]

template<class GridPart , class Mapper >
int Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::operator[] ( const int  index) const
inline

return dof number of auxiliary for index

◆ operator[]() [2/2]

template<class GridPart , class Mapper >
const int & Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::ConstIterator::operator[] ( int  n) const
inlinenoexcept

◆ ParallelScalarProduct()

template<class DiscreteFunction >
Dune::Fem::ParallelScalarProduct< DiscreteFunction >::ParallelScalarProduct ( const DiscreteFunctionSpaceType space)
inline

constructor taking space

◆ primaryDofs()

template<class AuxiliaryDofs >
static PrimaryDofs< AuxiliaryDofs > Dune::Fem::primaryDofs ( const AuxiliaryDofs auxiliaryDofs)
inlinestatic

◆ PrimaryDofs()

template<class GridPart , class Mapper >
Dune::Fem::PrimaryDofs< AuxiliaryDofs< GridPart, Mapper > >::PrimaryDofs ( const AuxiliaryDofsType auxiliaryDofs)
inlineexplicit

◆ rebuild()

template<class GridPart , class Mapper >
void Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::rebuild ( )
inline

◆ receive() [1/3]

template<class Space >
template<class DiscreteFunction >
double Dune::Fem::DefaultCommunicationManager< Space >::NonBlockingCommunication::receive ( DiscreteFunction &  discreteFunction)
inline

receive method with default operation

◆ receive() [2/3]

template<class Space >
template<class DiscreteFunction , class Operation >
double Dune::Fem::DefaultCommunicationManager< Space >::NonBlockingCommunication::receive ( DiscreteFunction &  discreteFunction,
const Operation &  operation 
)
inline

receive data for discrete function and given operation

◆ receive() [3/3]

template<class Space >
template<class DiscreteFunctionSpace , class Operation >
double Dune::Fem::DefaultCommunicationManager< Space >::NonBlockingCommunication::receive ( PetscDiscreteFunction< DiscreteFunctionSpace > &  discreteFunction,
const Operation &  operation 
)
inline

receive data for discrete function and given operation

◆ removeFromList()

template<class DiscreteFunction >
void Dune::Fem::CommunicationManagerList::removeFromList ( DiscreteFunction &  df)
inline

◆ scalarProductDofs()

template<class DiscreteFunction >
template<class OtherDiscreteFunctionType >
RangeFieldType Dune::Fem::ParallelScalarProduct< DiscreteFunction >::scalarProductDofs ( const DiscreteFunctionType x,
const OtherDiscreteFunctionType &  y 
) const
inline

evaluate scalar product and omit auxiliary nodes

◆ scatter()

template<class GridPart , class Mapper >
template<class MessageBuffer , class EntityType >
void Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::LinkBuilder::scatter ( MessageBuffer &  buffer,
const EntityType &  entity,
std::size_t  n 
)
inline

read buffer and apply operation scatter is called for one every entity several times depending on how much data was gathered

◆ send()

template<class Space >
template<class DiscreteFunction >
void Dune::Fem::DefaultCommunicationManager< Space >::NonBlockingCommunication::send ( const DiscreteFunction &  discreteFunction)
inline

send data for given discrete function

◆ sendRank()

template<class GridPart , class Mapper >
template<class Entity >
bool Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::LinkBuilder::sendRank ( const Entity &  entity) const
inlineprotected

◆ size() [1/3]

template<class GridPart , class Mapper >
int Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::size ( ) const
inline

return number of auxiliary dofs

◆ size() [2/3]

template<class GridPart , class Mapper >
int Dune::Fem::PrimaryDofs< AuxiliaryDofs< GridPart, Mapper > >::size ( ) const
inline

◆ size() [3/3]

template<class GridPart , class Mapper >
template<class Entity >
std::size_t Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::LinkBuilder::size ( const Entity &  entity) const
inline

return local dof size to be communicated

◆ space()

template<class DiscreteFunction >
const DiscreteFunctionSpaceType & Dune::Fem::ParallelScalarProduct< DiscreteFunction >::space ( ) const
inline

◆ ~DiscreteFunctionCommunicatorInterface()

virtual Dune::Fem::CommunicationManagerList::DiscreteFunctionCommunicatorInterface::~DiscreteFunctionCommunicatorInterface ( )
virtualdefault

Variable Documentation

◆ auxiliarys_

template<class GridPart , class Mapper >
IndexMapType Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::auxiliarys_
protected

◆ dir_

template<class Space >
const CommunicationDirection Dune::Fem::DefaultCommunicationManager< Space >::dir_
protected

◆ exchangeTime_

template<class Space >
double Dune::Fem::DefaultCommunicationManager< Space >::exchangeTime_
mutableprotected

◆ gridPart_

template<class GridPart , class Mapper >
const GridPartType& Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::gridPart_
protected

◆ interface_

template<class Space >
const InterfaceType Dune::Fem::DefaultCommunicationManager< Space >::interface_
protected

◆ mapper_

template<class GridPart , class Mapper >
const MapperType& Dune::Fem::AuxiliaryDofs< GridPart, Mapper >::mapper_
protected

◆ space_ [1/2]

template<class DiscreteFunction >
const DiscreteFunctionSpaceType& Dune::Fem::ParallelScalarProduct< DiscreteFunction >::space_
protected

◆ space_ [2/2]

template<class Space >
const SpaceType& Dune::Fem::DefaultCommunicationManager< Space >::space_
protected