Switch Equipment#

pydantic model gdm.distribution.equipment.MatrixImpedanceSwitchEquipment#

Data model for matrix impedance based recloser equipment.

Show JSON schema
{
   "title": "MatrixImpedanceSwitchEquipment",
   "description": "Data model for matrix impedance based recloser equipment.",
   "type": "object",
   "properties": {
      "uuid": {
         "format": "uuid",
         "title": "Uuid",
         "type": "string"
      },
      "name": {
         "title": "Name",
         "type": "string"
      },
      "construction": {
         "default": "OVERHEAD",
         "description": "Construction type of MatrixImpedanceBranchEquipmentBase.",
         "type": "string"
      },
      "r_matrix": {
         "default": "OVERHEAD",
         "description": "Per unit length resistance matrix.",
         "title": "R Matrix",
         "type": "string"
      },
      "x_matrix": {
         "default": "OVERHEAD",
         "description": "Per unit length reactance matrix.",
         "title": "X Matrix",
         "type": "string"
      },
      "c_matrix": {
         "default": "OVERHEAD",
         "description": "Per unit length capacitance matrix.",
         "title": "C Matrix",
         "type": "string"
      },
      "ampacity": {
         "default": "OVERHEAD",
         "description": "Ampacity of the conductor.",
         "title": "Ampacity",
         "type": "string"
      },
      "controller": {
         "anyOf": [
            {
               "$ref": "#/$defs/DistributionSwitchController"
            },
            {
               "type": "null"
            }
         ],
         "default": null,
         "description": "Optional controller for this switch."
      }
   },
   "$defs": {
      "DistributionSwitchController": {
         "additionalProperties": false,
         "description": "Data model for distribution switch controller.",
         "properties": {
            "uuid": {
               "format": "uuid",
               "title": "Uuid",
               "type": "string"
            },
            "name": {
               "default": "",
               "description": "Name of the switch controller.",
               "title": "Name",
               "type": "string"
            },
            "delay": {
               "default": "OVERHEAD",
               "description": "Fixed delay added to the recloser trip time.",
               "title": "Delay",
               "type": "string"
            },
            "normal_state": {
               "description": "Action to open or close the switch after delay time.",
               "enum": [
                  "open",
                  "close"
               ],
               "title": "Normal State",
               "type": "string"
            },
            "is_locked": {
               "description": "Boolean value representing whether the switch is locked or not.",
               "title": "Is Locked",
               "type": "boolean"
            }
         },
         "required": [
            "delay",
            "normal_state",
            "is_locked"
         ],
         "title": "DistributionSwitchController",
         "type": "object"
      }
   },
   "additionalProperties": false,
   "required": [
      "name",
      "r_matrix",
      "x_matrix",
      "c_matrix",
      "ampacity"
   ]
}

Config:
  • str_strip_whitespace: bool = True

  • validate_assignment: bool = True

  • validate_default: bool = True

  • extra: str = forbid

  • use_enum_values: bool = False

  • arbitrary_types_allowed: bool = True

  • populate_by_name: bool = True

Fields:
  • ampacity (infrasys.quantities.Current)

  • c_matrix (gdm.quantities.CapacitancePULength)

  • construction (gdm.distribution.enums.LineType)

  • controller (gdm.distribution.controllers.distribution_switch_controller.DistributionSwitchController | None)

  • name (str)

  • r_matrix (gdm.quantities.ResistancePULength)

  • uuid (uuid.UUID)

  • x_matrix (gdm.quantities.ReactancePULength)

Validators:
  • validate_fields » all fields

field ampacity: Annotated[Current, PINT_SCHEMA, Field(..., description='Ampacity of the conductor.', gt=0)] [Required]#

Ampacity of the conductor.

Constraints:
  • json_schema = {‘type’: ‘string’, ‘default’: ‘OVERHEAD’}

  • gt = 0

Validated by:
  • validate_fields

field c_matrix: Annotated[CapacitancePULength, PINT_SCHEMA, Field(..., description='Per unit length capacitance matrix.')] [Required]#

Per unit length capacitance matrix.

Constraints:
  • json_schema = {‘type’: ‘string’, ‘default’: ‘OVERHEAD’}

Validated by:
  • validate_fields

field construction: Annotated[LineType, PINT_SCHEMA, Field(LineType.OVERHEAD, description='Construction type of MatrixImpedanceBranchEquipmentBase.')] = LineType.OVERHEAD#

Construction type of MatrixImpedanceBranchEquipmentBase.

Constraints:
  • json_schema = {‘type’: ‘string’, ‘default’: ‘OVERHEAD’}

Validated by:
  • validate_fields

field controller: Annotated[DistributionSwitchController | None, FieldInfo(annotation=NoneType, required=False, default=None, description='Optional controller for this switch.')] = None#

Optional controller for this switch.

Validated by:
  • validate_fields

field r_matrix: Annotated[ResistancePULength, PINT_SCHEMA, Field(..., description='Per unit length resistance matrix.')] [Required]#

Per unit length resistance matrix.

Constraints:
  • json_schema = {‘type’: ‘string’, ‘default’: ‘OVERHEAD’}

Validated by:
  • validate_fields

field x_matrix: Annotated[ReactancePULength, PINT_SCHEMA, Field(..., description='Per unit length reactance matrix.')] [Required]#

Per unit length reactance matrix.

Constraints:
  • json_schema = {‘type’: ‘string’, ‘default’: ‘OVERHEAD’}

Validated by:
  • validate_fields