Introducing vector grid-functions
The implementation of vectorial grid-functions in Sci.App changes several places in the process hierarchy. This article explains each change, including the decisions made during the process.
Basics
Vectorial grid-functions will be considered as a group of grid-functions. This made it easier to obtain each component separately.
The affected classes in the process hierarchy are:
- Reader: The reader must be able to generate groups. The PhonyReader will be able to simulate a vectorial grid-function (Velocity) for test purposes.
- Source: The source-process must implement the QUERY_GRID_FUNCTIONS query properly to consider the grid-function groups. Also, the request mechanism must be able to add the grid-function in the generated output.
Reader
The phony-sample-reader will add Velocity grid-function group to its collection of grid-functions.
Source
Added two new variables to describe a grid-function: component and source.
component
- scalar: A grid-function composed by one scalar for each "cell". This is what exists today.
- vector: A grid-function composed by N scalar grid-functions, where N is the number of geometry dimensions. The value of N is 3 for Kraken.
- component: The grid-functions that compose a group grid-function (either vector or any other kind) are not listed as "scalar". They are listed separately as "component", which means that their also available inside a grid-function group.
- tensor: A grid-function that represents a tensor. Not used for now.
source
- loaded: The grid-function is loaded from a file, using the reader
- generated: The grid-function is generated, based on loaded grid-functions. Currently we have two kinds of generated grid-functions: transported and magnitude.
GridFunctionKey
The GridFunctionKey stores information sufficient to identify a grid-function.




Leave a comment