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).
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