Berechnungsschema von Speichern/en: Unterschied zwischen den Versionen

Aus TALSIM Docs
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
 
(27 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 2: Zeile 2:


{{Navigation|vorher=Zielpegel|hoch=Hauptseite#Theoretische Grundlagen|nachher=Betriebsregelkonzept}}
{{Navigation|vorher=Zielpegel|hoch=Hauptseite#Theoretische Grundlagen|nachher=Betriebsregelkonzept}}
[[Datei:Bereichsweise_linearisierte_Entnahmefunktion.png|thumb|Areawise linearized withdrawal function]]The simulation of reservoirs is carried out with a newly developed module for the calculation of reservoirs, whose process functions are to be represented linearly in certain areas. The module is a further development of the approach of Ostrowski (1992)<ref name="Ostrowski_1992">'''Ostrowski, M.''' (1992): A universal module for the simulation of hydrological processes, water and soil, issue 11</ref> and is described in detail in Mehler (2000)<ref name="Mehler_2000">'''Mehler, R. ''' (2000): Mischwasserbehandlung - Verfahren und Modellierung, Mitteilungen des Instituts für Wasserbau und Wasserwirtschaft der TU Darmstadt, Heft 113</ref>. It allows the simultaneous solution of the continuity equation for several processes without complex iterations and is briefly explained below.
[[Datei:Bereichsweise_linearisierte_Entnahmefunktion.png|thumb|Piecewisely linearized outflow function]]The simulation of storage elements is carried out with a newly developed module for the calculation of storage elements whose process functions are linear inbetween nodes. This module is based on the approach of Ostrowski (1992)<ref name="Ostrowski_1992">'''Ostrowski, M.''' (1992): A universal module for the simulation of hydrological processes, water and soil, issue 11</ref> and is described in detail in Mehler (2000)<ref name="Mehler_2000">'''Mehler, R. ''' (2000): Mischwasserbehandlung - Verfahren und Modellierung, Mitteilungen des Instituts für Wasserbau und Wasserwirtschaft der TU Darmstadt, Heft 113</ref>. It allows for the simultaneous solving of the continuity equation for multiple processes without complex iterations and is briefly explained below.
For a reservoir whose content depends on several inflow or outflow processes, the continuity equation can be represented as follows:
For a storage element whose storage volume depends on several inflow and outflow processes, the continuity equation can be represented as follows:




Zeile 9: Zeile 9:


:with:  
:with:  
:<code>S(t)</code> = Storage contents of the reservoir
:<code>S(t)</code> = Storage volume
:<code>Q<sub>zu,j</sub>(t)</code> = Inflow process
:<code>Q<sub>zu,j</sub>(t)</code> = Inflow process
:<code>Q<sub>ab,i</sub>(t)</code> = Operational process
:<code>Q<sub>ab,i</sub>(t)</code> = Outflow process
:<code>m</code> = Number of inflow processes
:<code>m</code> = Number of inflow processes
:<code>n</code> = Number of operational process
:<code>n</code> = Number of outflow processes


The withdrawal terms are usually non-linear functions of the storage rate (e.g. withdrawal from the soil storage tank with the process functions)
The outflow terms are usually non-linear functions of the storage volume (e.g. outflow from the soil storage with the process functions).
These functions are linearized area by area.
These functions are piecewisely linearized.


:<math>y(t) = A \cdot \left ( \frac{y_{i+1}-y_i}{S_{i+1}-S_i} \cdot (S(t)-S_i) + y_i \right )</math>
:<math>y(t) = A \cdot \left ( \frac{y_{i+1}-y_i}{S_{i+1}-S_i} \cdot (S(t)-S_i) + y_i \right )</math>


:mit:  
:with:
:<math>A = A_1 \cdot A_l \cdot A_{l+1} \cdot \ldots \cdot A_{p-1} \cdot A_p</math>
:<math>A = A_1 \cdot A_l \cdot A_{l+1} \cdot \ldots \cdot A_{p-1} \cdot A_p</math>
:<code>y(t)</code> = Entnahme aus dem Speicher
:<code>y(t)</code> = Outflow from storage element
:<code>S(t)</code> = Speicherinhalt
:<code>S(t)</code> = Storage volume
:<code>y<sub>i</sub></code> = Größe der Entnahme an der Stützstelle i
:<code>y<sub>i</sub></code> = Outflow value at node i
:<code>S<sub>i</sub></code> = Speicherinhalt an der Stützstelle i
:<code>S<sub>i</sub></code> = Storage volume at node i
:<code>A</code> = Multiplikator der Prozessgröße als Produkt aller weiteren Abhängigkeiten
:<code>A</code> = Multiplier of the process variable as a product of all further dependencies
:<code>p</code> = Anzahl weiterer Abhängigkeiten
:<code>p</code> = Number of additional dependencies


Für jede Entnahmefunktion kann nach Lineariserung eine Geradengleichung aufgestellt werden, die nur noch vom Speicherinhalt abhängig ist. Die Steigung "m" der Geraden ändert sich von Stützstelle zu Stützstelle.
After linearization, a straight line equation which is only dependent on the storage volume can be determined for each process function. The gradient "m" of the line changes from node to node of the process function.
Somit gibt es für jede vom Speicherinhalt abhängige Funktion einen bereichsweise linearisierten Verlauf entlang der Speicherfüllung. Die Funktion selbst kann mit einem für jeden Zeitschritt konstanten Faktor (A) skaliert werden, der alle weiteren Abhängigkeiten als Produkt zusammenfasst.
Thus, for each function dependent on the storage volume, there is a piecewisely linearized function for the entire range of possible storage volumes. The function itself can be scaled with a factor (A) that is constant for each time step, which summarizes all further dependencies as a product.


Die Kontinuitätsgleichung kann nun umformuliert werden zu:
The continuity equation can now be reformulated to:


:<math>\frac{\mbox{d}S}{\mbox{d}t} = \sum_{j=1}^m Q_{z,j}(t) + \sum_{k=1}^m y_{k,i} + \sum_{k=1}^m m_{k,i} \cdot (S(t)-S_i)</math>
:<math>\frac{\mbox{d}S}{\mbox{d}t} = \sum_{j=1}^m Q_{z,j}(t) + \sum_{k=1}^m y_{k,i} + \sum_{k=1}^m m_{k,i} \cdot (S(t)-S_i)</math>
Zeile 38: Zeile 38:
:<math>\frac{\mbox{d}S}{\mbox{d}t} = \sum_{j=1}^m Q_{z,j}(t) + \sum_{k=1}^m y_{k,i} + \mbox{C}_2 \cdot (S(t)-S_i)</math>
:<math>\frac{\mbox{d}S}{\mbox{d}t} = \sum_{j=1}^m Q_{z,j}(t) + \sum_{k=1}^m y_{k,i} + \mbox{C}_2 \cdot (S(t)-S_i)</math>


:mit:
:with:
:<math>\mbox{C}_2 = \sum_{k=1}^m m_{k,i}</math>
:<math>\mbox{C}_2 = \sum_{k=1}^m m_{k,i}</math>


Nach Ausmultiplizieren der Klammer wird die Kontinuitätsgleichung zu:
After multiplying out the brackets the continuity equation becomes:


:<math>\frac{\mbox{d}S}{\mbox{d}t} + \mbox{C}_2 \cdot S(t) = \mbox{C}_1</math>
:<math>\frac{\mbox{d}S}{\mbox{d}t} + \mbox{C}_2 \cdot S(t) = \mbox{C}_1</math>


:mit:
:with:
:<math>\mbox{C}_1 = \sum_{j=1}^m Q_{z,j}(t) + \sum_{k=1}^m y_{k,i} + \mbox{C}_2 \cdot S_i</math>
:<math>\mbox{C}_1 = \sum_{j=1}^m Q_{z,j}(t) + \sum_{k=1}^m y_{k,i} + \mbox{C}_2 \cdot S_i</math>


Diese Gleichung ist eine inhomogene lineare Differentialgleichung erster Ordnung und besitzt folgende Lösung:
This equation is an inhomogeneous first order linear differential equation and has the following solution:


:<math>S(t) = \frac{\mbox{C}_2}{\mbox{C}_1} \cdot (1-e^{-C_1 \cdot t}) + S_0 \cdot e^{-C_1 \cdot t}</math>
:<math>S(t) = \frac{\mbox{C}_2}{\mbox{C}_1} \cdot (1-e^{-C_1 \cdot t}) + S_0 \cdot e^{-C_1 \cdot t}</math>


:mit:
:with:
:<math>S_0 = S(t=0)</math>
:<math>S_0 = S(t=0)</math>




Damit steht die Speicherfüllung zu jedem Zeitpunkt fest. Tritt innerhalb eines Zeitintervalls eine Bereichsüberschreitung ein, sind die Größen C1 und C2 mit den jeweils aktuellen Steigungen und Achsenabschnittswerten der bereichsweise linearisierten Funktionen neu zu berechnen. Die simultane Berechnung der Abgabenfunktionen wird durch Einsetzen der Speicherinhaltsgleichung in die jeweilige Geradengleichung erreicht.  
This means that the storage volume can be determined at any time. If, within one time interval, the storage volume reaches the next node, the values of C1 and C2 must be recalculated with the corresponding gradients and intercepts of the piecewise linearized functions at the new node. The simultaneous calculation of the output functions is achieved by inserting the storage volume equation into the respective straight line equation.  
Allgemein ausgedrückt gilt für die mittlere Intensität aller Abgaben:
Generally speaking, the following holds true for the average intensity of all outputs:


:<math>\bar{y} = \frac{1}{\Delta t} \int_{t=0}^{\Delta t} A \cdot \left [ y_i \cdot S_i + m_i \cdot \left ( \frac{C_2}{C_1} \cdot ( 1 - e^{-C_1 \cdot t} ) + S_0 \cdot e^{-C_1 \cdot t} \right ) \right ]</math>
:<math>\bar{y} = \frac{1}{\Delta t} \int_{t=0}^{\Delta t} A \cdot \left [ y_i \cdot S_i + m_i \cdot \left ( \frac{C_2}{C_1} \cdot ( 1 - e^{-C_1 \cdot t} ) + S_0 \cdot e^{-C_1 \cdot t} \right ) \right ]</math>
Zeile 63: Zeile 63:
:<math>\bar{y} = y_i + m_i \cdot \left [ -S_i + \frac{C_2}{C_1} + (1-e^{-C_1 \cdot \Delta t}) \cdot \left ( \frac{S_0}{\Delta t \cdot C_1} - \frac{C_2}{\Delta t \cdot C_1^2} \right ) \right ]</math>
:<math>\bar{y} = y_i + m_i \cdot \left [ -S_i + \frac{C_2}{C_1} + (1-e^{-C_1 \cdot \Delta t}) \cdot \left ( \frac{S_0}{\Delta t \cdot C_1} - \frac{C_2}{\Delta t \cdot C_1^2} \right ) \right ]</math>


Mit diesem Berechnungsschema können alle Speicher, deren Prozesse bereichsweise linear zu beschreiben sind, berechnet werden. In Talsim-NG werden mit diesem Baustein die Bodenprozesse, die Speicher sowie die Transportstrecken berechnet.
With this method, all storage elements whose processes can be described using piecwisely linear functions can be calculated. In Talsim-NG this module is used in the calculation of soil processes, reservoirs and transport reaches.




==Literaturangaben==
==References==


<references/>
<references/>

Aktuelle Version vom 26. November 2020, 16:39 Uhr

Sprachen:
Piecewisely linearized outflow function

The simulation of storage elements is carried out with a newly developed module for the calculation of storage elements whose process functions are linear inbetween nodes. This module is based on the approach of Ostrowski (1992)[1] and is described in detail in Mehler (2000)[2]. It allows for the simultaneous solving of the continuity equation for multiple processes without complex iterations and is briefly explained below.

For a storage element whose storage volume depends on several inflow and outflow processes, the continuity equation can be represented as follows:


[math]\displaystyle{ \frac{\mbox{d}S(t)}{\mbox{d}t} = \sum_{j=1}^m Q_{zu,j}(t) - \sum_{i=1}^n Q_{ab,i}(t) }[/math]
with:
S(t) = Storage volume
Qzu,j(t) = Inflow process
Qab,i(t) = Outflow process
m = Number of inflow processes
n = Number of outflow processes

The outflow terms are usually non-linear functions of the storage volume (e.g. outflow from the soil storage with the process functions). These functions are piecewisely linearized.

[math]\displaystyle{ y(t) = A \cdot \left ( \frac{y_{i+1}-y_i}{S_{i+1}-S_i} \cdot (S(t)-S_i) + y_i \right ) }[/math]
with:
[math]\displaystyle{ A = A_1 \cdot A_l \cdot A_{l+1} \cdot \ldots \cdot A_{p-1} \cdot A_p }[/math]
y(t) = Outflow from storage element
S(t) = Storage volume
yi = Outflow value at node i
Si = Storage volume at node i
A = Multiplier of the process variable as a product of all further dependencies
p = Number of additional dependencies

After linearization, a straight line equation which is only dependent on the storage volume can be determined for each process function. The gradient "m" of the line changes from node to node of the process function. Thus, for each function dependent on the storage volume, there is a piecewisely linearized function for the entire range of possible storage volumes. The function itself can be scaled with a factor (A) that is constant for each time step, which summarizes all further dependencies as a product.

The continuity equation can now be reformulated to:

[math]\displaystyle{ \frac{\mbox{d}S}{\mbox{d}t} = \sum_{j=1}^m Q_{z,j}(t) + \sum_{k=1}^m y_{k,i} + \sum_{k=1}^m m_{k,i} \cdot (S(t)-S_i) }[/math]
[math]\displaystyle{ \frac{\mbox{d}S}{\mbox{d}t} = \sum_{j=1}^m Q_{z,j}(t) + \sum_{k=1}^m y_{k,i} + \mbox{C}_2 \cdot (S(t)-S_i) }[/math]
with:
[math]\displaystyle{ \mbox{C}_2 = \sum_{k=1}^m m_{k,i} }[/math]

After multiplying out the brackets the continuity equation becomes:

[math]\displaystyle{ \frac{\mbox{d}S}{\mbox{d}t} + \mbox{C}_2 \cdot S(t) = \mbox{C}_1 }[/math]
with:
[math]\displaystyle{ \mbox{C}_1 = \sum_{j=1}^m Q_{z,j}(t) + \sum_{k=1}^m y_{k,i} + \mbox{C}_2 \cdot S_i }[/math]

This equation is an inhomogeneous first order linear differential equation and has the following solution:

[math]\displaystyle{ S(t) = \frac{\mbox{C}_2}{\mbox{C}_1} \cdot (1-e^{-C_1 \cdot t}) + S_0 \cdot e^{-C_1 \cdot t} }[/math]
with:
[math]\displaystyle{ S_0 = S(t=0) }[/math]


This means that the storage volume can be determined at any time. If, within one time interval, the storage volume reaches the next node, the values of C1 and C2 must be recalculated with the corresponding gradients and intercepts of the piecewise linearized functions at the new node. The simultaneous calculation of the output functions is achieved by inserting the storage volume equation into the respective straight line equation. Generally speaking, the following holds true for the average intensity of all outputs:

[math]\displaystyle{ \bar{y} = \frac{1}{\Delta t} \int_{t=0}^{\Delta t} A \cdot \left [ y_i \cdot S_i + m_i \cdot \left ( \frac{C_2}{C_1} \cdot ( 1 - e^{-C_1 \cdot t} ) + S_0 \cdot e^{-C_1 \cdot t} \right ) \right ] }[/math]
[math]\displaystyle{ \bar{y} = y_i + m_i \cdot \left [ -S_i + \frac{C_2}{C_1} + (1-e^{-C_1 \cdot \Delta t}) \cdot \left ( \frac{S_0}{\Delta t \cdot C_1} - \frac{C_2}{\Delta t \cdot C_1^2} \right ) \right ] }[/math]

With this method, all storage elements whose processes can be described using piecwisely linear functions can be calculated. In Talsim-NG this module is used in the calculation of soil processes, reservoirs and transport reaches.


References

  1. Ostrowski, M. (1992): A universal module for the simulation of hydrological processes, water and soil, issue 11
  2. Mehler, R. (2000): Mischwasserbehandlung - Verfahren und Modellierung, Mitteilungen des Instituts für Wasserbau und Wasserwirtschaft der TU Darmstadt, Heft 113