Versions Compared

Key

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

...

This transformation function is used to calculate the Riemann Boundary of an input time series (grid) on the boundary locations of a finer grid.

Configuration

To help configure this transformation, an option to automatically calculate/construct the needed attributes and location sets was added to the F12 debug menu.

...

  • speedComponent: a weighted average is used to obtain the u and v component of the speed vector. To obtain the weights used in these weighted average calculations, the transformation either uses the uWeightAttribute and vWeightAttribute of the output location (in the case of a staggered coarse grid), or simply uses the weighAttribute for both averages (in the case of a non-staggered coarse grid). Then, the transformation uses the angle and border attribute to determine the component of this speedvector perpendicular to the boundary of the fine grid.
  • sign: -1 if the border attribute is UP or RIGHT, 1 otherwise.
  • zeta: a weighted average of the waterheights on the surrounding coarse grid locations. Calculated using the weightAttribute.
  • g: the physical gravitational constant
  • depth: the water depth on the output location for this time step.

Example

...

Code Block
languagexml
titleRiemannBoundary example
	<transformation id="riemann">
		<interpolationSpatial>
			<riemannBoundary>
				<waterHeight>
					<variableId>waterHeight</variableId>
				</waterHeight>
				<uSpeed>
					<variableId>uSpeed</variableId>
				</uSpeed>
				<vSpeed>
					<variableId>vSpeed</variableId>
				</vSpeed>
				<bathymetry>
					<variableId>bathymetry</variableId>
				</bathymetry>
				<borderAttributeId>border</borderAttributeId>
				<angleAttributeId>angle</angleAttributeId>
				<coarseGridLocationAttributeId>center_coarse_grid_id</coarseGridLocationAttributeId>
				<weightAttributeId>center_weight</weightAttributeId>
				<!-- Optional attributes for staggered coarse grids: -->
				<uCoarseGridLocationAttributeId>u_coarse_grid_id</uCoarseGridLocationAttributeId>
				<uWeightAttributeId>u_weight</uWeightAttributeId>
				<vCoarseGridLocationAttributeId>v_coarse_grid_id</vCoarseGridLocationAttributeId>
				<vWeightAttributeId>v_weight</vWeightAttributeId>
				<outputVariable>
					<variableId>output</variableId>
				</outputVariable>
			</riemannBoundary>
		</interpolationSpatial>
	</transformation>