BEM++
2.0
|
Base class for potential operators for the modified Helmholtz equation in 3D. More...
Public Member Functions | |
ModifiedHelmholtz3dPotentialOperatorBase (KernelType waveNumber) | |
Constructor. More... | |
ModifiedHelmholtz3dPotentialOperatorBase (const ModifiedHelmholtz3dPotentialOperatorBase &other) | |
Copy constructor. | |
virtual | ~ModifiedHelmholtz3dPotentialOperatorBase () |
Destructor. | |
ModifiedHelmholtz3dPotentialOperatorBase & | operator= (const ModifiedHelmholtz3dPotentialOperatorBase &rhs) |
Assignment operator. | |
KernelType | waveNumber () const |
Return the wave number set previously in the constructor. | |
![]() | |
virtual std::auto_ptr < InterpolatedFunction < ScalarTraits < BasisFunctionType_ > ::ComplexType > > | evaluateOnGrid (const GridFunction< BasisFunctionType, ResultType > &argument, const Grid &evaluationGrid, const QuadratureStrategy &quadStrategy, const EvaluationOptions &options) const |
Evaluate the potential of a given charge distribution on a prescribed grid. More... | |
virtual arma::Mat < ScalarTraits < BasisFunctionType_ > ::ComplexType > | evaluateAtPoints (const GridFunction< BasisFunctionType, ResultType > &argument, const arma::Mat< CoordinateType > &evaluationPoints, const QuadratureStrategy &quadStrategy, const EvaluationOptions &options) const |
Evaluate the potential of a given charge distribution at prescribed points. More... | |
virtual AssembledPotentialOperator < BasisFunctionType_, ScalarTraits < BasisFunctionType_ > ::ComplexType > | assemble (const shared_ptr< const Space< BasisFunctionType > > &space, const shared_ptr< const arma::Mat< CoordinateType > > &evaluationPoints, const QuadratureStrategy &quadStrategy, const EvaluationOptions &options) const |
Create and return an AssembledPotentialOperator object. More... | |
virtual int | componentCount () const |
Number of components of the values of the potential. More... | |
![]() | |
virtual | ~PotentialOperator () |
Destructor. | |
Private Types | |
typedef ElementaryPotentialOperator < BasisFunctionType_, typename ScalarTraits < BasisFunctionType_ > ::ComplexType, typename ScalarTraits < BasisFunctionType_ > ::ComplexType > | Base |
Private Member Functions | |
virtual const CollectionOfKernels & | kernels () const |
Return the collection of kernel functions occurring in the integrand of this operator. | |
virtual const CollectionOfShapesetTransformations & | trialTransformations () const |
Return the collection of transformations of the charge distribution that occur in the weak form of this operator. | |
virtual const KernelTrialIntegral & | integral () const |
Return an object representing the integral used to evaluate the potential of a charge distribution. More... | |
Base class for potential operators for the modified Helmholtz equation in 3D.
Impl | Type of the internal implementation object. |
BasisFunctionType_ | Type of the values of the basis functions into which functions acted upon by the operator are expanded. It can take the following values: float , double , std::complex<float> and std::complex<double> . |
typedef Base::CollectionOfBasisTransformations Bempp::ModifiedHelmholtz3dPotentialOperatorBase< Impl, BasisFunctionType_ >::CollectionOfBasisTransformations |
Type of the appropriate instantiation of Fiber::CollectionOfBasisTransformations.
typedef Base::CollectionOfKernels Bempp::ModifiedHelmholtz3dPotentialOperatorBase< Impl, BasisFunctionType_ >::CollectionOfKernels |
Type of the appropriate instantiation of Fiber::CollectionOfKernels.
typedef Base::CollectionOfShapesetTransformations Bempp::ModifiedHelmholtz3dPotentialOperatorBase< Impl, BasisFunctionType_ >::CollectionOfShapesetTransformations |
Type of the appropriate instantiation of Fiber::CollectionOfShapesetTransformations.
typedef Base::CoordinateType Bempp::ModifiedHelmholtz3dPotentialOperatorBase< Impl, BasisFunctionType_ >::CoordinateType |
Type used to represent coordinates.
typedef Base::KernelTrialIntegral Bempp::ModifiedHelmholtz3dPotentialOperatorBase< Impl, BasisFunctionType_ >::KernelTrialIntegral |
Type of the appropriate instantiation of Fiber::KernelTrialIntegral.
Bempp::ModifiedHelmholtz3dPotentialOperatorBase< Impl, BasisFunctionType >::ModifiedHelmholtz3dPotentialOperatorBase | ( | KernelType | waveNumber | ) |
Constructor.
[in] | waveNumber | Wave number. See Modified Helmholtz equation in 3D for its definition. |
|
privatevirtual |
Return an object representing the integral used to evaluate the potential of a charge distribution.
Subclasses of KernelTrialIntegral implement functions that evaluate the integral using the data provided by a CollectionOfKernels representing the kernel functions occurring in the integrand and a CollectionOfBasisTransformations representing the charge-distribution transformations occurring in the integrand.