Skip to content

Class: CapacitorRecord

Shunt capacitor data record for DistOPF. Reactive power values are in per-unit (base s_base, taken from the bus record for the connected bus).

URI: distopf:CapacitorRecord

 classDiagram
    class CapacitorRecord
    click CapacitorRecord href "../CapacitorRecord/"
      CapacitorRecord : id

      CapacitorRecord : name

      CapacitorRecord : phases

      CapacitorRecord : qa

      CapacitorRecord : qb

      CapacitorRecord : qc

Slots

Name Cardinality and Range Description Inheritance
id 1
Integer
Capacitor integer index (one-based row number) direct
name 0..1
String
Capacitor name label (matches the name of the bus where the capacitor connect... direct
qa 0..1
Float
Phase A reactive power injection in per-unit (base s_base) direct
qb 0..1
Float
Phase B reactive power injection in per-unit (base s_base) direct
qc 0..1
Float
Phase C reactive power injection in per-unit (base s_base) direct
phases 0..1
String
Active phases for this capacitor (abc, a, b, c, ab, ac, bc) direct

Usages

used by used in type used
DistopfModel capacitor_records range CapacitorRecord

Comments

  • DistOPF CapacitorRecord maps to CIM LinearShuntCompensator. Import creates one LinearShuntCompensator per record, deriving susceptance from the record's reactive power and the connected bus's nominal voltage. Export reads either per-phase LinearShuntCompensatorPhase children (preferred) or the parent-level bPerSection (fallback, all three phases equal) and converts back to per-unit reactive power.

Identifier and Mapping Information

Schema Source

  • from schema: https://gridappsd.org/cimhub/distopf

Mappings

Mapping Type Mapped Value
self distopf:CapacitorRecord
native distopf:CapacitorRecord
exact cim:LinearShuntCompensator

LinkML Source

Direct

name: CapacitorRecord
description: Shunt capacitor data record for DistOPF. Reactive power values are in
  per-unit (base s_base, taken from the bus record for the connected bus).
comments:
- DistOPF CapacitorRecord maps to CIM LinearShuntCompensator. Import creates one LinearShuntCompensator
  per record, deriving susceptance from the record's reactive power and the connected
  bus's nominal voltage. Export reads either per-phase LinearShuntCompensatorPhase
  children (preferred) or the parent-level bPerSection (fallback, all three phases
  equal) and converts back to per-unit reactive power.
from_schema: https://gridappsd.org/cimhub/distopf
exact_mappings:
- cim:LinearShuntCompensator
attributes:
  id:
    name: id
    annotations:
      order:
        tag: order
        value: 1
      value_type:
        tag: value_type
        value: int
      separator:
        tag: separator
        value: ','
    description: Capacitor integer index (one-based row number).
    comments:
    - 'DistOPF-only: a row index used to key this record, not a CIM identity. On import
      the capacitor''s ConnectivityNode is looked up by name (falling back to this
      index against the bus table) and the CIM object itself is identified by its
      own mRID.'
    from_schema: https://gridappsd.org/cimhub/distopf/classes/capacitor
    identifier: true
    domain_of:
    - BusRecord
    - GeneratorRecord
    - CapacitorRecord
    - BatteryRecord
    - RegulatorRecord
    range: integer
    required: true
  name:
    name: name
    annotations:
      order:
        tag: order
        value: 2
      value_type:
        tag: value_type
        value: string
      quote:
        tag: quote
        value: false
      separator:
        tag: separator
        value: ','
    description: Capacitor name label (matches the name of the bus where the capacitor
      connects).
    comments:
    - 'Import: LinearShuntCompensator.name = name, and the same string is used to
      look up the connected ConnectivityNode by name. Export: name = LinearShuntCompensator.name
      (the CIM object''s own name, not necessarily the bus name at export time).'
    from_schema: https://gridappsd.org/cimhub/distopf/classes/capacitor
    exact_mappings:
    - cim:IdentifiedObject.name
    ifabsent: string("")
    domain_of:
    - BusRecord
    - BranchRecord
    - GeneratorRecord
    - CapacitorRecord
    - BatteryRecord
    range: string
    required: false
  qa:
    name: qa
    annotations:
      order:
        tag: order
        value: 3
      value_type:
        tag: value_type
        value: float
      precision:
        tag: precision
        value: 6
      separator:
        tag: separator
        value: ','
    description: Phase A reactive power injection in per-unit (base s_base).
    comments:
    - 'Import: qa, qb, and qc are summed and converted to susceptance via bPerSection
      = (qa + qb + qc) × s_base / v_ln², using the connected bus''s line-to-neutral
      base voltage; the single resulting LinearShuntCompensator.bPerSection is not
      currently split back out per phase. Export: qa = LinearShuntCompensatorPhase(phase=A).bPerSection
      × v_ln² / s_base when per-phase children exist; otherwise the parent-level bPerSection
      is applied equally to qa, qb, and qc.'
    from_schema: https://gridappsd.org/cimhub/distopf/classes/capacitor
    close_mappings:
    - cim:LinearShuntCompensatorPhase.bPerSection
    ifabsent: float(0.0)
    domain_of:
    - GeneratorRecord
    - CapacitorRecord
    range: float
    required: false
    unit:
      ucum_code: pu
  qb:
    name: qb
    annotations:
      order:
        tag: order
        value: 4
      value_type:
        tag: value_type
        value: float
      precision:
        tag: precision
        value: 6
      separator:
        tag: separator
        value: ','
    description: Phase B reactive power injection in per-unit (base s_base).
    comments:
    - 'Same import/export formula as qa (phase B): see the qa comment for the full
      bPerSection derivation.'
    from_schema: https://gridappsd.org/cimhub/distopf/classes/capacitor
    close_mappings:
    - cim:LinearShuntCompensatorPhase.bPerSection
    ifabsent: float(0.0)
    domain_of:
    - GeneratorRecord
    - CapacitorRecord
    range: float
    required: false
    unit:
      ucum_code: pu
  qc:
    name: qc
    annotations:
      order:
        tag: order
        value: 5
      value_type:
        tag: value_type
        value: float
      precision:
        tag: precision
        value: 6
      separator:
        tag: separator
        value: ','
    description: Phase C reactive power injection in per-unit (base s_base).
    comments:
    - 'Same import/export formula as qa (phase C): see the qa comment for the full
      bPerSection derivation.'
    from_schema: https://gridappsd.org/cimhub/distopf/classes/capacitor
    close_mappings:
    - cim:LinearShuntCompensatorPhase.bPerSection
    ifabsent: float(0.0)
    domain_of:
    - GeneratorRecord
    - CapacitorRecord
    range: float
    required: false
    unit:
      ucum_code: pu
  phases:
    name: phases
    annotations:
      order:
        tag: order
        value: 6
      value_type:
        tag: value_type
        value: string
      quote:
        tag: quote
        value: false
      separator:
        tag: separator
        value: ''
    description: Active phases for this capacitor (abc, a, b, c, ab, ac, bc).
    comments:
    - 'Not used on import (the importer always creates a single three-phase LinearShuntCompensator).
      Export: derived from the set of phases with a LinearShuntCompensatorPhase child
      (a, b, and/or c); defaults to "abc" when no per-phase children are present.'
    from_schema: https://gridappsd.org/cimhub/distopf/classes/capacitor
    related_mappings:
    - cim:LinearShuntCompensatorPhase.phase
    ifabsent: string("abc")
    domain_of:
    - BusRecord
    - BranchRecord
    - GeneratorRecord
    - CapacitorRecord
    - BatteryRecord
    - RegulatorRecord
    range: string
    required: false

Induced

name: CapacitorRecord
description: Shunt capacitor data record for DistOPF. Reactive power values are in
  per-unit (base s_base, taken from the bus record for the connected bus).
comments:
- DistOPF CapacitorRecord maps to CIM LinearShuntCompensator. Import creates one LinearShuntCompensator
  per record, deriving susceptance from the record's reactive power and the connected
  bus's nominal voltage. Export reads either per-phase LinearShuntCompensatorPhase
  children (preferred) or the parent-level bPerSection (fallback, all three phases
  equal) and converts back to per-unit reactive power.
from_schema: https://gridappsd.org/cimhub/distopf
exact_mappings:
- cim:LinearShuntCompensator
attributes:
  id:
    name: id
    annotations:
      order:
        tag: order
        value: 1
      value_type:
        tag: value_type
        value: int
      separator:
        tag: separator
        value: ','
    description: Capacitor integer index (one-based row number).
    comments:
    - 'DistOPF-only: a row index used to key this record, not a CIM identity. On import
      the capacitor''s ConnectivityNode is looked up by name (falling back to this
      index against the bus table) and the CIM object itself is identified by its
      own mRID.'
    from_schema: https://gridappsd.org/cimhub/distopf/classes/capacitor
    identifier: true
    owner: CapacitorRecord
    domain_of:
    - BusRecord
    - GeneratorRecord
    - CapacitorRecord
    - BatteryRecord
    - RegulatorRecord
    range: integer
    required: true
  name:
    name: name
    annotations:
      order:
        tag: order
        value: 2
      value_type:
        tag: value_type
        value: string
      quote:
        tag: quote
        value: false
      separator:
        tag: separator
        value: ','
    description: Capacitor name label (matches the name of the bus where the capacitor
      connects).
    comments:
    - 'Import: LinearShuntCompensator.name = name, and the same string is used to
      look up the connected ConnectivityNode by name. Export: name = LinearShuntCompensator.name
      (the CIM object''s own name, not necessarily the bus name at export time).'
    from_schema: https://gridappsd.org/cimhub/distopf/classes/capacitor
    exact_mappings:
    - cim:IdentifiedObject.name
    ifabsent: string("")
    owner: CapacitorRecord
    domain_of:
    - BusRecord
    - BranchRecord
    - GeneratorRecord
    - CapacitorRecord
    - BatteryRecord
    range: string
    required: false
  qa:
    name: qa
    annotations:
      order:
        tag: order
        value: 3
      value_type:
        tag: value_type
        value: float
      precision:
        tag: precision
        value: 6
      separator:
        tag: separator
        value: ','
    description: Phase A reactive power injection in per-unit (base s_base).
    comments:
    - 'Import: qa, qb, and qc are summed and converted to susceptance via bPerSection
      = (qa + qb + qc) × s_base / v_ln², using the connected bus''s line-to-neutral
      base voltage; the single resulting LinearShuntCompensator.bPerSection is not
      currently split back out per phase. Export: qa = LinearShuntCompensatorPhase(phase=A).bPerSection
      × v_ln² / s_base when per-phase children exist; otherwise the parent-level bPerSection
      is applied equally to qa, qb, and qc.'
    from_schema: https://gridappsd.org/cimhub/distopf/classes/capacitor
    close_mappings:
    - cim:LinearShuntCompensatorPhase.bPerSection
    ifabsent: float(0.0)
    owner: CapacitorRecord
    domain_of:
    - GeneratorRecord
    - CapacitorRecord
    range: float
    required: false
    unit:
      ucum_code: pu
  qb:
    name: qb
    annotations:
      order:
        tag: order
        value: 4
      value_type:
        tag: value_type
        value: float
      precision:
        tag: precision
        value: 6
      separator:
        tag: separator
        value: ','
    description: Phase B reactive power injection in per-unit (base s_base).
    comments:
    - 'Same import/export formula as qa (phase B): see the qa comment for the full
      bPerSection derivation.'
    from_schema: https://gridappsd.org/cimhub/distopf/classes/capacitor
    close_mappings:
    - cim:LinearShuntCompensatorPhase.bPerSection
    ifabsent: float(0.0)
    owner: CapacitorRecord
    domain_of:
    - GeneratorRecord
    - CapacitorRecord
    range: float
    required: false
    unit:
      ucum_code: pu
  qc:
    name: qc
    annotations:
      order:
        tag: order
        value: 5
      value_type:
        tag: value_type
        value: float
      precision:
        tag: precision
        value: 6
      separator:
        tag: separator
        value: ','
    description: Phase C reactive power injection in per-unit (base s_base).
    comments:
    - 'Same import/export formula as qa (phase C): see the qa comment for the full
      bPerSection derivation.'
    from_schema: https://gridappsd.org/cimhub/distopf/classes/capacitor
    close_mappings:
    - cim:LinearShuntCompensatorPhase.bPerSection
    ifabsent: float(0.0)
    owner: CapacitorRecord
    domain_of:
    - GeneratorRecord
    - CapacitorRecord
    range: float
    required: false
    unit:
      ucum_code: pu
  phases:
    name: phases
    annotations:
      order:
        tag: order
        value: 6
      value_type:
        tag: value_type
        value: string
      quote:
        tag: quote
        value: false
      separator:
        tag: separator
        value: ''
    description: Active phases for this capacitor (abc, a, b, c, ab, ac, bc).
    comments:
    - 'Not used on import (the importer always creates a single three-phase LinearShuntCompensator).
      Export: derived from the set of phases with a LinearShuntCompensatorPhase child
      (a, b, and/or c); defaults to "abc" when no per-phase children are present.'
    from_schema: https://gridappsd.org/cimhub/distopf/classes/capacitor
    related_mappings:
    - cim:LinearShuntCompensatorPhase.phase
    ifabsent: string("abc")
    owner: CapacitorRecord
    domain_of:
    - BusRecord
    - BranchRecord
    - GeneratorRecord
    - CapacitorRecord
    - BatteryRecord
    - RegulatorRecord
    range: string
    required: false