A function class to calculate element matrices for the bilinear form. More...

#include <bilinearForm.hh>

Inheritance diagram for hp2Dedge::Rotuv:
concepts::BilinearForm< Real > hp2D::BilinearFormHelper_2_2< Real > concepts::Cloneable concepts::OutputOperator

Public Member Functions

virtual Rotuvclone () const
 Virtual constructor. More...
 
virtual BilinearForm * clone () const=0
 Virtual constructor. More...
 
void operator() (const concepts::Element< Real > &elmX, const concepts::Element< Real > &elmY, concepts::ElementMatrix< Real > &em) const
 
virtual void operator() (const Element< typename Realtype< Real >::type > &elmX, const Element< typename Realtype< Real >::type > &elmY, ElementMatrix< 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< Real >::type > &elmX, const Element< typename Realtype< Real >::type > &elmY, ElementMatrix< Real > &em, const ElementPair< typename Realtype< 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 hp2D::l2::Quad< Real > &elmX, const Quad< Real > &elmY, concepts::ElementMatrix< Real > &em) const
 
void operator() (const hp2D::Quad< Real > &elmX, const Quad< Real > &elmY, concepts::ElementMatrix< Real > &em) const
 
 Rotuv (const concepts::ElementFormulaContainer< Real > frm=concepts::ElementFormulaContainer< Real >())
 
virtual ~Rotuv ()
 

Protected Member Functions

void computeIntermediate_ (const BaseQuad< Real > &elm) const
 Compute the intermediate data for element matrix computation. More...
 
virtual std::ostream & info (std::ostream &os) const
 Returns information in an output stream. More...
 

Protected Attributes

concepts::ElementFormulaContainer< Real > frm_
 ElementFormula. More...
 
concepts::Array< Real > intermediateValue_
 Intermediate value. More...
 

Detailed Description

A function class to calculate element matrices for the bilinear form.

\[\int\limits_{K}f(\xi) \mathrm{curl}_{\mathrm{2D}}\underline{v}(\xi)\;v(\xi)\;d\underline{\xi} = \int\limits_{\hat{K}}f(F_K\hat{\xi})\mathrm{curl}_{\mathrm{2D}}\hat{v}(\hat{\xi})\;\hat{v}(\hat{\xi}) \;d\underline{\hat{\xi}}\]

Author
Kersten Schmidt, 2015

Definition at line 88 of file bilinearForm.hh.

Constructor & Destructor Documentation

◆ Rotuv()

hp2Dedge::Rotuv::Rotuv ( const concepts::ElementFormulaContainer< Real >  frm = concepts::ElementFormulaContainer< Real >())

◆ ~Rotuv()

virtual hp2Dedge::Rotuv::~Rotuv ( )
inlinevirtual

Definition at line 93 of file bilinearForm.hh.

Member Function Documentation

◆ clone() [1/2]

virtual Rotuv* hp2Dedge::Rotuv::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 101 of file bilinearForm.hh.

◆ clone() [2/2]

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

Virtual constructor.

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

◆ computeIntermediate_()

void hp2D::BilinearFormHelper_2_2< Real >::computeIntermediate_ ( const BaseQuad< Real > &  elm) const
protectedinherited

Compute the intermediate data for element matrix computation.

◆ info()

virtual std::ostream& hp2Dedge::Rotuv::info ( std::ostream &  os) const
protectedvirtual

Returns information in an output stream.

Reimplemented from concepts::BilinearForm< Real >.

◆ operator()() [1/5]

void hp2Dedge::Rotuv::operator() ( const concepts::Element< Real > &  elmX,
const concepts::Element< Real > &  elmY,
concepts::ElementMatrix< Real > &  em 
) const

◆ operator()() [2/5]

virtual void concepts::BilinearForm< Real , typename Realtype<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()() [3/5]

virtual void concepts::BilinearForm< Real , typename Realtype<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()() [4/5]

void hp2Dedge::Rotuv::operator() ( const hp2D::l2::Quad< Real > &  elmX,
const Quad< Real > &  elmY,
concepts::ElementMatrix< Real > &  em 
) const

◆ operator()() [5/5]

void hp2Dedge::Rotuv::operator() ( const hp2D::Quad< Real > &  elmX,
const Quad< Real > &  elmY,
concepts::ElementMatrix< Real > &  em 
) const

Member Data Documentation

◆ frm_

concepts::ElementFormulaContainer<Real > hp2D::BilinearFormHelper_2_2< Real >::frm_
protectedinherited

ElementFormula.

Definition at line 276 of file bilinearFormHelper.hh.

◆ intermediateValue_

concepts::Array<Real > hp2D::BilinearFormHelper_2_2< Real >::intermediateValue_
mutableprotectedinherited

Intermediate value.

\[\frac{f(F_K(\xi))}{\det J}^{-1}\]

Definition at line 274 of file bilinearFormHelper.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