This transformation function is used to calculate the Riemann Boundary of an input time series (grid) on the boundary locations of a finer grid.
To help configure this transformation, an option to automatically calculate/construct the needed attributes and location sets was added to the F12 debug menu.
To use this option first configure a coarse grid, fine grid and a locationSet containing the boundary locations of the fine grid on which you wish to calculate the Riemann boundary. The F12 menu option will then generate csv-files for the two locationSets needed to configure this transformation as well as the needed attribute files. The wiki page on the F12 option contains an example configuration on how to configure the locationSets in the locationSets.xml:
This transformation takes four different input variables to produce a single output variable. The input variables are:
The resulting output variable will be contain scalar timeseries on the locationSet containing the boundary locations.
To calculate the output for a certain time step, the following formula will be evaluated:
speedComponent + sign * zeta * sqrt(g / depth)
The different components in this formula are calculated as follows:
<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> |