all data needed for a transient reduction, operation to perform and necessary data from previous timesteps
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
type(tem_reduction_transient_config_type), | private | :: | config | reduction info loaded from config file |
|||
integer, | private | :: | nTimes | = | 0 | Number of "recorded" previous iterations |
|
integer, | private | :: | nEntries | = | 0 | Number of values to store in the double buffer val |
|
integer, | private | :: | nComponents | = | 0 | number of components |
|
integer, | private | :: | nDofs | Number of degrees of freedom |
|||
integer, | private | :: | curr | Index of the storage for the currently filling (incomplete) position in val |
|||
integer, | private | :: | last | Index of the storage location with the previously completed interval holding the reduced value over that interval. |
|||
real(kind=rk), | private, | allocatable | :: | val(:,:) | Double buffer to store data from previous timesteps size (nComponentsnDofstree%nElems,2) 2nd index is used to maintain last valid reduced value when nRecord is reached. It will be swapped to avoid copy operations |