Skip to content

Class: ScheduleRecord

Time-series schedule record for DistOPF. Defines per-hour multipliers for load shapes and PV generation, plus the locational marginal price. The time field is the integer hour index (0-23 for a 24-hour period).

URI: distopf:ScheduleRecord

 classDiagram
    class ScheduleRecord
    click ScheduleRecord href "../ScheduleRecord/"
      ScheduleRecord : default_multiplier

      ScheduleRecord : price

      ScheduleRecord : pv_multiplier

      ScheduleRecord : time

Slots

Name Cardinality and Range Description Inheritance
time 1
Integer
Hour index (zero-based integer time step) direct
pv_multiplier 0..1
Float
PV generation profile multiplier for this hour (0 direct
default_multiplier 0..1
Float
Default load-shape multiplier for this hour (0 direct
price 0..1
Float
Locational marginal price for this hour, in $/MWh direct

Usages

used by used in type used
DistopfModel schedule_records range ScheduleRecord

Comments

  • DistOPF ScheduleRecord is read and written as plain CSV data by the reader/writer, but there is currently no importer or exporter converter that maps it to or from CIM objects. The nearest CIM counterpart would be a RegularIntervalSchedule (the time-schedule container) with one RegularTimePoint per hour, but no such traversal exists yet.

TODOs

  • No CIM converter exists for ScheduleRecord in either direction. Implementing one requires deciding how RegularIntervalSchedule instances attach to the loads/generators/prices they multiply (for example, via EnergyConsumer.SeasonDayTypeSchedules or an equivalent association) before pv_multiplier, default_multiplier, and price can roundtrip.

Identifier and Mapping Information

Schema Source

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

Mappings

Mapping Type Mapped Value
self distopf:ScheduleRecord
native distopf:ScheduleRecord
related cim:RegularIntervalSchedule

LinkML Source

Direct

name: ScheduleRecord
description: Time-series schedule record for DistOPF. Defines per-hour multipliers
  for load shapes and PV generation, plus the locational marginal price. The `time`
  field is the integer hour index (0-23 for a 24-hour period).
todos:
- No CIM converter exists for ScheduleRecord in either direction. Implementing one
  requires deciding how RegularIntervalSchedule instances attach to the loads/generators/prices
  they multiply (for example, via EnergyConsumer.SeasonDayTypeSchedules or an equivalent
  association) before pv_multiplier, default_multiplier, and price can roundtrip.
comments:
- DistOPF ScheduleRecord is read and written as plain CSV data by the reader/writer,
  but there is currently no importer or exporter converter that maps it to or from
  CIM objects. The nearest CIM counterpart would be a RegularIntervalSchedule (the
  time-schedule container) with one RegularTimePoint per hour, but no such traversal
  exists yet.
from_schema: https://gridappsd.org/cimhub/distopf
related_mappings:
- cim:RegularIntervalSchedule
attributes:
  time:
    name: time
    annotations:
      order:
        tag: order
        value: 1
      value_type:
        tag: value_type
        value: int
      separator:
        tag: separator
        value: ','
    description: Hour index (zero-based integer time step).
    comments:
    - Not yet converted. If a converter is implemented, time would correspond to a
      RegularTimePoint's position within the schedule (RegularIntervalSchedule.timePoints),
      one point per hour.
    from_schema: https://gridappsd.org/cimhub/distopf/case/schedule
    related_mappings:
    - cim:RegularTimePoint.sequenceNumber
    rank: 1000
    identifier: true
    domain_of:
    - ScheduleRecord
    range: integer
    required: true
  pv_multiplier:
    name: pv_multiplier
    annotations:
      order:
        tag: order
        value: 2
      native_name:
        tag: native_name
        value: PV
      value_type:
        tag: value_type
        value: float
      precision:
        tag: precision
        value: 6
      separator:
        tag: separator
        value: ','
    description: PV generation profile multiplier for this hour (0.0-1.0).
    todos:
    - Requires a converter that attaches a RegularIntervalSchedule to the PV generators
      it scales and reads/writes RegularTimePoint.value1 per hour.
    comments:
    - Not yet converted; no CIM equivalent is wired up. See the class-level todo.
    from_schema: https://gridappsd.org/cimhub/distopf/case/schedule
    rank: 1000
    ifabsent: float(0.0)
    domain_of:
    - ScheduleRecord
    range: float
    required: false
  default_multiplier:
    name: default_multiplier
    annotations:
      order:
        tag: order
        value: 3
      native_name:
        tag: native_name
        value: default
      value_type:
        tag: value_type
        value: float
      precision:
        tag: precision
        value: 6
      separator:
        tag: separator
        value: ','
    description: Default load-shape multiplier for this hour (0.0 or greater).
    todos:
    - Requires a converter that attaches a RegularIntervalSchedule to the loads it
      scales and reads/writes RegularTimePoint.value1 per hour.
    comments:
    - Not yet converted; no CIM equivalent is wired up. See the class-level todo.
    from_schema: https://gridappsd.org/cimhub/distopf/case/schedule
    rank: 1000
    ifabsent: float(0.0)
    domain_of:
    - ScheduleRecord
    range: float
    required: false
  price:
    name: price
    annotations:
      order:
        tag: order
        value: 4
      value_type:
        tag: value_type
        value: float
      precision:
        tag: precision
        value: 4
      separator:
        tag: separator
        value: ''
    description: Locational marginal price for this hour, in $/MWh.
    todos:
    - No CIM equivalent for a price time series; would require a CIM extension to
      roundtrip.
    comments:
    - DistOPF-only OPF input (locational marginal price signal); no CIM class in the
      standard profile represents a price schedule.
    from_schema: https://gridappsd.org/cimhub/distopf/case/schedule
    rank: 1000
    ifabsent: float(0.0)
    domain_of:
    - ScheduleRecord
    range: float
    required: false
    unit:
      ucum_code: $/MWh

Induced

name: ScheduleRecord
description: Time-series schedule record for DistOPF. Defines per-hour multipliers
  for load shapes and PV generation, plus the locational marginal price. The `time`
  field is the integer hour index (0-23 for a 24-hour period).
todos:
- No CIM converter exists for ScheduleRecord in either direction. Implementing one
  requires deciding how RegularIntervalSchedule instances attach to the loads/generators/prices
  they multiply (for example, via EnergyConsumer.SeasonDayTypeSchedules or an equivalent
  association) before pv_multiplier, default_multiplier, and price can roundtrip.
comments:
- DistOPF ScheduleRecord is read and written as plain CSV data by the reader/writer,
  but there is currently no importer or exporter converter that maps it to or from
  CIM objects. The nearest CIM counterpart would be a RegularIntervalSchedule (the
  time-schedule container) with one RegularTimePoint per hour, but no such traversal
  exists yet.
from_schema: https://gridappsd.org/cimhub/distopf
related_mappings:
- cim:RegularIntervalSchedule
attributes:
  time:
    name: time
    annotations:
      order:
        tag: order
        value: 1
      value_type:
        tag: value_type
        value: int
      separator:
        tag: separator
        value: ','
    description: Hour index (zero-based integer time step).
    comments:
    - Not yet converted. If a converter is implemented, time would correspond to a
      RegularTimePoint's position within the schedule (RegularIntervalSchedule.timePoints),
      one point per hour.
    from_schema: https://gridappsd.org/cimhub/distopf/case/schedule
    related_mappings:
    - cim:RegularTimePoint.sequenceNumber
    rank: 1000
    identifier: true
    owner: ScheduleRecord
    domain_of:
    - ScheduleRecord
    range: integer
    required: true
  pv_multiplier:
    name: pv_multiplier
    annotations:
      order:
        tag: order
        value: 2
      native_name:
        tag: native_name
        value: PV
      value_type:
        tag: value_type
        value: float
      precision:
        tag: precision
        value: 6
      separator:
        tag: separator
        value: ','
    description: PV generation profile multiplier for this hour (0.0-1.0).
    todos:
    - Requires a converter that attaches a RegularIntervalSchedule to the PV generators
      it scales and reads/writes RegularTimePoint.value1 per hour.
    comments:
    - Not yet converted; no CIM equivalent is wired up. See the class-level todo.
    from_schema: https://gridappsd.org/cimhub/distopf/case/schedule
    rank: 1000
    ifabsent: float(0.0)
    owner: ScheduleRecord
    domain_of:
    - ScheduleRecord
    range: float
    required: false
  default_multiplier:
    name: default_multiplier
    annotations:
      order:
        tag: order
        value: 3
      native_name:
        tag: native_name
        value: default
      value_type:
        tag: value_type
        value: float
      precision:
        tag: precision
        value: 6
      separator:
        tag: separator
        value: ','
    description: Default load-shape multiplier for this hour (0.0 or greater).
    todos:
    - Requires a converter that attaches a RegularIntervalSchedule to the loads it
      scales and reads/writes RegularTimePoint.value1 per hour.
    comments:
    - Not yet converted; no CIM equivalent is wired up. See the class-level todo.
    from_schema: https://gridappsd.org/cimhub/distopf/case/schedule
    rank: 1000
    ifabsent: float(0.0)
    owner: ScheduleRecord
    domain_of:
    - ScheduleRecord
    range: float
    required: false
  price:
    name: price
    annotations:
      order:
        tag: order
        value: 4
      value_type:
        tag: value_type
        value: float
      precision:
        tag: precision
        value: 4
      separator:
        tag: separator
        value: ''
    description: Locational marginal price for this hour, in $/MWh.
    todos:
    - No CIM equivalent for a price time series; would require a CIM extension to
      roundtrip.
    comments:
    - DistOPF-only OPF input (locational marginal price signal); no CIM class in the
      standard profile represents a price schedule.
    from_schema: https://gridappsd.org/cimhub/distopf/case/schedule
    rank: 1000
    ifabsent: float(0.0)
    owner: ScheduleRecord
    domain_of:
    - ScheduleRecord
    range: float
    required: false
    unit:
      ucum_code: $/MWh