|
BEM++
2.0
|
Scaled abstract boundary operator. More...
#include </home/wojtek/Projects/BEM/bempp-sven/bempp/lib/assembly/scaled_abstract_boundary_operator.hpp>
Public Types | |
| typedef Base::BasisFunctionType | BasisFunctionType |
| Type of the values of the (components of the) basis functions into which functions acted upon by the operator are expanded. More... | |
| typedef Base::ResultType | ResultType |
| Type used to represent elements of the weak form of the operator. More... | |
| typedef Base::CoordinateType | CoordinateType |
| Type used to represent coordinates. More... | |
| typedef Base::QuadratureStrategy | QuadratureStrategy |
| Type of the appropriate instantiation of Fiber::QuadratureStrategy. More... | |
| typedef Base::LocalAssembler | LocalAssembler |
| Type of the appropriate instantiation of Fiber::LocalAssemblerForOperators. More... | |
Public Types inherited from Bempp::AbstractBoundaryOperatorSuperpositionBase< BasisFunctionType_, ResultType_ > | |
| typedef Base::BasisFunctionType | BasisFunctionType |
| Type of the values of the (components of the) basis functions into which functions acted upon by the operator are expanded. More... | |
| typedef Base::ResultType | ResultType |
| Type used to represent elements of the weak form of the operator. More... | |
| typedef Base::CoordinateType | CoordinateType |
| Type used to represent coordinates. More... | |
| typedef Base::QuadratureStrategy | QuadratureStrategy |
| Type of the appropriate instantiation of Fiber::QuadratureStrategy. More... | |
|
typedef Fiber::LocalAssemblerForIntegralOperators < ResultType > | LocalAssembler |
| Type of the appropriate instantiation of Fiber::LocalAssemblerForOperators. | |
Public Types inherited from Bempp::AbstractBoundaryOperator< BasisFunctionType_, ResultType_ > | |
| typedef BasisFunctionType_ | BasisFunctionType |
| Type of the values of the (components of the) basis functions into which functions acted upon by the operator are expanded. | |
| typedef ResultType_ | ResultType |
| Type used to represent elements of the weak form of the operator. | |
|
typedef ScalarTraits < ResultType >::RealType | CoordinateType |
| Type used to represent coordinates. | |
|
typedef Fiber::QuadratureStrategy < BasisFunctionType, ResultType, GeometryFactory > | QuadratureStrategy |
| Type of the appropriate instantiation of Fiber::QuadratureStrategy. | |
Public Member Functions | |
| ScaledAbstractBoundaryOperator (ResultType multiplier_, const BoundaryOperator< BasisFunctionType, ResultType > &multiplicand_, int symmetry=AUTO_SYMMETRY) | |
| Constructor. More... | |
| virtual bool | isLocal () const |
| Return whether this operator is local. More... | |
| ResultType_ | multiplier () const |
|
BoundaryOperator < BasisFunctionType_, ResultType_ > | multiplicand () const |
Public Member Functions inherited from Bempp::AbstractBoundaryOperatorSuperpositionBase< BasisFunctionType_, ResultType_ > | |
| AbstractBoundaryOperatorSuperpositionBase (const shared_ptr< const Space< BasisFunctionType > > &domain, const shared_ptr< const Space< BasisFunctionType > > &range, const shared_ptr< const Space< BasisFunctionType > > &dualToRange, const std::string &label, int symmetry) | |
| Constructor. More... | |
Public Member Functions inherited from Bempp::AbstractBoundaryOperator< BasisFunctionType_, ResultType_ > | |
| AbstractBoundaryOperator (const shared_ptr< const Space< BasisFunctionType > > &domain, const shared_ptr< const Space< BasisFunctionType > > &range, const shared_ptr< const Space< BasisFunctionType > > &dualToRange, const std::string &label, int symmetry) | |
| Constructor. More... | |
| virtual | ~AbstractBoundaryOperator () |
| Destructor. | |
| virtual BEMPP_DEPRECATED shared_ptr< const AbstractBoundaryOperatorId > | id () const |
| Return the identifier of this operator. More... | |
| shared_ptr< const Space < BasisFunctionType > > | domain () const |
| Domain. More... | |
| shared_ptr< const Space < BasisFunctionType > > | range () const |
| Range. More... | |
| shared_ptr< const Space < BasisFunctionType > > | dualToRange () const |
| Dual to range. More... | |
| std::string | label () const |
| Return the label of the operator. | |
| int | symmetry () const |
| Return the symmetry properties of the operator. More... | |
| shared_ptr < DiscreteBoundaryOperator < ResultType_ > > | assembleWeakForm (const Context< BasisFunctionType_, ResultType_ > &context) const |
| Assemble and return the operator's weak form. More... | |
Private Types | |
|
typedef AbstractBoundaryOperatorSuperpositionBase < BasisFunctionType_, ResultType_ > | Base |
Additional Inherited Members | |
Static Public Member Functions inherited from Bempp::AbstractBoundaryOperator< BasisFunctionType_, ResultType_ > | |
| static std::string | uniqueLabel () |
| Generate and return a new unique label "OpN", where N is a number. | |
Protected Member Functions inherited from Bempp::AbstractBoundaryOperatorSuperpositionBase< BasisFunctionType_, ResultType_ > | |
| virtual shared_ptr < DiscreteBoundaryOperator < ResultType_ > > | assembleWeakFormImpl (const Context< BasisFunctionType, ResultType > &context) const |
| Assemble and return the operator's weak form. More... | |
Protected Member Functions inherited from Bempp::AbstractBoundaryOperator< BasisFunctionType_, ResultType_ > | |
| void | collectDataForAssemblerConstruction (const AssemblyOptions &options, shared_ptr< Fiber::RawGridGeometry< CoordinateType > > &testRawGeometry, shared_ptr< Fiber::RawGridGeometry< CoordinateType > > &trialRawGeometry, shared_ptr< GeometryFactory > &testGeometryFactory, shared_ptr< GeometryFactory > &trialGeometryFactory, shared_ptr< std::vector< const Fiber::Shapeset< BasisFunctionType_ > * > > &testShapesets, shared_ptr< std::vector< const Fiber::Shapeset< BasisFunctionType_ > * > > &trialShapesets, shared_ptr< Fiber::OpenClHandler > &openClHandler, bool &cacheSingularIntegrals) const |
| Given an AssemblyOptions object, construct objects necessary for subsequent local assembler construction. | |
| void | collectOptionsIndependentDataForAssemblerConstruction (shared_ptr< Fiber::RawGridGeometry< CoordinateType > > &testRawGeometry, shared_ptr< Fiber::RawGridGeometry< CoordinateType > > &trialRawGeometry, shared_ptr< GeometryFactory > &testGeometryFactory, shared_ptr< GeometryFactory > &trialGeometryFactory, shared_ptr< std::vector< const Fiber::Shapeset< BasisFunctionType_ > * > > &testShapesets, shared_ptr< std::vector< const Fiber::Shapeset< BasisFunctionType_ > * > > &trialShapesets) const |
| Construct those objects necessary for subsequent local assembler construction that are independent from assembly options. | |
| void | collectOptionsDependentDataForAssemblerConstruction (const AssemblyOptions &options, const shared_ptr< Fiber::RawGridGeometry< CoordinateType > > &testRawGeometry, const shared_ptr< Fiber::RawGridGeometry< CoordinateType > > &trialRawGeometry, shared_ptr< Fiber::OpenClHandler > &openClHandler, bool &cacheSingularIntegrals) const |
| Construct those objects necessary for subsequent local assembler construction that depend on assembly options. | |
Scaled abstract boundary operator.
This class represents an abstract boundary operator multiplied by a scalar.
| typedef Base::BasisFunctionType Bempp::ScaledAbstractBoundaryOperator< BasisFunctionType_, ResultType_ >::BasisFunctionType |
Type of the values of the (components of the) basis functions into which functions acted upon by the operator are expanded.
| typedef Base::CoordinateType Bempp::ScaledAbstractBoundaryOperator< BasisFunctionType_, ResultType_ >::CoordinateType |
Type used to represent coordinates.
| typedef Base::LocalAssembler Bempp::ScaledAbstractBoundaryOperator< BasisFunctionType_, ResultType_ >::LocalAssembler |
Type of the appropriate instantiation of Fiber::LocalAssemblerForOperators.
| typedef Base::QuadratureStrategy Bempp::ScaledAbstractBoundaryOperator< BasisFunctionType_, ResultType_ >::QuadratureStrategy |
Type of the appropriate instantiation of Fiber::QuadratureStrategy.
| typedef Base::ResultType Bempp::ScaledAbstractBoundaryOperator< BasisFunctionType_, ResultType_ >::ResultType |
Type used to represent elements of the weak form of the operator.
| Bempp::ScaledAbstractBoundaryOperator< BasisFunctionType, ResultType >::ScaledAbstractBoundaryOperator | ( | ResultType | multiplier_, |
| const BoundaryOperator< BasisFunctionType, ResultType > & | multiplicand_, | ||
| int | symmetry = AUTO_SYMMETRY |
||
| ) |
Constructor.
Construct the boundary operator
, where
is the scalar multiplier_ and
is the operator represented by multiplicand_.
By default the symmetry of the weak form of the resulting operator is determined automatically. It can be set manually via the parameter symmetry, which can be any combination of the flags defined in the enumeration type Symmetry.
|
virtual |
Return whether this operator is local.
Suppose that an operator
acting on a function
produces another function
. We say that
is local if the value of
at any point
depends only on the values of
in an infinitesimal neighbourhood of
.
Multiplicative and differential operators are local and discretization of their weak forms with finite elements leads to sparse matrices. Conversely, integral operators are in general non-local and discretization of their weak forms leads to dense matrices.
Implements Bempp::AbstractBoundaryOperator< BasisFunctionType_, ResultType_ >.
1.8.5