hpcflow.app.ElementGroup#

class hpcflow.app.ElementGroup(name, where=None, group_by_distinct=None)#

Bases: ElementGroup

A grouping rule for element iterations.

Parameters:
  • name (str) – The name of the grouping rule.

  • where (ElementFilter | None) – A filtering rule to select which iterations to use in the group.

  • group_by_distinct (ParameterPath | None) – If specified, the name of the property to group iterations by.

Methods

from_json_like

Make an instance of this class from JSON (or YAML) data.

to_dict

Serialize this object as a dictionary.

to_json_like

Serialize this object as an object structure that can be trivially converted to JSON.

Attributes

group_by_distinct

If specified, the name of the property to group iterations by.

where

A filtering rule to select which iterations to use in the group.

name

The name of the grouping rule.

classmethod from_json_like(json_like, shared_data=None)#

Make an instance of this class from JSON (or YAML) data.

Parameters:
  • json_like (str | Mapping[str, JSONed] | Sequence[Mapping[str, JSONed]] | None) – The data to deserialise.

  • shared_data (Mapping[str, ObjectList[JSONable]] | None) – Shared context data.

Return type:

The deserialised object.

group_by_distinct: ParameterPath | None = None#

If specified, the name of the property to group iterations by.

name: str#

The name of the grouping rule.

to_dict()#

Serialize this object as a dictionary.

Return type:

dict[str, Any]

to_json_like(dct=None, shared_data=None, exclude=(), path=None)#

Serialize this object as an object structure that can be trivially converted to JSON. Note that YAML can also be produced from the result of this method; it just requires a different final serialization step.

Parameters:
  • dct (dict[str, JSONable] | None) –

  • shared_data (_JSONDeserState) –

  • exclude (Container[str | None]) –

  • path (list | None) –

Return type:

tuple[JSONDocument, _JSONDeserState]

where: ElementFilter | None = None#

A filtering rule to select which iterations to use in the group.