Calculates 3 statistics, how many peaks are predicted correctly, for how many peak the height is predicted incorrectly and how many peaks are missed. For the calculation input forecast time series with value properties are compared to observed time series

Forecast Peak config example
<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSpy v2007 sp2 (http://www.altova.com) by WL | Delft Hydraulics (WL | Delft Hydraulics) -->
<transformationModule version="1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.wldelft.nl/fews"
                 xsi:schemaLocation="http://www.wldelft.nl/fews http://fews.wldelft.nl/schemas/version1.0/transformationModule.xsd">
   <variable>
      <variableId>inputObserved</variableId>
      <timeSeriesSet>
         <moduleInstanceId>ForecastPeakTest</moduleInstanceId>
         <valueType>scalar</valueType>
         <parameterId>H.obs.proc</parameterId>
         <locationSetId>ForecastPeakLocationSet</locationSetId>
         <timeSeriesType>external historical</timeSeriesType>
         <timeStep unit="nonequidistant"/>
         <relativeViewPeriod unit="day" start="-30" end="0"/>
         <readWriteMode>add originals</readWriteMode>
      </timeSeriesSet>
   </variable>
   <variable>
      <variableId>inputForecast</variableId>
      <timeSeriesSet>
         <moduleInstanceId>ForecastPeakTest</moduleInstanceId>
         <valueType>scalar</valueType>
         <parameterId>H.issued.fcst</parameterId>
         <locationSetId>ForecastPeakLocationSet</locationSetId>
         <timeSeriesType>external forecasting</timeSeriesType>
         <timeStep unit="nonequidistant"/>
         <readWriteMode>read complete forecast</readWriteMode>
      </timeSeriesSet>
   </variable>
   <variable>
      <variableId>missedPeak</variableId>
      <timeSeriesSet>
         <moduleInstanceId>ForecastPeakTest</moduleInstanceId>
         <valueType>scalar</valueType>
         <parameterId>ValueCount</parameterId>
         <qualifierId>missedPeak</qualifierId>
         <locationSetId>ForecastPeakLocationSet</locationSetId>
         <timeSeriesType>external historical</timeSeriesType>
         <timeStep unit="nonequidistant"/>
         <relativeViewPeriod unit="day" start="-1" end="1"/>
         <readWriteMode>editing visible to all future task runs</readWriteMode>
      </timeSeriesSet>
   </variable>
   <variable>
      <variableId>missedHeight</variableId>
      <timeSeriesSet>
         <moduleInstanceId>ForecastPeakTest</moduleInstanceId>
         <valueType>scalar</valueType>
         <parameterId>ValueCount</parameterId>
         <qualifierId>missedHeight</qualifierId>
         <locationSetId>ForecastPeakLocationSet</locationSetId>
         <timeSeriesType>external historical</timeSeriesType>
         <timeStep unit="nonequidistant"/>
         <relativeViewPeriod unit="day" start="-1" end="1"/>
         <readWriteMode>editing visible to all future task runs</readWriteMode>
      </timeSeriesSet>
   </variable>
   <variable>
      <variableId>hit</variableId>
      <timeSeriesSet>
         <moduleInstanceId>ForecastPeakTest</moduleInstanceId>
         <valueType>scalar</valueType>
         <parameterId>ValueCount</parameterId>
         <qualifierId>hit</qualifierId>
         <locationSetId>ForecastPeakLocationSet</locationSetId>
         <timeSeriesType>external historical</timeSeriesType>
         <timeStep unit="nonequidistant"/>
         <relativeViewPeriod unit="day" start="-1" end="1"/>
         <readWriteMode>editing visible to all future task runs</readWriteMode>
      </timeSeriesSet>
   </variable>
   <transformation id="ForecastPeakTest">
      <statisticsValueProperties>
         <forecastPeak>
            <inputObservedVariable>
               <variableId>inputObserved</variableId>
            </inputObservedVariable>
            <inputForecastVariable>
               <variableId>inputForecast</variableId>
            </inputForecastVariable>
            <peakValueProperty id="Hydrograph_Type" value="Peak"/>
            <peakRangeAttributeId>peakRange</peakRangeAttributeId>
            <peakSearchPeriodAttributeId>searchPeriod</peakSearchPeriodAttributeId>
            <missedPeakMinimumValueAttributeId>minimumMissedPeakValue</missedPeakMinimumValueAttributeId>
            <rangeValueProperty id="Prediction_Level_Type" value="Range"/>
            <forecastSearchPeriod start="-30" end="0" unit="day"/>
            <outputMissedPeakCountVariable>
               <variableId>missedPeak</variableId>
            </outputMissedPeakCountVariable>
            <outputMissedHeightCountVariable>
               <variableId>missedHeight</variableId>
            </outputMissedHeightCountVariable>
            <outputHitCountVariable>
               <variableId>hit</variableId>
            </outputHitCountVariable>
         </forecastPeak>
      </statisticsValueProperties>
   </transformation>
</transformationModule>
  • No labels