Sets

Currently, EdelweissFE supports nodesets and elementsets. Since for the usage of nodesets or elementsets in the outputmanagers or constraints the ordering of the respective objects is of importance they are based on a custom ordered set object.

Relevant modules:

  • edelweissfe.sets.orderedset

  • edelweissfe.sets.nodeset

  • edelweissfe.sets.elementset

class edelweissfe.sets.orderedset.ImmutableOrderedSet(name, item_s)[source]

An immutable ordered set.

Parameters
  • name (str) – A name for the object.

  • items – A list of items.

Methods

add(item_s)

Add an item or an iterable of items to the OrderedSet

checkObjectType(obj)

Checks if the object type is allowed in the OrderedSet

clear()

forceIter(item_s)

Return an iterator object for item_s even if item_s itself is not iterable

get(k[,d])

items()

keys()

pop(k[,d])

If key is not found, d is returned if given, otherwise KeyError is raised.

popitem()

as a 2-tuple; but raise KeyError if D is empty.

setdefault(k[,d])

update([E, ]**F)

If E present and has a .keys() method, does: for k in E: D[k] = E[k] If E present and lacks .keys() method, does: for (k, v) in E: D[k] = v In either case, this is followed by: for k, v in F.items(): D[k] = v

values()

copy

fromkeys

add(item_s)[source]

Add an item or an iterable of items to the OrderedSet

class edelweissfe.sets.orderedset.OrderedSet(name, item_s)[source]

An ordered set.

Parameters
  • name (str) – A name for the object.

  • items – A list of items.

Methods

add(item_s)

Add an item or an iterable of items to the OrderedSet

checkObjectType(obj)

Checks if the object type is allowed in the OrderedSet

clear()

forceIter(item_s)

Return an iterator object for item_s even if item_s itself is not iterable

get(k[,d])

items()

keys()

pop(k[,d])

If key is not found, d is returned if given, otherwise KeyError is raised.

popitem()

as a 2-tuple; but raise KeyError if D is empty.

setdefault(k[,d])

update([E, ]**F)

If E present and has a .keys() method, does: for k in E: D[k] = E[k] If E present and lacks .keys() method, does: for (k, v) in E: D[k] = v In either case, this is followed by: for k, v in F.items(): D[k] = v

values()

copy

fromkeys

add(item_s)[source]

Add an item or an iterable of items to the OrderedSet

checkObjectType(obj)[source]

Checks if the object type is allowed in the OrderedSet

forceIter(item_s)[source]

Return an iterator object for item_s even if item_s itself is not iterable

class edelweissfe.sets.nodeset.NodeSet(label, nodes)[source]

A basic node set. It has a label, and a list containing the unique nodes.

Parameters
  • label (str) – The unique label for this element set.

  • nodes – A list of nodes.

Methods

add(item_s)

Add an item or an iterable of items to the OrderedSet

checkObjectType(obj)

Checks if the object type is allowed in the OrderedSet

clear()

forceIter(item_s)

Return an iterator object for item_s even if item_s itself is not iterable

get(k[,d])

items()

keys()

pop(k[,d])

If key is not found, d is returned if given, otherwise KeyError is raised.

popitem()

as a 2-tuple; but raise KeyError if D is empty.

setdefault(k[,d])

update([E, ]**F)

If E present and has a .keys() method, does: for k in E: D[k] = E[k] If E present and lacks .keys() method, does: for (k, v) in E: D[k] = v In either case, this is followed by: for k, v in F.items(): D[k] = v

values()

copy

fromkeys

class edelweissfe.sets.elementset.ElementSet(label, elements)[source]

A basic element set. It has a label, and a list containing unique elements.

Parameters
  • name – The unique label for this element set.

  • elements – A list of elements.

  • label (str) –

Methods

add(item_s)

Add an item or an iterable of items to the OrderedSet

checkObjectType(obj)

Checks if the object type is allowed in the OrderedSet

clear()

forceIter(item_s)

Return an iterator object for item_s even if item_s itself is not iterable

get(k[,d])

items()

keys()

pop(k[,d])

If key is not found, d is returned if given, otherwise KeyError is raised.

popitem()

as a 2-tuple; but raise KeyError if D is empty.

setdefault(k[,d])

update([E, ]**F)

If E present and has a .keys() method, does: for k in E: D[k] = E[k] If E present and lacks .keys() method, does: for (k, v) in E: D[k] = v In either case, this is followed by: for k, v in F.items(): D[k] = v

values()

copy

extractNodeSet

fromkeys