Class xlifepp::IntgBilinearForm#
-
class IntgBilinearForm : public xlifepp::BasicBilinearForm#
-
Inheritence diagram for xlifepp::IntgBilinearForm:
Collaboration diagram for xlifepp::IntgBilinearForm:
describes a bilinear form based on a single integral
intg_domain opu aopu opv
Public Functions
-
IntgBilinearForm(const GeomDomain &dom, const OperatorOnUnknown &opu, AlgebraicOperator aop, const OperatorOnUnknown &opv, const IntegrationMethod &im, SymType st)#
-
constructor from explicit operators
-
IntgBilinearForm(const GeomDomain &dom, const OperatorOnUnknown &opu, AlgebraicOperator aop, const OperatorOnUnknown &opv, QuadRule qr, number_t qo, SymType st)#
-
constructor from explicit operators
-
IntgBilinearForm(const GeomDomain &dom, const OperatorOnUnknowns &opus, const IntegrationMethod &im, SymType st)#
-
constructor from OperatorOnUnknowns
-
IntgBilinearForm(const GeomDomain &dom, const OperatorOnUnknowns &opus, QuadRule qr, number_t qo, SymType st)#
-
constructor from OperatorOnUnknowns
-
IntgBilinearForm(const IntgBilinearForm &ibf)#
-
copy constructor
-
~IntgBilinearForm()#
-
destructor
-
inline AlgebraicOperator algop() const#
-
return the algebraic operator
-
virtual string_t asString() const#
-
interpret as string for print purpose
-
virtual BasicBilinearForm *clone() const#
-
clone of the linear form
-
inline const GeomDomain *domain() const#
-
return the pointer to the domain
-
virtual bool hasJump() const#
-
true if bilinear form has jump, mean operator
-
inline const IntegrationMethod *intgMethod() const#
-
pointer to integration method object
-
IntgBilinearForm &operator=(const IntgBilinearForm &ibf)#
-
assign operator
-
inline const OperatorOnUnknown &opu() const#
-
return the reference to the operator on unknown
-
inline const OperatorOnUnknown *opu_p() const#
-
return the pointer to the operator on unknown
-
inline const OperatorOnUnknown &opv() const#
-
return the reference to the operator on unknown
-
inline const OperatorOnUnknown *opv_p() const#
-
return the pointer to the operator on unknown
-
inline virtual void print(PrintStream &ps) const#
-
print utility
-
virtual void print(std::ostream &os) const#
-
true if bilinear form has jump, mean operator
print utility
-
void setComputationType()#
-
set computation type (_FEComputation,_SPComputation, _FESPComputation)
-
void setIntegrationMethod(const GeomDomain &dom, const OperatorOnUnknowns &opus, QuadRule qr, number_t qo)#
-
set integration method
-
virtual std::vector<bfPair> split() const#
-
split IntgBilinearForm involving particular operators (jump, mean)
split IntgBilinearForm involving particular operators (jump : u1-u2, mean : (u1+u2)/2 for instance, if G is one side of a crack with Gd the opposite side of gamma intg(G,[u]*v)= intg(G,(u|G-u|Gd)*v) is split as intg(G,u*v)-intg(G,u|Gd*v) (v continuous) intg(G,u*[v])= intg(G,u*(v|G-v|Gd)) is split as intg(G,u*v)-intg(G,u*v|Gd) (u continuous) intg(G,{u}*v)= intg(G,(u|G+u|Gd)*v) is split as intg(G,u*v)+intg(G,u|Gd*v) (v continuous) intg(G,u*{v})= intg(G,u*(v|G+v|Gd)) is split as intg(G,u*v)+intg(G,u*v|Gd) (u continuous) intg(G,[u]*[v])= intg(G,(u|G-u|Gd)*(v|G-v|Gd)) is split as intg(G,u*v)+intg(Gd,u*v)-intg(G,u*v|Gd)-intg(G,u|Gd*v) intg(G,{u}*{v})= intg(G,(u|G+u|Gd)*(v|G+v|Gd)) is split as intg(G,u*v)+intg(Gd,u*v)+intg(G,u*v|Gd)+intg(G,u|Gd*v) intg(G,{u}*[v])= intg(G,(u|G+u|Gd)*(v|G-v|Gd)) is split as intg(G,u*v)-intg(Gd,u*v)-intg(G,u*v|Gd)+intg(G,u|Gd*v) intg(G,[u]*{v})= intg(G,(u|G-u|Gd)*(v|G+v|Gd)) is split as intg(G,u*v)-intg(Gd,u*v)+intg(G,u*v|Gd)-intg(G,u|Gd*v)
gives the following table intg(G,u*v) intg(Gd,u*v) intg(G,u*v|Gd) intg(G,u|Gd*v) [u]*v 1 0 0 -1 u*[v] 1 0 -1 0 {u}*v 1 0 0 1 u*{v} 1 0 1 0 [u]*[v] 1 1 -1 -1 {u}*{v} 1 1 1 1 {u}*[v] 1 -1 -1 1 [u]*{v} 1 -1 1 -1 a b c all coefficient are multiplied by the factor f = 1 if no mean operator, f = 0.5 if one mean operator, f = 0.25 if two mean operators
-
inline virtual LinearFormType type() const#
-
return the type of the linear form
-
IntgBilinearForm(const GeomDomain &dom, const OperatorOnUnknown &opu, AlgebraicOperator aop, const OperatorOnUnknown &opv, const IntegrationMethod &im, SymType st)#