Operating Plan
Talsim-NG includes a operation model, i.e.it offers the possibility to simulate storage regulation and distribution through defnied operating rules. Existing or proposed operating rules have to be converted into a Talsim-NG compatible form.
The model equivalent to conduct of measurements within the river basin is the retrieval of so-called system states of the systems elements. This system states can be processed further and can be connected with mathematical and logical operators (also consecutively) into control clusters. The variety of options and possible connections allows for the representation of almost any desired operating rule. The system state / the control cluster to represent the operating rule is linked to the system element which the rule should be applied to. In case of a reservoir physical boundaries for discharge (?) as well as internal dependencies can be implemented. This results in the control logic of the river basin model.
Systemzustand
To determine how to represent a system state / system states one might consider the following questions regarding the operation rule to implement:
subject | Questions about real-world operating rule | Questions about Talsim-NG river basin model | Implementation in Talsim-NG |
---|---|---|---|
measured values | IOn which measured values are the operating rules based? Which parameters are measured? | Which is the equivalent simulated value, or from which simulated value could the parameter be derived? All simulated values i.e. input-, output- and state variables of the system elements are generally accessible (e.g. discharge, reservoir content, ...). | choose system element and parameter → implement system state |
spacial reference | At which location ist the measurement made? | Which specific system element (key) can therefor represent the measurement (with which simulated value for system state)? | |
temporal reference | What is the temporal reference of the measurement? Is the instantaneous value used, a balance or an antecedent value? | Which of the available options in Talsim-NG represents the temporal reference best? | Define objective of the system state and options for value changes respectively |
transformation | Is the measured value changed subsequently bevor it is includet in the operating rule (e.g.unit conversion, weighting function, ...) ? | Which function in Talsim-NG can represent the transformation? | Selection and Implementation of the transformation function of the system state |
After these questions regarding the parameter and the location of measurement are resolved satisfactory, a system state can be created. For this system state state attributes can be defined subsequently. The following options are available:
state attribute objective
Talsim-NG offers the following alternatives to set the typ or the objective of the system state:
A | Current Value | uses the current value without any modifications |
F | Funktion | Wert wird mittels einer Funktion transformiert |
B | Bilanz (mit Zielwert) | Wert wird als Abweichung vom Soll in % verwendet |
C | Bilanz (ohne Zielwert) | Wert wird über Zeitschritte bilanziert) |
Z | Zielfunktion | Wert ist Ergebnis einer Zielfunktion |
P | Unterwasserpegel | momentan deaktiviert |
S | Summe | Summe des Zustandes anstatt Einzelwerte |
Aktueller Wert
Die Option aktueller Wert verwendet den im aktuellen Zeitschritt simulierten Wert ohne Veränderung:
Ergebnis = Aktueller Wert des Systemzustandes
Funktion
Die Option Funktion hat als zeitlichen Bezug ebenfalls den aktuellen Zeitschritt, allerdings schließt sie die Möglichkeit ein, den Wert mittels einer Funktion zu transformieren. Da auch die anderen Optionen (Ausnahme: aktueller Wert) anschließend transformiert werden können, wird das erst im nächsten Abschnitt erläutert.
Bilanz
Die Bilanz kann definiert werden als
- Mittelwert der letzten n Zeitschritte (max. 1200)
- Fixer Zeitraum (Startdatum bis Enddatum)
- Konstanter Zeitraum (gleitendes Mittel)
- i-ter Zeitschritt
Bei der Bilanz ohne Zielwert, ist die Bilanz selbst der Startwert für die anschließende Transformation.
Bei der Bilanz mit Zielwert geht die Abweichung als Startwert in die Transformation ein und diese wird wie folgt berechet:
Abweichung = ((BILANZ- Soll) / Soll) * 100
Der Sollwert wird dazu als Konstante ggfs. skaliert mit einem Jahresgang definiert.
Summe
Werteänderung
Transformationsfunktion
Die Systemzustände können zusätzlich noch über Funktionen transformiert werden (Ausnahme: Zweck aktueller Wert). Es gibt die Optionen
|
Kennlinie |
|
Konstanter Jahresgang |
|
Variabler Jahresgang |
|
Lamellenplan |
|
Zeitabhängige Funktion |
Kennlinie
Die einfachste Option und zugleich Voreinstellung für Systemzustände, die nicht als Aktueller Wert behandelt werden ist die der Kennlinie. Hierbei werden die Stützstellen einer Funktion eingegeben, gemäß derer die Werte transformiert werden. Der Funktionseingang ist jeweils der Systemzustand entsprechend seinem Zweck (also z.B. aktueller Wert bei Zwecke Funktion, Bilanz bei Bilanz (ohne Zielwert) oder die prozentuale Abweichung bei Bilanz (mit Zielwert)). Die Funktion kann als Treppenfunktion interpretiert werden oder zwischen den Stützstellen kann linear interpoliert werden.
Möchte man keine Transformation vornehmen, kann die Kennlinie entsprechend als 1:1 Funktion definiert werden. Wichtig hierbei ist, dass der gesamte mögliche Wertebereich eingeschlossen ist, da ansonsten für Werte kleiner der ersten Stützstelle der y-Wert der kleinsten Stützstelle verwendet wird und bei Werten größer der ersten Stützstelle jeweils der y-Wert der größten Stützstelle. Außerdem muss hier zwingend die Option Stützstellen interpolieren gesetzt werden.
X-Wert | Y-Wert |
---|---|
-10000 | -10000 |
10000 | 10000 |
Möchte man für die Erstellung der Betriebsregeln Konstanten definieren, kann man das ebenfalls über die Option Kennlinie tun:
X-Wert | Y-Wert |
---|---|
0 | 20 |
1 | 20 |
Jahresgang
Bei der Option Jahresgang wird für verschiedene Zeitabschnitte des Jahres jeweils eine Funktion mit einer Stützstelle definiert. Beim konstanten Jahresgang erfolgt die Unterteilung jeweils nach Monaten, es gibt also isngesamt 12 Stützstellen. Beim variablen Jahresgang, wird an beliebigen Datumswerten unterteilt.
Pro zeitlicher Stützstelle wird jeweils ein x- und ein y-Wert eingegeben. Ist der Systemzustandswert vor der Transformation kleiner als der x-Wert wird er zu Null. Ist er größer/gleich dem x-Wert wird er zum y-Wert transformiert. Das aktuelle Datum entscheidet dabei jeweils welche zeitliche Stützstelle verwendet wird.
Standardmäßig werden die Sützstellen für den jeweiligen Zeitabschnitt konstant gehalten. Es gibt aber auch die Möglichkeit in der Zeit linear zu interpolieren.
Lamellenplan
Bei der Option Lamellenplan wird klassischerweise der Speicherinhalt über das Jahr in verschiedene Bereiche (Lamellen) eingeteilt und diesen Lamellen jeweils eine feste Abgabestufen zugeteilt. Es werden also beliebige aufsteigende Abgabestufen definiert und pro festgelegtem Zeitabschnitt werden für jede dieser Abgabestufe die jeweiligen Speicherinhalte eingegeben. Die Option Lamellenplan ist aber nicht auf diese Anwendung beschränkt. Prinzipiell kann jeder beliebige x-Wert (klassisch: Talsperreninhalte) über einen Lamellenplan, zeitlich variabel in einen y-Wert (klassisch: Talsperrenabgaben) transformiert werden. Die y-Werte der Stützstellen sind dabei aufsteigend und für jeden Zeitabschnitt dieselben.
Standardmäßig werden die eingegebenen Stützstellen des Lamellenplans als Blockstufen interpretiert. Es besteht aber auch die Möglichkeit in der Zeit linear zu interpolieren und/ oder zwischen den Stützstellen der x-/y-Werte linear zu interpolieren.
Zeitabhängige Funktion
Die Zeitabhängige Funktion ist dem Lamellenplan sehr ähnlich, aber noch ein bisschen flexibler: Die Stützstellen für die y-Werte müssen für die verschiedenen Zeitabschnitte nur in der Anzahl, nicht aber im Wert dieselben sein, zudem müssen sie nicht zwingend aufsteigend sein. Es können also für verschiedene Zeitabschnitte beliebige Funktionen mit ihren jeweiligen x- und y-Werten definiert werden.
Standardmäßig werden die eingegebenen Stützstellen als Blockstufen interpretiert. Es besteht aber auch die Möglichkeit in der Zeit linear zu interpolieren und/ oder zwischen den Stützstellen der x-/y-Werte linear zu interpolieren.
control cluster
A control cluster is the linkage of system states and other control clusters with matemathical and logical operators. While a system state represents the condition of a system element, a control cluster can be a unified representation of several system states.
The following operators are avaible for linkage:
+/- | Addition and Subtraction |
●/÷ | Multiplication and Division |
<>≤≥ | Comparative Operators |
mn, mx | Minimum, Maximum |
A control cluster can consist of up to five different system states and/or control clusters. As control clusters can continously be linked further there is no effective limitation regarding number. Any possible combination is feasible. There are no limitations regarding e.g. combination of different values and units. To reach a sensible combination is the obligation of the user.
The system states/ control clusters from which a new control cluster is to be build can be scaled with a factor before linkage with an operator (see Verbindungsfenster).
Die Zustandsgruppe selbst hat wie die Systemzustände auch das Zustandsattribut Zweck und kann mit einer Transformationsfunktion noch transformiert werden (s. Zustandsattributefenster).
Lastly the control cluster can be limited in its value range (see connections).
Control logic
When a rule in a control cluster/ system state is assigned in a way that it represents the desired release from a reservoir or the division from a diversion, the control cluster/ system state is connected with the respective system element. Dependencys among various releases can be implemented either in the definition of a control cluster or using the option internal dependency from the reservoir element.