Description

This transformation calculates the temperature at the output location, using the temperature at the input location, the difference in elevation between the input and output location and a temperature lapse rate. This transformation uses the following equation: outputTemperature = inputTemperature + (inputElevation - outputElevation) * temperatureLapseRate / 100. Here the temperatureLapseRate is in degrees per 100 meters of elevation (typically 0.6 degrees Celcius per 100 meters). Multiple coefficientSets can be defined for temperatureLapseRate. Optional limitVariable can be defined and for each time step the value of this variable is checked against the limiting ranges defined in coefficientSets to determine which coefficientSet is used for that time step. A limit variable has to be a scalar variable. Please note, the input and output locations have to have elevation defined, otherwise, the output temperature will be missing.

Input

  • inputTemperature
  • coefficientSet

Option

  • limitVariable

Output

  • outputTemperature

Configuration example

<?xml version="1.0" encoding="UTF-8"?>
<transformationModule version="1.0" xmlns="http://www.wldelft.nl/fews" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.wldelft.nl/fews http://fews.wldelft.nl/schemas/version1.0/transformationModule.xsd">
	<!--Input time series-->
	<variable>
		<variableId>Input</variableId>
		<timeSeriesSet>
			<moduleInstanceId>HuangChuan_Update_Pre</moduleInstanceId>
			<valueType>scalar</valueType>
			<parameterId>T.obs</parameterId>
			<locationId>loc_1</locationId>
			<timeSeriesType>external historical</timeSeriesType>
			<timeStep unit="hour" multiplier="1"/>
			<relativeViewPeriod unit="day" start="-16" end="0"/>
			<readWriteMode>add originals</readWriteMode>
		</timeSeriesSet>
	</variable>
	<!--Output time series-->
	<variable>
		<variableId>Output</variableId>
		<timeSeriesSet>
			<moduleInstanceId>HuangChuan_Update_Pre</moduleInstanceId>
			<valueType>scalar</valueType>
			<parameterId>T.obs</parameterId>
			<locationId>loc_2</locationId>
			<timeSeriesType>external historical</timeSeriesType>
			<timeStep unit="hour" multiplier="1"/>
			<relativeViewPeriod unit="day" start="-16" end="0"/>
			<readWriteMode>add originals</readWriteMode>
		</timeSeriesSet>
	</variable>
	<!--Transformations-->
	<transformation id="user">
		<user>
			<simple>
				<expression>25</expression>
				<outputVariable>
					<variableId>Input</variableId>
				</outputVariable>
			</simple>
		</user>
	</transformation>
	<transformation id="altitude">
		<altitude>
			<elevationLapse>
				<inputTemperature>
					<variableId>Input</variableId>
				</inputTemperature>
				<coefficientSet>
					<temperatureLapseRate>0.6</temperatureLapseRate>
				</coefficientSet>
				<outputTemperature>
					<variableId>Output</variableId>
				</outputTemperature>
			</elevationLapse>
		</altitude>
	</transformation>
</transformationModule>

  • No labels