Node and Edge data interfaces#
- pydantic model gridai.interfaces.DistNodeAttrs#
Interface for distribution node attributes.
Example
>>> data = Data(x=[3], edge_index=[2, 2], edge_attr=[2]) >>> data.x[0] ['SOURCE', 0.0, 0.0, 0.0, 0.0, 'BC', 7.199557856794634]
Each node is presented as array with 7 elements in it.
1st element: node_type
2nd element: active_demand_kw
3rd element: reactive_demand_kw
4th element: active_generation_kw
5th element: reactive_generation_kw
6th element: phase_type
7th element: kv_level
- field active_demand_kw: float | None = 0.0#
- field active_generation_kw: float | None = 0.0#
- field kv_level: Annotated[float, FieldInfo(annotation=NoneType, required=True, metadata=[Ge(ge=0), Le(le=700)])] [Required]#
- field node_type: <lambda>, return_type=PydanticUndefined, when_used=always)] = None#
- field phase_type: <lambda>, return_type=PydanticUndefined, when_used=always)] [Required]#
- field reactive_demand_kw: float | None = 0.0#
- field reactive_generation_kw: float | None = 0.0#
- validator compute_node_type » all fields#
Compute node type if not passed.
- pydantic model gridai.interfaces.DistEdgeAttrs#
Interface for distribution edge attributes.
Example
>>> data = Data(x=[3], edge_index=[2, 2], edge_attr=[2]) >>> data.edge_attr[0] [25.0, 'TRANSFORMER', 0.0]
Each is represented as an array with three values.
1st element: capacity_kva
2nd element: edge_type
3rd element: length_miles
- field capacity_kva: Annotated[float, FieldInfo(annotation=NoneType, required=True)] [Required]#
- field edge_type: <lambda>, return_type=PydanticUndefined, when_used=always)] [Required]#
- field length_miles: Annotated[float, FieldInfo(annotation=NoneType, required=True, metadata=[Ge(ge=0)])] [Required]#