|
dune-fem 2.12-git
|
Loading...
Searching...
No Matches
blockdiagonal.hh
Go to the documentation of this file.
87 DUNE_THROW( InvalidStateException, "BlockDiagonalLinearOperator must be created with identical spaces." );
204 LocalMatrixType localMatrix ( const DomainEntityType &domainEntity, const RangeEntityType &rangeEntity ) const;
453 inline typename BlockDiagonalLinearOperator< DiscreteFunctionSpace, LocalBlock >::LocalMatrixType
455 ::localMatrix ( const DomainEntityType &domainEntity, const RangeEntityType &rangeEntity ) const
int size() const
const FieldVector< K, n > & diagonal() const
virtual void operator()()=0
#define DUNE_THROW(E,...)
Definition adaptivefunction/adaptivefunction.hh:48
DofType * leakPointer()
Definition adaptivefunction/adaptivefunction.hh:130
SizeType size() const
Return the number of blocks in the block vector.
Definition common/discretefunction.hh:755
Traits::DomainSpaceType DomainSpaceType
type of domain discrete function space
Definition localmatrix.hh:54
Traits::RangeSpaceType RangeSpaceType
type of range discrete function space
Definition localmatrix.hh:57
RangeSpaceType::EntityType RangeEntityType
Definition localmatrix.hh:68
RangeSpaceType::BasisFunctionSetType RangeBasisFunctionSetType
type of base function sets within range function space
Definition localmatrix.hh:65
DomainSpaceType::BasisFunctionSetType DomainBasisFunctionSetType
type of base function sets within domain function space
Definition localmatrix.hh:61
Traits::RangeFieldType RangeFieldType
type of range field
Definition localmatrix.hh:51
DomainSpaceType::EntityType DomainEntityType
Definition localmatrix.hh:67
Definition localmatrixwrapper.hh:48
DomainFunction DomainFunctionType
type of discrete function in the operator's domain
Definition operator.hh:36
RangeFunction::RangeFieldType RangeFieldType
field type of the operator's range
Definition operator.hh:43
DomainFunction::RangeFieldType DomainFieldType
field type of the operator's domain
Definition operator.hh:41
RangeFunction RangeFunctionType
type of discrete function in the operator's range
Definition operator.hh:38
LocalMatrixWrapper< LocalMatrixStackType > LocalMatrixType
Definition blockdiagonal.hh:73
CommDataHandle< Operation >::Type dataHandle(const Operation &operation)
return reference to data handle object (needed to make this class work with CommunicationManager)
Definition blockdiagonal.hh:187
ConstDofBlockPtrType block(const std::size_t block) const
return block matrix for given block number (== entity number)
Definition blockdiagonal.hh:167
BaseType::RangeFieldType RangeFieldType
Definition blockdiagonal.hh:39
DomainSpaceType DiscreteFunctionSpaceType
Definition blockdiagonal.hh:55
void forEach(const Functor &functor)
Definition blockdiagonal.hh:125
void leftmultiply(const ThisType &other)
Definition blockdiagonal.hh:148
const RangeSpaceType & space_
Definition blockdiagonal.hh:228
LocalColumnObjectType localColumn(const DomainEntityType &domainEntity) const
Definition blockdiagonal.hh:199
static const int localBlockSize
Definition blockdiagonal.hh:47
ColumnObject< ThisType > LocalColumnObjectType
Definition blockdiagonal.hh:75
void communicate()
copy matrices to ghost cells to make this class work in parallel
Definition blockdiagonal.hh:177
BlockDiagonalLinearOperator(const std::string &name, const DomainSpaceType &domainSpace, const RangeSpaceType &rangeSpace)
Definition blockdiagonal.hh:78
const DomainSpaceType & space() const
return reference to space (needed to make this class work with CommunicationManager)
Definition blockdiagonal.hh:216
RangeFunctionType::DiscreteFunctionSpaceType RangeSpaceType
Definition blockdiagonal.hh:42
void multiply(const AdaptiveDiscreteFunction< DomainSpace > &u, AdaptiveDiscreteFunction< RangeSpace > &w) const
Definition blockdiagonal.hh:103
BaseType::DomainFunctionType DomainFunctionType
Definition blockdiagonal.hh:35
std::vector< LocalBlockType > diagonal_
Definition blockdiagonal.hh:229
const RangeSpaceType & rangeSpace() const
Definition blockdiagonal.hh:210
DomainFunctionType::DiscreteFunctionSpaceType DomainSpaceType
Definition blockdiagonal.hh:41
LocalBlockType::row_type DofType
Definition blockdiagonal.hh:54
DomainSpaceType::EntityType DomainEntityType
Definition blockdiagonal.hh:44
const std::string & name() const
Definition blockdiagonal.hh:221
LocalMatrixType localMatrix(const DomainEntityType &domainEntity, const RangeEntityType &rangeEntity) const
Definition blockdiagonal.hh:455
void rightmultiply(const ThisType &other)
Definition blockdiagonal.hh:137
BaseType::RangeFunctionType RangeFunctionType
Definition blockdiagonal.hh:36
ObjectStack< LocalMatrixFactory > LocalMatrixStackType
Definition blockdiagonal.hh:72
const DomainSpaceType & domainSpace() const
Definition blockdiagonal.hh:206
BaseType::DomainFieldType DomainFieldType
Definition blockdiagonal.hh:38
LocalMatrixFactory localMatrixFactory_
Definition blockdiagonal.hh:230
void reserve(const Stencil &stencil, bool verbose=false)
Definition blockdiagonal.hh:193
DofBlockPtrType block(const std::size_t block)
return block matrix for given block number (== entity number)
Definition blockdiagonal.hh:160
const LocalBlockType * ConstDofBlockPtrType
Definition blockdiagonal.hh:53
RangeSpaceType::EntityType RangeEntityType
Definition blockdiagonal.hh:45
LocalMatrixStackType localMatrixStack_
Definition blockdiagonal.hh:231
LocalBlockType * DofBlockPtrType
Definition blockdiagonal.hh:52
LocalBlock LocalBlockType
Definition blockdiagonal.hh:49
Definition blockdiagonal.hh:59
DiscreteFunctionSpaceType::template CommDataHandle< ThisType, Operation >::Type Type
Definition blockdiagonal.hh:62
Definition blockdiagonal.hh:241
OperatorType::RangeFieldType RangeFieldType
Definition blockdiagonal.hh:247
OperatorType::DomainSpaceType DomainSpaceType
Definition blockdiagonal.hh:249
RangeFieldType LittleBlockType
Definition blockdiagonal.hh:252
OperatorType::LocalMatrix LocalMatrixType
Definition blockdiagonal.hh:245
OperatorType::RangeSpaceType RangeSpaceType
Definition blockdiagonal.hh:250
Definition blockdiagonal.hh:263
void finalize()
Definition blockdiagonal.hh:366
RangeFieldType get(int i, int j) const
Definition blockdiagonal.hh:336
int columns() const
Definition blockdiagonal.hh:375
void add(int i, int j, const RangeFieldType &value)
Definition blockdiagonal.hh:340
const DomainBasisFunctionSetType & domainBasisFunctionSet() const
Definition blockdiagonal.hh:388
BlockDiagonalLinearOperator< DiscreteFunctionSpace, LocalBlock > OperatorType
Definition blockdiagonal.hh:268
void scale(const RangeFieldType &a)
Definition blockdiagonal.hh:331
BaseType::DomainEntityType DomainEntityType
Definition blockdiagonal.hh:275
void resort()
Definition blockdiagonal.hh:368
void init(const DomainEntityType &domainEntity, const RangeEntityType &rangeEntity)
Definition blockdiagonal.hh:308
const DomainSpaceType & domainSpace() const
Definition blockdiagonal.hh:380
void set(int i, int j, const RangeFieldType &value)
Definition blockdiagonal.hh:344
void clearRow(int i)
Definition blockdiagonal.hh:349
BaseType::RangeFieldType RangeFieldType
Definition blockdiagonal.hh:270
void clearCol(int j)
Definition blockdiagonal.hh:354
BaseType::DomainBasisFunctionSetType DomainBasisFunctionSetType
Definition blockdiagonal.hh:272
const RangeBasisFunctionSetType & rangeBasisFunctionSet() const
Definition blockdiagonal.hh:392
void multiplyAdd(const DomainLocalFunction &x, RangeLocalFunction &y) const
Definition blockdiagonal.hh:361
void clear()
Definition blockdiagonal.hh:327
int rows() const
Definition blockdiagonal.hh:371
BaseType::RangeBasisFunctionSetType RangeBasisFunctionSetType
Definition blockdiagonal.hh:273
const RangeEntityType & rangeEntity() const
Definition blockdiagonal.hh:401
BaseType::RangeEntityType RangeEntityType
Definition blockdiagonal.hh:276
const DomainEntityType & domainEntity() const
Definition blockdiagonal.hh:397
LocalMatrix(OperatorType &op)
Definition blockdiagonal.hh:303
const RangeSpaceType & rangeSpace() const
Definition blockdiagonal.hh:384
Definition blockdiagonal.hh:430
LocalMatrix ObjectType
Definition blockdiagonal.hh:432
ObjectType * newObject() const
Definition blockdiagonal.hh:438
BlockDiagonalLinearOperator< DiscreteFunctionSpace, LocalBlock > OperatorType
Definition blockdiagonal.hh:431
LocalMatrixFactory(OperatorType &op)
Definition blockdiagonal.hh:434
Definition columnobject.hh:12
discrete function space
T begin(T... args)
T resize(T... args)
T size(T... args)
Legal Statements / Impressum | Hosted by TU Dresden & Uni Heidelberg | Generated by
1.9.8