Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

When using coefficient set functions (available since build 30246), the a and b coefficient elements can contain tags between "@" signs (e.g. "@NUMBER@") that refer to location attributes that are defined in the locationSets configuration file. The tags are replaced by actual values. These values can be different for different locations and time periods. See 22 Locations and attributes defined in CSV files, Shape-DBF files or external tables for more information.

...

a

...

  • One or more feedback coefficients (a1 to aN).

...

b

...

  • One or more feedforward coefficients (b0 to bM).

Output

Output variable y(t). For each calculation of y(t) the previous output values y(t-1) to y(t-N) are required. When this transformation runs, then it first retrieves the required previous output values from previous runs, if available. If one of these previous output values is missing, then that output value is ignored. Effectively this means that it behaves as if all previous missing output values would be 0.

Configuration Examples

Code Block
xml
xml

<variable>
	<variableId>input</variableId>
	<timeSeriesSet>
		<moduleInstanceId>FilterLowPassTest</moduleInstanceId>
		<valueType>scalar</valueType>
		<parameterId>H.obs</parameterId>
		<locationId>location1</locationId>
		<timeSeriesType>external historical</timeSeriesType>
		<timeStep unit="day"/>
		<relativeViewPeriod unit="day" start="10" end="43"/>
		<readWriteMode>editing visible to all future task runs</readWriteMode>
	</timeSeriesSet>
</variable>
<variable>
	<variableId>output</variableId>
	<timeSeriesSet>
		<moduleInstanceId>FilterLowPassTest</moduleInstanceId>
		<valueType>scalar</valueType>
		<parameterId>H.m</parameterId>
		<locationId>location1</locationId>
		<timeSeriesType>external historical</timeSeriesType>
		<timeStep unit="day"/>
		<relativeViewPeriod unit="day" start="10" end="43"/>
		<readWriteMode>add originals</readWriteMode>
	</timeSeriesSet>
</variable>
<transformation id="filter low pass">
	<filter>
		<lowPass>
			<inputVariable>
				<variableId>input</variableId>
			</inputVariable>
			<coefficientSet>
				<a>0.4</a>
				<a>0.3</a>
				<b>0.2</b>
				<b>0.1</b>
			</coefficientSet>
			<outputVariable>
				<variableId>output</variableId>
			</outputVariable>
		</lowPass>
	</filter>
</transformation>

The example below uses coefficientSetFunctions (available since build 30246). Here the coefficients are defined in coefficientSetFunctions, where @a1@, @a2@, @b0@ and @b1@ refer to location number attributes that are defined in the locationSets configuration file.

Code Block
xml
xml

<variable>
	<variableId>input</variableId>
	<timeSeriesSet>
		<moduleInstanceId>FilterLowPassWithCoefficientSetFunctionsTest</moduleInstanceId>
		<valueType>scalar</valueType>
		<parameterId>H.obs</parameterId>
		<locationId>locationWithAttributes5</locationId>
		<timeSeriesType>external historical</timeSeriesType>
		<timeStep unit="day"/>
		<relativeViewPeriod unit="day" start="10" end="43"/>
		<readWriteMode>editing visible to all future task runs</readWriteMode>
	</timeSeriesSet>
</variable>
<variable>
	<variableId>output</variableId>
	<timeSeriesSet>
		<moduleInstanceId>FilterLowPassWithCoefficientSetFunctionsTest</moduleInstanceId>
		<valueType>scalar</valueType>
		<parameterId>H.m</parameterId>
		<locationId>locationWithAttributes5</locationId>
		<timeSeriesType>external historical</timeSeriesType>
		<timeStep unit="day"/>
		<relativeViewPeriod unit="day" start="10" end="43"/>
		<readWriteMode>add originals</readWriteMode>
	</timeSeriesSet>
</variable>
<transformation id="filter low pass with coefficient set functions test">
	<filter>
		<lowPass>
			<inputVariable>
				<variableId>input</variableId>
			</inputVariable>
			<coefficientSetFunctions>
				<a>@a1@</a>
				<a>@a2@</a>
				<b>@b0@</b>
				<b>@b1@</b>
			</coefficientSetFunctions>
			<outputVariable>
				<variableId>output</variableId>
			</outputVariable>
		</lowPass>
	</filter>
</transformation>