concepts::BilinearFormContainer< F, G > Class Template Referenceabstract

#include <bilinearForm.hh>

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

Public Member Functions

 BilinearFormContainer ()
 Constructor with no argument. More...
 
 BilinearFormContainer (const BilinearForm< F, G > &bf)
 Constructor for an element formula, takes a clone. More...
 
 BilinearFormContainer (const BilinearForm< F, G > *frm)
 
 BilinearFormContainer (const BilinearFormContainer< F, G > &frm)
 Copy constructor. More...
 
 BilinearFormContainer (const RCP< const BilinearForm< F, G > > frm)
 
virtual BilinearFormContainer< F, G > * clone () const
 Virtual copy constructor. More...
 
virtual BilinearFormclone () const=0
 Virtual constructor. More...
 
bool empty () const
 Returns true if no formula is stored. More...
 
virtual 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 ~BilinearFormContainer ()
 

Protected Member Functions

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

Private Attributes

RCP< const BilinearForm< F, G > > bf_
 bilinear form is stored as a RCP More...
 

Detailed Description

template<class F, typename G = typename Realtype<F>::type>
class concepts::BilinearFormContainer< F, G >

Definition at line 136 of file bilinearForm.hh.

Constructor & Destructor Documentation

◆ BilinearFormContainer() [1/5]

template<class F , typename G = typename Realtype<F>::type>
concepts::BilinearFormContainer< F, G >::BilinearFormContainer ( )
inline

Constructor with no argument.

Definition at line 140 of file bilinearForm.hh.

◆ BilinearFormContainer() [2/5]

template<class F , typename G = typename Realtype<F>::type>
concepts::BilinearFormContainer< F, G >::BilinearFormContainer ( const BilinearForm< F, G > &  bf)

Constructor for an element formula, takes a clone.

◆ BilinearFormContainer() [3/5]

template<class F , typename G = typename Realtype<F>::type>
concepts::BilinearFormContainer< F, G >::BilinearFormContainer ( const RCP< const BilinearForm< F, G > >  frm)

◆ BilinearFormContainer() [4/5]

template<class F , typename G = typename Realtype<F>::type>
concepts::BilinearFormContainer< F, G >::BilinearFormContainer ( const BilinearForm< F, G > *  frm)
explicit

◆ BilinearFormContainer() [5/5]

template<class F , typename G = typename Realtype<F>::type>
concepts::BilinearFormContainer< F, G >::BilinearFormContainer ( const BilinearFormContainer< F, G > &  frm)

Copy constructor.

◆ ~BilinearFormContainer()

template<class F , typename G = typename Realtype<F>::type>
virtual concepts::BilinearFormContainer< F, G >::~BilinearFormContainer ( )
virtual

Member Function Documentation

◆ clone() [1/2]

template<class F , typename G = typename Realtype<F>::type>
virtual BilinearFormContainer<F,G>* concepts::BilinearFormContainer< F, G >::clone ( ) const
inlinevirtual

Virtual copy constructor.

Implements concepts::Cloneable.

Definition at line 159 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 >.

◆ empty()

template<class F , typename G = typename Realtype<F>::type>
bool concepts::BilinearFormContainer< F, G >::empty ( ) const
inline

Returns true if no formula is stored.

Definition at line 165 of file bilinearForm.hh.

◆ info()

template<class F , typename G = typename Realtype<F>::type>
virtual std::ostream& concepts::BilinearFormContainer< F, G >::info ( std::ostream &  os) const
protectedvirtual

Returns information in an output stream.

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

◆ operator()() [1/3]

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

◆ 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

◆ bf_

template<class F , typename G = typename Realtype<F>::type>
RCP<const BilinearForm<F,G> > concepts::BilinearFormContainer< F, G >::bf_
private

bilinear form is stored as a RCP

Definition at line 174 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