Class xlifepp::LinearForm#

class LinearForm#

Collaboration diagram for xlifepp::LinearForm:

digraph { graph [bgcolor="#00000000"] node [shape=rectangle style=filled fillcolor="#FFFFFF" font=Helvetica padding=2] edge [color="#1414CE"] "2" [label="std::map< const xlifepp::Unknown *, xlifepp::SuLinearForm >" tooltip="std::map< const xlifepp::Unknown *, xlifepp::SuLinearForm >"] "3" [label="std::map< K, T >" tooltip="std::map< K, T >"] "1" [label="xlifepp::LinearForm" tooltip="xlifepp::LinearForm" fillcolor="#BFBFBF"] "2" -> "3" [dir=forward tooltip="template-instance"] "1" -> "2" [dir=forward tooltip="usage"] }

describes a general linear form, that is a list of linear combinations of basic linear forms.

It is intend to collect linear forms with different unknowns, using a map<const Unknown*,SuLinearForm> It is the enduser’s class

Public Functions

inline LinearForm()#

default constructor

LinearForm(const SuLinearForm &sulf)#

constructor from a linear combination

inline it_mulc begin()#

iterator to the first element of map

inline cit_mulc begin() const#

const iterator to the first element of map

inline void clear()#

clear the map of linear forms

inline it_mulc end()#

iterator to the last+1 element of map

inline cit_mulc end() const#

const iterator to the last+1 element of map

const SuLinearForm &first() const#

return first linear combination

inline const Unknown &firstUnknown() const#

returns first unknown

bool isEmpty() const#

true if no linear form

number_t nbOfUnknowns() const#

number of Unknowns involved

bool normalRequired() const#

true if normal is required

LinearForm operator()(const Unknown&) const#

access to the linear form associated to an unknown

BasicLinearForm &operator()(const Unknown &u, number_t n)#

access to the n-th basic linear form associated to an unknown

const BasicLinearForm &operator()(const Unknown &u, number_t n) const#

access to the n-th basic linear form associated to an unknown

LinearForm &operator*=(const complex_t &c)#

multiply by a complex

LinearForm &operator+=(const LinearForm &lf)#

sum of linear forms

LinearForm &operator-=(const LinearForm &lf)#

difference of linear forms

LinearForm &operator/=(const complex_t &c)#

divide by a complex

EssentialCondition operator=(const complex_t &c)#

construct essential condition lf(u)=c

void print(std::ostream &os) const#

print utility

bool singleUnknown() const#

true if only one unknown involved

StrucType strucType() const#

return the structure type of the linear form

SuLinearForm *subLfp(const Unknown *u)#

access to SuLinearForm pointers related to unknown (non const)

const SuLinearForm *subLfp(const Unknown *u) const#

access to SuLinearForm pointers related to unknown

const Unknown *unknown() const#

return first unknown involved

std::set<const Unknown*> unknowns() const#

return set of Unknown’s involved

ValueType valueType() const#

return the value type of the linear form

bool xnormalRequired() const#

true if x-normal is required

bool xnormalRequiredByOpKernel() const#

true if x-normal is required by operator on Kernel

bool ynormalRequired() const#

true if y-normal is required

bool ynormalRequiredByOpKernel() const#

true if y-normal is required by operator on Kernel