bem::LaplacePLD< F > Class Template Referenceabstract

Bilinear form to compute the adjoint of the Laplace double layer potential. More...

#include <bform.hh>

Inheritance diagram for bem::LaplacePLD< F >:
concepts::BilinearForm< concepts::Real > concepts::Cloneable concepts::OutputOperator

Public Member Functions

virtual LaplacePLDclone () const
 Virtual constructor. More...
 
virtual BilinearForm * clone () const=0
 Virtual constructor. More...
 
 LaplacePLD (uint stroud=0, uint gauss=0, concepts::Real dist=0.0)
 Constructor. More...
 
void operator() (const concepts::Element< F > &elmX, const concepts::Element< F > &elmY, concepts::ElementMatrix< F > &em)
 Application operator. More...
 
void operator() (const Constant3d000< F > &elmX, const Constant3d000< F > &elmY, concepts::ElementMatrix< F > &em)
 
virtual void operator() (const Element< typename Realtype< concepts::Real >::type > &elmX, const Element< typename Realtype< concepts::Real >::type > &elmY, ElementMatrix< concepts::Real > &em) const=0
 Evaluates the bilinear form for all shape functions on elmX and elmY and stores the result in the matrix em. More...
 
virtual void operator() (const Element< typename Realtype< concepts::Real >::type > &elmX, const Element< typename Realtype< concepts::Real >::type > &elmY, ElementMatrix< concepts::Real > &em, const ElementPair< typename Realtype< concepts::Real >::type > &ep) const
 Evaluates the bilinear form for all shape functions on elmX and elmY and stores the result in the matrix em. More...
 
void operator() (const Linear3d000< F > &elmX, const Linear3d000< F > &elmY, concepts::ElementMatrix< F > &em)
 

Protected Member Functions

virtual std::ostream & info (std::ostream &os) const
 Returns information in an output stream. More...
 

Private Attributes

concepts::Real dist_
 Distance to distinguish between one point integration formula and integration using the given number of integration points. More...
 
uint gauss_
 
LplGal007< F > qrA_
 Classes used for integration. More...
 
LplGal014< F > qrB_
 
uint stroud_
 Number of integration points. More...
 

Detailed Description

template<class F = concepts::Real>
class bem::LaplacePLD< F >

Bilinear form to compute the adjoint of the Laplace double layer potential.

Parameters
FField (Real or Cmplx)

Definition at line 260 of file bform.hh.

Constructor & Destructor Documentation

◆ LaplacePLD()

template<class F >
bem::LaplacePLD< F >::LaplacePLD ( uint  stroud = 0,
uint  gauss = 0,
concepts::Real  dist = 0.0 
)
inline

Constructor.

Parameters
stroudNumber of integration points
gaussNumber of integration points
distMinimal distance to apply one point quadrature rule.

Definition at line 305 of file bform.hh.

Member Function Documentation

◆ clone() [1/2]

template<class F = concepts::Real>
virtual LaplacePLD* bem::LaplacePLD< F >::clone ( ) const
inlinevirtual

Virtual constructor.

Returns a pointer to a copy of itself. The caller is responsible to destroy this copy.

Implements concepts::Cloneable.

Definition at line 299 of file bform.hh.

◆ clone() [2/2]

virtual BilinearForm* concepts::BilinearForm< concepts::Real , typename Realtype<concepts::Real >::type >::clone ( ) const
pure virtualinherited

Virtual constructor.

Returns a pointer to a copy of itself. The caller is responsible to destroy this copy.

◆ info()

virtual std::ostream& concepts::BilinearForm< concepts::Real , typename Realtype<concepts::Real >::type >::info ( std::ostream &  os) const
protectedvirtualinherited

Returns information in an output stream.

Reimplemented from concepts::OutputOperator.

◆ operator()() [1/5]

template<class F = concepts::Real>
void bem::LaplacePLD< F >::operator() ( const concepts::Element< F > &  elmX,
const concepts::Element< F > &  elmY,
concepts::ElementMatrix< F > &  em 
)

Application operator.

Exceptions
MissingFeature
Parameters
elmXElement
elmYElement
emElement matrix for the two given elements.

◆ operator()() [2/5]

template<class F >
void bem::LaplacePLD< F >::operator() ( const Constant3d000< F > &  elmX,
const Constant3d000< F > &  elmY,
concepts::ElementMatrix< F > &  em 
)
inline

Definition at line 311 of file bform.hh.

◆ operator()() [3/5]

virtual void concepts::BilinearForm< concepts::Real , typename Realtype<concepts::Real >::type >::operator() ( const Element< G > &  elmX,
const Element< G > &  elmY,
ElementMatrix< F > &  em 
) const
pure virtualinherited

Evaluates the bilinear form for all shape functions on elmX and elmY and stores the result in the matrix em.

Postcondition
The returned matrix em has the correct size.
Parameters
elmXLeft element (test functions)
elmYRight element (trial functions)
emReturn element matrix

◆ operator()() [4/5]

virtual void concepts::BilinearForm< concepts::Real , typename Realtype<concepts::Real >::type >::operator() ( const Element< G > &  elmX,
const Element< G > &  elmY,
ElementMatrix< F > &  em,
const ElementPair< G > &  ep 
) const
inlinevirtualinherited

Evaluates the bilinear form for all shape functions on elmX and elmY and stores the result in the matrix em.

If this method is not reimplemented in a derived class, the default behaviour is to call the application operator without ep.

Postcondition
The returned matrix em has the correct size.
Parameters
elmXLeft element
elmYRight element
emReturn element matrix
epElement pair holding more information on the pair elmX and elmY

Definition at line 57 of file bilinearForm.hh.

◆ operator()() [5/5]

template<class F >
void bem::LaplacePLD< F >::operator() ( const Linear3d000< F > &  elmX,
const Linear3d000< F > &  elmY,
concepts::ElementMatrix< F > &  em 
)
inline

Definition at line 322 of file bform.hh.

Member Data Documentation

◆ dist_

template<class F = concepts::Real>
concepts::Real bem::LaplacePLD< F >::dist_
private

Distance to distinguish between one point integration formula and integration using the given number of integration points.

Definition at line 271 of file bform.hh.

◆ gauss_

template<class F = concepts::Real>
uint bem::LaplacePLD< F >::gauss_
private

Definition at line 267 of file bform.hh.

◆ qrA_

template<class F = concepts::Real>
LplGal007<F> bem::LaplacePLD< F >::qrA_
private

Classes used for integration.

Definition at line 263 of file bform.hh.

◆ qrB_

template<class F = concepts::Real>
LplGal014<F> bem::LaplacePLD< F >::qrB_
private

Definition at line 264 of file bform.hh.

◆ stroud_

template<class F = concepts::Real>
uint bem::LaplacePLD< F >::stroud_
private

Number of integration points.

Definition at line 267 of file bform.hh.


The documentation for this class was generated from the following file:
Page URL: http://wiki.math.ethz.ch/bin/view/Concepts/WebHome
21 August 2020
© 2020 Eidgenössische Technische Hochschule Zürich