BlueM.Opt Evaluierung: Difference between revisions

From BlueM
Jump to navigation Jump to search
(→‎SimErgebnis: Neue Struktur seit r1514)
m (fix syntax highlighting)
 
Line 15: Line 15:
Das <code>SimErgebnis</code> kann sowohl Zeitreihen als auch Werte speichern. Identifiziert werden die Ergebnisse anhand eines Keys (String).
Das <code>SimErgebnis</code> kann sowohl Zeitreihen als auch Werte speichern. Identifiziert werden die Ergebnisse anhand eines Keys (String).


<vbnet>
<source lang="vbnet">
     ''' <summary>
     ''' <summary>
     ''' Struktur für Simulationsergebnisse
     ''' Struktur für Simulationsergebnisse
Line 36: Line 36:
         End Sub
         End Sub
     End Structure
     End Structure
</vbnet>
</source>


;TODO: Momentan wird als Key immer die Simulationsgröße verwendet. Um Verwechslungen zu vermeiden, sollte anstattdessen der Name der ObjectiveFunction verwendet werden.
;TODO: Momentan wird als Key immer die Simulationsgröße verwendet. Um Verwechslungen zu vermeiden, sollte anstattdessen der Name der ObjectiveFunction verwendet werden.


[[Kategorie:BlueM.Opt Development]]
[[Kategorie:BlueM.Opt Development]]

Latest revision as of 05:59, 3 March 2018

EVO.png BlueM.Opt | Usage | Development

Ablauf der Evaluierung

EvaluierungsFlow.png

Die spezifischen Simulationsmodelle (z.B. BlueM.Sim, SMUSI, SWMM) sind für die Simulation und das Einlesen der Simulationsergebnisse zuständig.

Die Simulationsergebnisse werden zentral in einer Collection namens SimErgebnis abgelegt.

Die Mutterklasse Sim übergibt den ObjectiveFunctions dann das SimErgebnis, damit diese ihre ObjectiveFunctionValues berechnen können.

Aggregierte Ziele werden im Sim berechnet.

SimErgebnis

Das SimErgebnis kann sowohl Zeitreihen als auch Werte speichern. Identifiziert werden die Ergebnisse anhand eines Keys (String).

    ''' <summary>
    ''' Struktur für Simulationsergebnisse
    ''' </summary>
    Public Structure SimErgebnis_Structure
        ''' <summary>
        ''' Ergebniswerte (Key ist ObjectiveFunction Name)
        ''' </summary>
        Public Werte As Dictionary(Of String, Double)
        ''' <summary>
        ''' Ergebnisreihen (Key ist ObjectiveFunction Name)
        ''' </summary>
        Public Reihen As Dictionary(Of String, Wave.Zeitreihe)
        ''' <summary>
        ''' Löscht alle vorhandenen Ergebnisse
        ''' </summary>
        Public Sub Clear()
            Me.Werte = New Dictionary(Of String, Double)
            Me.Reihen = New Dictionary(Of String, Wave.Zeitreihe)
        End Sub
    End Structure
TODO
Momentan wird als Key immer die Simulationsgröße verwendet. Um Verwechslungen zu vermeiden, sollte anstattdessen der Name der ObjectiveFunction verwendet werden.