Class xlifepp::KernelOperatorOnUnknowns#

class KernelOperatorOnUnknowns#

generalization to kernel form describes a pair of OperatorOnUnknows linked by a Kernel operation: (op_u aop_u op_ker) aop_v op_v respect the order of operators, operator u at left and operator v at right

Public Functions

inline KernelOperatorOnUnknowns()#

default constructor

KernelOperatorOnUnknowns(const OperatorOnUnknown&, AlgebraicOperator, const OperatorOnKernel&, AlgebraicOperator, const OperatorOnUnknown&, bool right = false)#

basic constructor

inline AlgebraicOperator &algopu()#

returns algebraic operation between u and kernel (non const)

inline AlgebraicOperator algopu() const#

returns algebraic operation between u and kernel (const)

inline AlgebraicOperator &algopv()#

returns algebraic operation between kernel and v (non const)

inline AlgebraicOperator algopv() const#

returns algebraic operation between kernel and v (const)

string_t asString() const#

return as symbolic string

inline dimen_t diffOrder() const#

returns global order of differential operator

inline dimen_t diffOrder_u() const#

returns order of differential operator on u

inline dimen_t diffOrder_v() const#

returns order of differential operator on v

template<typename K>
void eval(const Point&, const Point&, const ShapeValues&, const ShapeValues&, K, Matrix<K>&, const Vector<real_t> *nx = nullptr, const Vector<real_t> *ny = nullptr) const#

evaluate at a couple X,Y from shapevalues

template<typename K>
void evalF(const Point&, const Point&, const ShapeValues&, const ShapeValues&, K, const Vector<real_t>*, const Vector<real_t>*, dimen_t, dimen_t, bool, bool, bool, bool, bool, ExtensionData *extdata, Vector<K>&, Vector<K>&, Vector<K>&, Matrix<K> &res) const#

evaluate at a couple X,Y from shapevalues (faster)

inline bool isKernelType() const#

returns true if there is a kernel

inline const string_t &kernelName() const#

returns kernel shortname

inline const OperatorOnKernel &opker() const#

returns kernel operator

inline OperatorOnUnknown &opu()#

returns left operator on unknown (non const)

inline const OperatorOnUnknown &opu() const#

returns left operator on unknown (const)

inline OperatorOnUnknown &opv()#

returns right operator on unknown (non const)

inline const OperatorOnUnknown &opv() const#

reutrns right operator on unknown (const)

void print(std::ostream&) const#

print utility

inline bool priorityIsRight() const#

returns true if right priority in operation: opu aop (opker aop opv)

void setUnknowns(const Unknown&, const Unknown&)#

set (change) the unknowns

inline real_t singularOrder() const#

returns singularity order (0 if not singular)

inline SingularityType singularType() const#

returns type of singularity (_notsingular, _r, _logr,_loglogr)

inline uvPair unknowns() const#

returns unknown pointers u,v

ValueType valueType() const#

return value type (_real or _complex)

inline bool xnormalRequired() const#

returns true if normal required on u

inline bool ynormalRequired() const#

returns true if normal required on v