Implementation of time averaging Aux kernels #41
+196
−0
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The implementation allows the time averaging of both scalar and vector variables. Arbitrary numbers of scalars and vectors can be provided, with the resulting average being the average of their product. In multiple vectors are provided to the VectorTimeAverageAux a component-wise average is given - returning the diagonal of the covariance tensor. It should be possible to add the full covariance matrix if inherited from ArrayAuxKernel but I haven't properly looked into that yet.
Classes added
TimeAverageAux
: time average for scalar outputsVectorTimeAverageAux
: time average for vector