concepts::BilinearFormLiCo< F, G > Class Template Referenceabstract
A linear combination of bilinear forms. More...
#include <bilinearForm.hh>
Public Member Functions | |
BilinearFormLiCo (BilinearForm< F, G > &bfA, BilinearForm< F, G > &bfB, const F cA=1.0, const F cB=1.0) | |
Constructor. More... | |
BilinearFormLiCo (const BilinearFormLiCo &b) | |
Copy constructor. This copy constructor implements a deep copy. More... | |
virtual BilinearFormLiCo< F, G > * | clone () const |
Virtual constructor. More... | |
virtual BilinearForm * | clone () const=0 |
Virtual constructor. 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 | ~BilinearFormLiCo () |
Protected Member Functions | |
virtual std::ostream & | info (std::ostream &os) const |
Returns information in an output stream. More... | |
Private Attributes | |
concepts::RCP< BilinearForm< F, G > > | bA |
concepts::RCP< BilinearForm< F, G > > | bB |
BilinearForm< F, G > * | bfA_ |
Bilinear form. More... | |
std::unique_ptr< BilinearForm< F, G > > | bfAptr_ |
BilinearForm< F, G > * | bfB_ |
std::unique_ptr< BilinearForm< F, G > > | bfBptr_ |
const F | cA_ |
Coefficient of bfA . More... | |
const F | cB_ |
Coefficient of bfB . More... | |
ElementMatrix< F > | em_ |
Local element matrix used as temporary storage. More... | |
Detailed Description
template<class F, class G = typename Realtype<F>::type>
class concepts::BilinearFormLiCo< F, G >
A linear combination of bilinear forms.
The resulting element matrices of the bilinear forms are added into each other with the correct coefficient and can then be assembled.
- Examples
- hpFEM2d.cc.
Definition at line 83 of file bilinearForm.hh.
Constructor & Destructor Documentation
◆ BilinearFormLiCo() [1/2]
|
inline |
Constructor.
- Parameters
-
bfA First bilinear form bfB Second bilinear form cA Coefficient of bfA cB Coefficient of bfB
Definition at line 91 of file bilinearForm.hh.
◆ BilinearFormLiCo() [2/2]
concepts::BilinearFormLiCo< F, G >::BilinearFormLiCo | ( | const BilinearFormLiCo< F, G > & | b | ) |
Copy constructor. This copy constructor implements a deep copy.
◆ ~BilinearFormLiCo()
|
inlinevirtual |
Definition at line 101 of file bilinearForm.hh.
Member Function Documentation
◆ clone() [1/2]
|
virtual |
Virtual constructor.
Returns a pointer to a copy of itself. The caller is responsible to destroy this copy.
Implements concepts::Cloneable.
◆ clone() [2/2]
|
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()
|
protectedvirtual |
Returns information in an output stream.
Reimplemented from concepts::BilinearForm< F, typename Realtype< F >::type >.
◆ operator()() [1/3]
|
virtual |
◆ operator()() [2/3]
|
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
-
elmX Left element (test functions) elmY Right element (trial functions) em Return element matrix
Implemented in concepts::BilinearFormContainer< F, typename Realtype< F >::type >.
◆ operator()() [3/3]
|
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
-
elmX Left element elmY Right element em Return element matrix ep Element pair holding more information on the pair elmX
andelmY
Definition at line 57 of file bilinearForm.hh.
Member Data Documentation
◆ bA
|
private |
Definition at line 114 of file bilinearForm.hh.
◆ bB
|
private |
Definition at line 114 of file bilinearForm.hh.
◆ bfA_
|
private |
Bilinear form.
Definition at line 111 of file bilinearForm.hh.
◆ bfAptr_
|
private |
Definition at line 109 of file bilinearForm.hh.
◆ bfB_
|
private |
Definition at line 111 of file bilinearForm.hh.
◆ bfBptr_
|
private |
Definition at line 109 of file bilinearForm.hh.
◆ cA_
|
private |
Coefficient of bfA
.
Definition at line 117 of file bilinearForm.hh.
◆ cB_
|
private |
Coefficient of bfB
.
Definition at line 119 of file bilinearForm.hh.
◆ em_
|
mutableprivate |
Local element matrix used as temporary storage.
Definition at line 121 of file bilinearForm.hh.
The documentation for this class was generated from the following file:
- operator/bilinearForm.hh