With this transformation a gradient of a timeserie can be calculated: (y1-y0) / (t1-t0). This is the change in the value per time unit (currently seconds).

Timeseries can be nonequidistant.

<transformation id="Calculate_the_gradient">
        <gradient>
            <firstOrder>
                <inputVariable>
                    <variableId>InputTimeSeries</variableId>
                </inputVariable>
                <outputVariable>
                    <variableId>OutputTimeSeries</variableId>
                </outputVariable>
            </firstOrder>
        </gradient>
    </transformation>

 

Example:

	<variable>
		<variableId>niveau_5.nonequiAB</variableId>
		<timeSeriesSet>
			<moduleInstanceId>ABBAberekening</moduleInstanceId>
			<valueType>scalar</valueType>
			<parameterId>ALMR006</parameterId>
			<locationSetId>ABBA_vuldebiet</locationSetId>
			<timeSeriesType>external historical</timeSeriesType>
			<timeStep unit="nonequidistant"/>
			<relativeViewPeriod unit="day" start="-7" end="0" startOverrulable="true" endOverrulable="true"/>
			<readWriteMode>add originals</readWriteMode>
		</timeSeriesSet>
	</variable>
	<variable>
		<variableId>stijging.nonequi</variableId>
		<timeSeriesSet>
			<moduleInstanceId>ABBAberekening</moduleInstanceId>
			<valueType>scalar</valueType>
			<parameterId>stijging_niveaumeter</parameterId>
			<locationSetId>ABBA_vuldebiet</locationSetId>
			<timeSeriesType>external historical</timeSeriesType>
			<timeStep unit="nonequidistant"/>
			<relativeViewPeriod unit="day" start="-6" end="0" startOverrulable="true" endOverrulable="true"/>
			<readWriteMode>add originals</readWriteMode>
		</timeSeriesSet>
	</variable>
	<transformation id="stijging_niveaumeter">
		<gradient>
			<firstOrder>
				<inputVariable>
					<variableId>niveau_5.nonequiAB</variableId>
				</inputVariable>
				<outputVariable>
					<variableId>stijging.nonequi</variableId>
				</outputVariable>
			</firstOrder>
		</gradient>
	</transformation>

 

  • No labels