dune-fem 2.8.0
|
#include <dune/fem/operator/linear/numpyoperator.hh>
Public Types | |
typedef DomainFunction::DiscreteFunctionSpaceType | DomainSpaceType |
typedef RangeFunction::DiscreteFunctionSpaceType | RangeSpaceType |
typedef NumpyLinearOperator< DomainFunction, RangeFunction > | ThisType |
typedef SparseRowMatrix< double, size_t, pybind11::array_t< double >, pybind11::array_t< size_t > > | Matrix |
typedef SparseRowMatrixObject< DomainSpaceType, RangeSpaceType, Matrix > | BaseType |
typedef DomainSpaceType::EntityType | DomainEntityType |
typedef RangeSpaceType::EntityType | RangeEntityType |
typedef DomainSpaceType::EntityType | ColumnEntityType |
typedef RangeSpaceType::EntityType | RowEntityType |
typedef DomainSpaceType::BlockMapperType | DomainBlockMapperType |
typedef NonBlockMapper< DomainBlockMapperType, DomainSpaceType::localBlockSize > | DomainMapperType |
typedef RangeSpaceType::BlockMapperType | RangeBlockMapperType |
typedef NonBlockMapper< RangeBlockMapperType, RangeSpaceType::localBlockSize > | RangeMapperType |
typedef SparseRowMatrix< double, size_t, pybind11::array_t< double >, pybind11::array_t< size_t > > | MatrixType |
typedef MatrixType::size_type | size_type |
typedef MatrixType::field_type | field_type |
typedef Dune::FieldMatrix< field_type, rangeLocalBlockSize, domainLocalBlockSize > | MatrixBlockType |
typedef MatrixBlockType | block_type |
typedef MatrixType | PreconditionMatrixType |
typedef LocalMatrix< ThisType > | ObjectType |
typedef ThisType | LocalMatrixFactoryType |
typedef Fem::ObjectStack< LocalMatrixFactoryType > | LocalMatrixStackType |
typedef LocalMatrixWrapper< LocalMatrixStackType > | LocalMatrixType |
typedef ColumnObject< ThisType > | LocalColumnObjectType |
typedef DomainFunction | DomainFunctionType |
type of discrete function in the operator's domain | |
typedef RangeFunction | RangeFunctionType |
type of discrete function in the operator's range | |
typedef DomainFunction::RangeFieldType | DomainFieldType |
field type of the operator's domain | |
typedef RangeFunction::RangeFieldType | RangeFieldType |
field type of the operator's range | |
Public Member Functions | |
NumpyLinearOperator (const std::string &, const DomainSpaceType &domainSpace, const RangeSpaceType &rangeSpace, const SolverParameter ¶m=SolverParameter()) | |
virtual void | operator() (const DomainFunction &arg, RangeFunction &dest) const |
application operator | |
const BaseType & | systemMatrix () const |
BaseType & | systemMatrix () |
template<class DomainFunction , class RangeFunction > | |
void | apply (const DomainFunction &arg, RangeFunction &dest) const |
apply matrix to discrete function | |
const DomainSpaceType & | domainSpace () const |
get domain space (i.e. space that builds the rows) | |
const RangeSpaceType & | rangeSpace () const |
get range space (i.e. space that builds the columns) | |
MatrixType & | exportMatrix () const |
get reference to storage object | |
ObjectType * | newObject () const |
interface method from LocalMatrixFactory | |
LocalMatrixType | localMatrix (const DomainEntityType &domainEntity, const RangeEntityType &rangeEntity) const |
LocalMatrixType | localMatrix () const |
LocalColumnObjectType | localColumn (const DomainEntityType &domainEntity) const |
get local column | |
void | unitRow (const size_type row) |
void | addBlock (const size_type row, const size_type col, const LocalBlock &block) |
void | setBlock (const size_type row, const size_type col, const LocalBlock &block) |
void | addLocalMatrix (const DomainEntityType &domainEntity, const RangeEntityType &rangeEntity, const LocalMatrix &localMat) |
void | addScaledLocalMatrix (const DomainEntityType &domainEntity, const RangeEntityType &rangeEntity, const LocalMatrix &localMat, const Scalar &s) |
void | setLocalMatrix (const DomainEntityType &domainEntity, const RangeEntityType &rangeEntity, const LocalMatrix &localMat) |
void | getLocalMatrix (const DomainEntityType &domainEntity, const RangeEntityType &rangeEntity, LocalMatrix &localMat) const |
void | clear () |
clear matrix | |
void | compress () |
compress matrix to a real CRS format | |
void | reserve (const std::vector< Set > &sparsityPattern) |
void | reserve (const Stencil &stencil, bool verbose=false) |
reserve memory | |
void | extractDiagonal (DiscreteFunctionType &diag) const |
void | setUnitRows (const Vector &rows) |
void | resort () |
resort row numbering in matrix to have ascending numbering | |
virtual void | flushAssembly () |
commit intermediate states of linear operator assembly | |
void | beginAssemble () |
Initiate the assemble of values using the LocalContribution concept. | |
void | endAssemble () |
Finalize the assemble of values using the LocalContribution concept. | |
virtual bool | symmetric () const |
virtual bool | positiveDefinite () const |
virtual void | finalize () |
finalization of operator | |
Static Public Attributes | |
static constexpr bool | assembled = true |
static const size_type | domainLocalBlockSize |
static const size_type | rangeLocalBlockSize |
Protected Member Functions | |
MatrixType & | matrix () const |
get reference to storage object, for internal use | |
void | finalizeAssembly () const |
Protected Attributes | |
const DomainSpaceType & | domainSpace_ |
const RangeSpaceType & | rangeSpace_ |
DomainMapperType | domainMapper_ |
RangeMapperType | rangeMapper_ |
int | sequence_ |
MatrixType | matrix_ |
bool | preconditioning_ |
LocalMatrixStackType | localMatrixStack_ |
std::type_index | assembleOperation_ |
std::size_t | assembleCount_ |
typedef SparseRowMatrixObject< DomainSpaceType, RangeSpaceType, Matrix > Dune::Fem::NumpyLinearOperator< DomainFunction, RangeFunction >::BaseType |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
field type of the operator's domain
|
inherited |
type of discrete function in the operator's domain
|
inherited |
typedef DomainFunction::DiscreteFunctionSpaceType Dune::Fem::NumpyLinearOperator< DomainFunction, RangeFunction >::DomainSpaceType |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
typedef SparseRowMatrix< double, size_t, pybind11::array_t< double >, pybind11::array_t<size_t> > Dune::Fem::NumpyLinearOperator< DomainFunction, RangeFunction >::Matrix |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
field type of the operator's range
|
inherited |
type of discrete function in the operator's range
|
inherited |
typedef RangeFunction::DiscreteFunctionSpaceType Dune::Fem::NumpyLinearOperator< DomainFunction, RangeFunction >::RangeSpaceType |
|
inherited |
|
inherited |
typedef NumpyLinearOperator< DomainFunction, RangeFunction > Dune::Fem::NumpyLinearOperator< DomainFunction, RangeFunction >::ThisType |
|
inline |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inline |
apply matrix to discrete function
|
inlineinherited |
Initiate the assemble of values using the LocalContribution concept.
AssembleOperation | the specific operation (Add, Set, ...) |
|
inlineinherited |
clear matrix
|
inlineinherited |
compress matrix to a real CRS format
|
inlineinherited |
get domain space (i.e. space that builds the rows)
|
inlineinherited |
Finalize the assemble of values using the LocalContribution concept.
AssembleOperation | the specific operation (Add, Set, ...) |
|
inlineinherited |
get reference to storage object
|
inlineinherited |
extract diagonal entries from matrix into discrete function this only works for square matrices
|
inlinevirtualinherited |
finalization of operator
Reimplemented in Dune::Fem::SparseRowLinearOperator< DomainFunction, RangeFunction, Matrix >.
|
inlineprotectedinherited |
|
inlinevirtualinherited |
commit intermediate states of linear operator assembly
|
inlineinherited |
|
inlineinherited |
get local column
|
inlineinherited |
|
inlineinherited |
|
inlineprotectedinherited |
get reference to storage object, for internal use
|
inlineinherited |
interface method from LocalMatrixFactory
|
inlinevirtual |
application operator
[in] | u | argument discrete function |
[out] | w | destination discrete function |
Implements Dune::Fem::Operator< DomainFunction, RangeFunction >.
|
inlinevirtualinherited |
Return true
if the Operator is positive definite.
|
inlineinherited |
get range space (i.e. space that builds the columns)
|
inlineinherited |
|
inlineinherited |
reserve memory
|
inlineinherited |
resort row numbering in matrix to have ascending numbering
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlinevirtualinherited |
Return true
if the Operator is symmetric.
|
inline |
|
inline |
|
inlineinherited |
|
protectedinherited |
|
staticconstexpr |
|
protectedinherited |
|
staticinherited |
|
protectedinherited |
|
protectedinherited |
|
mutableprotectedinherited |
|
mutableprotectedinherited |
|
protectedinherited |
|
staticinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |