concepts::BilinearF_W< F, H, J, G > Class Template Referenceabstract

Product of scalar and a bilinear form with possible different field type F. More...

#include <bilinearForm.hh>

Inheritance diagram for concepts::BilinearF_W< F, H, J, G >:
concepts::BilinearForm< F, typename Realtype< F >::type > concepts::Cloneable concepts::OutputOperator

Public Member Functions

 BilinearF_W (const BilinearFormContainer< H, G > bf1, const J w)
 
virtual BilinearF_W< F, H, J, G > * clone () const
 Virtual constructor. More...
 
virtual BilinearFormclone () const=0
 Virtual constructor. More...
 
void operator() (const Element< G > &elmX, const Element< G > &elmY, ElementMatrix< F > &em) const
 
virtual void operator() (const Element< typename Realtype< F >::type > &elmX, const Element< typename Realtype< F >::type > &elmY, ElementMatrix< F > &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< F >::type > &elmX, const Element< typename Realtype< F >::type > &elmY, ElementMatrix< F > &em, const ElementPair< typename Realtype< F >::type > &ep) const
 Evaluates the bilinear form for all shape functions on elmX and elmY and stores the result in the matrix em. More...
 
virtual ~BilinearF_W ()
 

Protected Member Functions

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

Private Attributes

BilinearFormContainer< H, G > bf1_
 First element formula. More...
 
w_
 the scalar value More...
 

Detailed Description

template<class F, class H = F, class J = F, class G = typename Realtype<F>::type>
class concepts::BilinearF_W< F, H, J, G >

Product of scalar and a bilinear form with possible different field type F.

Author
Robert Gruhlke, 2016

Definition at line 274 of file bilinearForm.hh.

Constructor & Destructor Documentation

◆ BilinearF_W()

template<class F , class H = F, class J = F, class G = typename Realtype<F>::type>
concepts::BilinearF_W< F, H, J, G >::BilinearF_W ( const BilinearFormContainer< H, G >  bf1,
const J  w 
)
inline

Definition at line 276 of file bilinearForm.hh.

◆ ~BilinearF_W()

template<class F , class H = F, class J = F, class G = typename Realtype<F>::type>
virtual concepts::BilinearF_W< F, H, J, G >::~BilinearF_W ( )
inlinevirtual

Definition at line 283 of file bilinearForm.hh.

Member Function Documentation

◆ clone() [1/2]

template<class F , class H = F, class J = F, class G = typename Realtype<F>::type>
virtual BilinearF_W<F,H,J,G>* concepts::BilinearF_W< F, H, J, G >::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 303 of file bilinearForm.hh.

◆ clone() [2/2]

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

Virtual constructor.

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

Implemented in concepts::BilinearFormContainer< F, typename Realtype< F >::type >.

◆ info()

template<class F , class H = F, class J = F, class G = typename Realtype<F>::type>
virtual std::ostream& concepts::BilinearF_W< F, H, J, G >::info ( std::ostream &  os) const
inlineprotectedvirtual

Returns information in an output stream.

Reimplemented from concepts::BilinearForm< F, typename Realtype< F >::type >.

Definition at line 308 of file bilinearForm.hh.

◆ operator()() [1/3]

template<class F , class H = F, class J = F, class G = typename Realtype<F>::type>
void concepts::BilinearF_W< F, H, J, G >::operator() ( const Element< G > &  elmX,
const Element< G > &  elmY,
ElementMatrix< F > &  em 
) const
inline

Definition at line 285 of file bilinearForm.hh.

◆ operator()() [2/3]

virtual void concepts::BilinearForm< F, typename Realtype< F >::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

Implemented in concepts::BilinearFormContainer< F, typename Realtype< F >::type >.

◆ operator()() [3/3]

virtual void concepts::BilinearForm< F, typename Realtype< F >::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.

Member Data Documentation

◆ bf1_

template<class F , class H = F, class J = F, class G = typename Realtype<F>::type>
BilinearFormContainer<H,G> concepts::BilinearF_W< F, H, J, G >::bf1_
private

First element formula.

Definition at line 314 of file bilinearForm.hh.

◆ w_

template<class F , class H = F, class J = F, class G = typename Realtype<F>::type>
J concepts::BilinearF_W< F, H, J, G >::w_
private

the scalar value

Definition at line 316 of file bilinearForm.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