schema:

transformationTypes.xsd

keywords:

transformation, trend, persistencetrend

Description and Usage

This transformation "predicts" how the timeseries would continue based on the trend of the existing data. It can be configured how long of a window should be taken into consideration for the trend.

Input/Output time series

This function takes one input time series and produces one or two output time series.

  • <inputTimeSeries>: An equidistant  scalar time series
  • <outputTimeSeries>:An equidistant  scalar time series (longer than the original series). Has to have at least one overlapping existing time stap with inputTimeSeries. This will contain the forecast values only, observation values are not copied.
  • <outputHistoricTimeSeries>::An equidistant  scalar time series. Optional. It has to have the same time steps as the input time series.  It uses the same window to create the trend as outputTimeSeries, and creates one forecast point (same time window into the future. Then it shifts the time window for the data trend one time step back in time, and creates another forecast, which it exactly one time step sooner than the previous one. It loops though all the input values like this, creating a series of forecasts.

Configuration

Define 2 time series as variables to be used as input and output.

<availableObservedValues>

Required element defining how many non-missing values need to be present in the time window (from which the trend is calculated.)

<consecutiveObservedValues>

Required element defining the non-missing values in the time window  (from which the trend is calculated) need to be consecutive. If set to false the series of values present are allowed to be broken up by missing values.

<window>

Required element defining the time period in the input time series from which the trend will be calculated. The window is calculated from the last observed value time and not from T0.

Example


<?xml version="1.0" encoding="UTF-8"?>
<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">
	<!--2 variables (with any name) need to be configured to be used as inputs and output.-->
	<variable>
		<variableId>input</variableId>
		<timeSeriesSet>
			<moduleInstanceId>Import_Telemetry</moduleInstanceId>
			<valueType>scalar</valueType>
			<parameterId>H.obs</parameterId>
			<locationId>712170</locationId>
			<timeSeriesType>external historical</timeSeriesType>
			<timeStep unit="minute" multiplier="15"/>
			<relativeViewPeriod unit="hour" start="-2" end="6" startOverrulable="false" endOverrulable="true"/>
			<readWriteMode>read only</readWriteMode>
		</timeSeriesSet>
	</variable>
	<variable>
		<variableId>output</variableId>
		<timeSeriesSet>
			<moduleInstanceId>NewRateOfRise</moduleInstanceId>
			<valueType>scalar</valueType>
			<parameterId>H.forecast</parameterId>
			<qualifierId>RoR</qualifierId>
			<locationId>712170</locationId>
			<timeSeriesType>simulated forecasting</timeSeriesType>
			<timeStep unit="minute" multiplier="15"/>
			<relativeViewPeriod unit="hour" start="-2" end="6" startOverrulable="false" endOverrulable="true"/>
			<readWriteMode>add originals</readWriteMode>
			<expiryTime unit="hour" multiplier="6"/>
		</timeSeriesSet>
	</variable>
	<variable>
		<variableId>historicOutput</variableId>
		<timeSeriesSet>
			<moduleInstanceId>NewRateOfRiseHistory</moduleInstanceId>
			<valueType>scalar</valueType>
			<parameterId>H.forecast</parameterId>
			<qualifierId>RoR</qualifierId>
			<locationId>712170</locationId>
			<timeSeriesType>simulated forecasting</timeSeriesType>
			<timeStep unit="minute" multiplier="15"/>
			<relativeViewPeriod unit="hour" start="-2" end="6" startOverrulable="false" endOverrulable="true"/>
			<readWriteMode>add originals</readWriteMode>
			<expiryTime unit="hour" multiplier="6"/>
		</timeSeriesSet>
	</variable>
	<transformation id="PersistenceTrendFunction">
		<interpolationSerial >
			<persistenceTrend>
   				<inputTimeSeries>
      				<variableId>input</variableId>
  				</inputTimeSeries>
   				<outputTimeSeries>
      				<variableId>output</variableId>
   				</outputTimeSeries>
   				<outputHistoricTimeSeries>
      				<variableIdhistoricOutput</variableId>
   				</outputHistoricTimeSeries>
   				<availableObservedValues>2</availableObservedValues>
   				<consecutiveObservedValues>false</consecutiveObservedValues>
   				<window unit="minute" multiplier="60"/>
			</persistenceTrend>
		</interpolationSerial>
	</transformation>
  • No labels