#include <bf_partialderiv.hh>
Public Member Functions | |
BilinearFormTwoPartDeriv (const enum partDerivType i, const enum partDerivType j, const concepts::ElementFormulaContainer< F > frm=concepts::ElementFormulaContainer< F >()) | |
virtual BilinearFormTwoPartDeriv< F > * | clone () const |
virtual void | operator() (const concepts::Element< Real > &elmX, const concepts::Element< Real > &elmY, concepts::ElementMatrix< F > &em) const |
virtual void | operator() (const Element< G > &elmX, const Element< G > &elmY, ElementMatrix< F > &em) const =0 |
virtual void | operator() (const Element< G > &elmX, const Element< G > &elmY, ElementMatrix< F > &em, const ElementPair< G > &ep) const |
void | data (const concepts::RCP< concepts::SharedJacobianAdj< 2 > > d) |
Set the pointer to the shared data. | |
concepts::RCP< concepts::SharedJacobianAdj< 2 > > | data () const |
Gets the pointer to the shared data. | |
Protected Member Functions | |
virtual std::ostream & | info (std::ostream &os) const |
Returns information in an output stream. | |
void | computeIntermediate_ (const BaseQuad< Real > &elm, const int i=-1, const int j=-1) const |
Protected Attributes | |
concepts::Array< F > | intermediateValue_ |
concepts::Array< concepts::Mapping< G, 2 > > | intermediateMatrix_ |
concepts::ElementFormulaContainer< F > | frm_ |
Element formula. | |
concepts::ElementFormulaContainer< concepts::Mapping< G, 2 > > | frmM_ |
Matrix element formula. | |
A function class to calculate element matrices for the bilinear form related to a partial derivative of the trial and (!) test functions (scalar).
The shape functions on the physical cell
The class can be used to construct other bilinear forms, also for vectorial functions.
Definition at line 151 of file bf_partialderiv.hh.
hp2D::BilinearFormTwoPartDeriv< F >::BilinearFormTwoPartDeriv | ( | const enum partDerivType | i, |
const enum partDerivType | j, | ||
const concepts::ElementFormulaContainer< F > | frm = concepts::ElementFormulaContainer< F >() |
||
) |
Constructor
i | Direction of the partial derivative of the test function, X for ![]() ![]() |
j | Direction of the partial derivative of the trial function. |
|
inlinevirtual |
Definition at line 166 of file bf_partialderiv.hh.
|
inlinevirtual |
Virtual constructor. Returns a pointer to a copy of itself. The caller is responsible to destroy this copy.
Implements concepts::BilinearForm< F, G >.
Definition at line 168 of file bf_partialderiv.hh.
|
protectedinherited |
Compute the intermediate data for element matrix computation.
i | if i=0 or 1, then take only i-th column of Jacobian matrix (for test function) |
j | if j=0 or 1, then take only j-th column of Jacobian matrix (for trial function) |
The Jacobian matrices have to been taken both full (i,j = -1) or both partial (i,j = 0 or 1).
Matrix formulas and complex valued scalar formulas are only implemented for full Jacobians.
|
protectedvirtual |
Returns information in an output stream.
Reimplemented from concepts::BilinearForm< F, G >.
|
pure virtualinherited |
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 |
Implemented in vectorial::BilinearForm< F, G >, concepts::BilinearFormLiCo< F, G >, concepts::BilinearFormContainer< F, G >, concepts::BilinearF_Sum< F, H, J, G >, and concepts::BilinearF_W< F, H, J, 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.
|
protectedinherited |
Element formula.
Definition at line 193 of file bilinearFormHelper.hh.
|
protectedinherited |
Matrix element formula.
Definition at line 195 of file bilinearFormHelper.hh.
|
mutableprotectedinherited |
Intermediate matrix
In case of a scalar formula:
In case of a matrix formula
In case of partial Jacobian:
Definition at line 191 of file bilinearFormHelper.hh.
|
mutableprotectedinherited |
Intermediate value
In case of a scalar formula:
In case of a matrix formula:
Definition at line 179 of file bilinearFormHelper.hh.