#include <bilinearForm.hh>
Public Member Functions | |
BilinearFormContainer () | |
BilinearFormContainer (const BilinearForm< F, G > &bf) | |
BilinearFormContainer (const RCP< const BilinearForm< F, G > > frm) | |
BilinearFormContainer (const BilinearForm< F, G > *frm) | |
BilinearFormContainer (const BilinearFormContainer< F, G > &frm) | |
Copy constructor. | |
virtual void | operator() (const Element< G > &elmX, const Element< G > &elmY, ElementMatrix< F > &em) const |
virtual BilinearFormContainer< F, G > * | clone () const |
Virtual copy constructor. | |
bool | empty () const |
Returns true if no formula is stored. | |
void | transpose () |
Transpose the bilinearform, i.e. interchange test and trial functions. | |
virtual void | operator() (const Element< G > &elmX, const Element< G > &elmY, ElementMatrix< F > &em, const ElementPair< G > &ep) const |
Protected Member Functions | |
virtual std::ostream & | info (std::ostream &os) const |
Returns information in an output stream. | |
Protected Attributes | |
RCP< const BilinearForm< F, G > > | bf_ |
bilinear form is stored as a RCP | |
A container that stores a bilinear form as a reference-counting pointer and provides its functionality.
The class is specially suited for operations on bilinear forms like a sum where the bilinear form classes are intrinsically converted before constructing a class for the sum or other result. When converted in a BilinearFormContainer only one copy of the bilinear form is stored.
In addition the class allows for interchanging the arguments leading to a "transposed" bilinear form.
@autor Robert Gruhlke, 2016
Definition at line 136 of file bilinearForm.hh.
|
inline |
Constructor with no argument
Definition at line 140 of file bilinearForm.hh.
concepts::BilinearFormContainer< F, G >::BilinearFormContainer | ( | const BilinearForm< F, G > & | bf | ) |
Constructor for an element formula, takes a clone
|
inlinevirtual |
Virtual copy constructor.
Implements concepts::BilinearForm< F, G >.
Definition at line 158 of file bilinearForm.hh.
|
inline |
Returns true if no formula is stored.
Definition at line 163 of file bilinearForm.hh.
|
protectedvirtual |
Returns information in an output stream.
Reimplemented from concepts::BilinearForm< F, G >.
Reimplemented in hp1D::Jump1Mean2< F >.
|
virtual |
Evaluates the bilinear form for all shape functions on elmX
and elmY
and stores the result in the matrix em
.
em
has the correct size. elmX | Left element (test functions) |
elmY | Right element (trial functions) |
em | Return element matrix |
Implements concepts::BilinearForm< F, G >.
|
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
.
em
has the correct size. elmX | Left element |
elmY | Right element |
em | Return element matrix |
ep | Element pair holding more information on the pair elmX and elmY |
Reimplemented in vectorial::BilinearForm< F, G >.
Definition at line 57 of file bilinearForm.hh.
|
inline |
Transpose the bilinearform, i.e. interchange test and trial functions.
Definition at line 166 of file bilinearForm.hh.
|
protected |
bilinear form is stored as a RCP
Definition at line 174 of file bilinearForm.hh.