-
Notifications
You must be signed in to change notification settings - Fork 5
/
OutputDatamodelConcept.puml
141 lines (109 loc) · 3.97 KB
/
OutputDatamodelConcept.puml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
@startuml
package models {
abstract class UniqueEntity {
+ {static} UUID_FIELD_NAME: String
+ uuid: UUID
}
package timeseries {}
package value {}
package input {}
note "Has also children in these packages.\ncf. separate uml diagrams" as childNote
UniqueEntity .. childNote
childNote .. input
childNote .. timeseries
childNote .. value
package result {
abstract class ResultEntity{
+ time: ZonedDateTime
+ inputModel: UUID
}
UniqueEntity <|-- ResultEntity
class NodeResult{
+ vMag: ComparableQuantity<Dimensionless>
+ vAng: ComparableQuantity<Angle>
}
ResultEntity <|-- NodeResult
package connector {
abstract class ConnectorResult{
+ iAMag: ComparableQuantity<ElectricCurrent>
+ iAAng: ComparableQuantity<Angle>
+ iBMag: ComparableQuantity<ElectricCurrent>
+ iBAng: ComparableQuantity<Angle>
}
ResultEntity <|-- ConnectorResult
abstract class TransformerResult{
+ tapPos: int
}
ConnectorResult <|-- TransformerResult
class Transformer2wResult
TransformerResult <|-- Transformer2wResult
class Transformer3wResult{
+ iCMag: ComparableQuantity<ElectricCurrent>
+ iCAng: ComparableQuantity<Angle>
}
TransformerResult <|-- Transformer3wResult
class LineResult
ConnectorResult <|-- LineResult
class SwitchResult{
+ closed: boolean
}
ResultEntity <|-- SwitchResult
}
package system {
abstract class SystemParticipantResult{
+ p: ComparableQuantity<Power>
+ q: ComparableQuantity<Power>
}
ResultEntity <|-- SystemParticipantResult
class LoadResult
SystemParticipantResult <|-- LoadResult
class FixedFeedInResult
SystemParticipantResult <|-- FixedFeedInResult
class BmResult
SystemParticipantResult <|-- BmResult
class PvResult
SystemParticipantResult <|-- PvResult
abstract class SystemParticipantWithHeatResult{
- qDot: ComparableQuantity<Power>
}
SystemParticipantResult <|-- SystemParticipantWithHeatResult
class ChpResult
SystemParticipantWithHeatResult <|-- ChpResult
class HpResult
SystemParticipantWithHeatResult <|-- HpResult
class WecResult
SystemParticipantResult <|-- WecResult
class EvcsResult
SystemParticipantResult <|-- EvcsResult
class EvResult{
+ soc: ComparableQuantity<Dimensionless>
}
SystemParticipantResult <|-- EvResult
class StorageResult{
+ soc: ComparableQuantity<Dimensionless>
}
SystemParticipantResult <|-- StorageResult
}
package thermal {
Abstract class ThermalUnitResult {
- qDot: ComparableQuantity<Power> [MW]
}
ResultEntity <|-- ThermalUnitResult
Abstract class ThermalSinkResult
ThermalUnitResult <|-- ThermalSinkResult
class ThermalHouseResult {
- indoorTemperature: ComparableQuantity<Temperature> [°C]
}
ThermalSinkResult <|-- ThermalHouseResult
Abstract class ThermalStorageResult {
- energy: ComparableQuantity<Energy> [MWh]
}
ThermalUnitResult <|-- ThermalStorageResult
class CylindricalStorageResult {
- fillLevel: ComparableQuantity<Dimensionless> [%]
}
ThermalStorageResult <|-- CylindricalStorageResult
}
}
}
@enduml