Operating Plan

Aus TALSIM Docs
Version vom 30. November 2020, 18:08 Uhr von Rebscher (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „For every (temporal) supporting point in the annual pattern values for x and y are declared. Is the system state bevor the transformation smaller than the x va…“)
Sprachen:

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 releases as well as internal dependencies can be implemented. This results in the control logic of the river basin model.


System state

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
observed value IOn which observed (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 observation / measurement made? Which specific system element (key) can therefor represent the observation / measurement (with which simulated value for system state)?
temporal reference What is the temporal reference of the observation / 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 Type

Talsim-NG offers the following alternatives to set the type of the system state:

A Current Value uses the current value without any modifications
F Function value is tronsformed by means of a function
B Balance (with target) value is used as discrepancy from target value in %
C Balance (without target) calculates the balance of the value over several timesteps
Z Objective function value is the result of an objective function
P Control gauge currently disabled
S Sum sum of the state instead of singular value


Current Value

The option current value uses the simulated value of the current timestep without any modifications:

result = current value of the system state


Function

The option Function also uses the current timestep as time reference, but it includes the possibility to transform the value by means of a function. Since the other options (exception: current value) can be transformed afterwards as well, this will be explained in the next section.


Balance

A balance can be defined as

Datei:Schema Definition Bilanz EN.png
Optionen für die Definition der Bilanz
  1. an average over the last n time steps (max. 1200)
  2. a fixed timeframe (start date to end date)
  3. a constant timeframe (moving average)
  4. the i-th time step

In the case of Balance(without traget), the balance itself is the start value for the subsequnet Transformation.

In the case of Balance (with target) the discrepancy is used as start value for the Transformation and is calculated as follows:

Discrepancy = ((BALANCE- target value) / target value) * 100

The target value is defined as a constant possibly scaled with an annual pattern.

Sum

Value Modification

Transformation Function

The system states can be transformed additionaly by means of a function (exception: Type Current Value). The options include

KNL
Capacity curve
JGG
Fixed annual pattern
GGL
Variable annual pattern
LAM
Zoning plan / pool-based operating plan
XYZ
Time-dependend function


Capacity curve

The most simple option and the default for any system state that is not treated as current value ist the capacity curve. Here the supporting points of a function are entered, according to which the values are transformed. The functions entry value in each case ist the system state according to its type (e.g. current value with type function, balance with type balance (without target) or discrepnacy (%) with balance (with traget)). The function can be interpreted as a step function or interpolated between the supporting points.

If the user chosses not to perform a transformation, the capacity curve can be defined as a 1:1 function. It is importent that the entire value range is included, because otherwise the y-value of the first supporting point is used for values smaller than the first supporting point and the y-value of the last supporting point for values bigger than the last supporting point. In addition, the interpolate points option must be set here.

Function: entrys unchanged
X-Wert Y-Wert
-10000 -10000
10000 10000


If the user chooses to define constants for the implementation of the operating, it is likewise possible with the option capacity curve:

Funktion: result= constant
X-Wert Y-Wert
0 20
1 20


Annual Pattern

In the option annual pattern a function with one supporting point is defined for varios time periods within a year. With a constant annual pattern the subdivison is done by month, resulting in a total of 12 supporting points. In the case of the variable annual pattern the subdivision is made at any desired date.

For every (temporal) supporting point in the annual pattern values for x and y are declared. Is the system state bevor the transformation smaller than the x value it is set to zero. Is it equal or bigger than the x value it is transformed to the y value. The current date / timestamp decides which supporting point is used for the transformation.

Default is that the supporting points are kept constant within each respective time frame. 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.