Class xlifepp::SetOfConstraints#

class SetOfConstraints : public std::map<const Unknown*, Constraints*>#

Inheritence diagram for xlifepp::SetOfConstraints:

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

Collaboration diagram for xlifepp::SetOfConstraints:

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

class handles a set of Constraints indexed by Unknown pointer

a zero Unknown pointer means a global constraints: coupling unknowns constraints in that case, there is only one global constraints system in SetOfConstraints if not the case, to each non zero Unknown pointer is associated a constraints system

Note : SetOfConstraints is constructed from EssentialConditions (also stored) and it is deep copied to Term so it is not shared except the virtual dual space/unknown that are not duplicated

Public Functions

inline SetOfConstraints(const EssentialConditions &ecs)#

constructor from EssentialConditions

SetOfConstraints(const SetOfConstraints&)#

copy constructor with full copy of constraints

inline SetOfConstraints(const std::map<const Unknown*, Constraints*> &mc)#

constructor from constraints pointers (no full copy of constraints !)

inline SetOfConstraints(const Unknown *u, Constraints *c = nullptr)#

constructor from a constraints pointer (no full copy of constraints !)

~SetOfConstraints()#

destructor with deallocation of constraints pointers

void clear()#

deallocate constraints pointer and reset the map

void decEcShare() const#

decrement row unknowns nbEcShare

void incEcShare() const#

increment row unknowns nbEcShare

bool isGlobal() const#

return true if SetOfConstraints has a unique global constraints

bool isReduced() const#

return true if all constraints in SetOfConstraints have been already reduced

Constraints *operator()(const Unknown*) const#

direct access to constraints linked to unknown

SetOfConstraints &operator=(const SetOfConstraints&)#

assign operator with full copy of constraints

void print(std::ostream&) const#

print utility

void setRowUnknowns()#

set rowUnknowns list

ValueType valueType() const#

return value type of set of constraints (i.e involved real or complex)

Public Members

std::set<Unknown*> rowUnknowns#

set of row unknowns (ghost)

Friends

friend std::ostream &operator<<(std::ostream&, const SetOfConstraints&)#

print operator