Peano
|
Array of struct enumerator. More...
#include <AoSLexicographicEnumerator.h>
Public Member Functions | |
constexpr GPUCallableInlineMethod | AoSLexicographicEnumerator (int numberOfCells, int numberOfDoFsPerAxisInCell, int haloSize, int unknowns, int numberOfAuxiliaryVariables) |
GPUCallableInlineMethod int | operator() (int cellIndex, const tarch::la::Vector< Dimensions, int > &volumeIndex, int unknown) const InlineMethod |
Access an index. | |
GPUCallableInlineMethod int | size () const InlineMethod |
GPUCallableInlineMethod int | numberOfDofsPerCell () const InlineMethod |
Data Fields | |
const int | _numberOfCells |
const int | _numberOfDoFsPerAxisInCell |
const int | _haloSize |
const int | _unknowns |
const int | _numberOfAuxiliaryVariables |
Array of struct enumerator.
This is the default enumerator for all DoFs in ExaHyPE 2.
We assume that we have a lexicographic ordering of the cell data or DG degree of freedom (quadrature points) and all data therein are ordered lexicographically and stored in as AoS: All data are
numberOfCells | The cells are enumerated one after another, i.e., we work with an array of cells hosting arrays of structs. |
haloSize | Number of dofs around the cell which do not carry active information, i.e., data you write to. |
Definition at line 44 of file AoSLexicographicEnumerator.h.
|
constexpr |
Definition at line 45 of file AoSLexicographicEnumerator.h.
GPUCallableInlineMethod int exahype2::enumerator::AoSLexicographicEnumerator::numberOfDofsPerCell | ( | ) | const |
Definition at line 88 of file AoSLexicographicEnumerator.h.
References _haloSize, and _numberOfDoFsPerAxisInCell.
GPUCallableInlineMethod int exahype2::enumerator::AoSLexicographicEnumerator::operator() | ( | int | cellIndex, |
const tarch::la::Vector< Dimensions, int > & | volumeIndex, | ||
int | unknown ) const |
Access an index.
The index always refers to the interior of the cells. So you can use negative indices if you want.
Definition at line 59 of file AoSLexicographicEnumerator.h.
References _haloSize, _numberOfAuxiliaryVariables, _numberOfCells, _numberOfDoFsPerAxisInCell, _unknowns, and exahype2::volumeIndex().
GPUCallableInlineMethod int exahype2::enumerator::AoSLexicographicEnumerator::size | ( | ) | const |
Definition at line 79 of file AoSLexicographicEnumerator.h.
References _haloSize, _numberOfAuxiliaryVariables, _numberOfCells, _numberOfDoFsPerAxisInCell, and _unknowns.
Referenced by peano4.visualisation.input.Patch.Patch::__repr__(), kernel_impl.Enumerator::fetch(), kernel_impl.Enumerator::lower(), exahype2::fd::fd4::timeStep_patchwise_heap_functors(), exahype2::fv::musclhancock::timeStepWithMusclHancock_patchwise_heap_functors(), and kernel_impl.Enumerator::upper().
const int exahype2::enumerator::AoSLexicographicEnumerator::_haloSize |
Definition at line 98 of file AoSLexicographicEnumerator.h.
Referenced by numberOfDofsPerCell(), operator()(), and size().
const int exahype2::enumerator::AoSLexicographicEnumerator::_numberOfAuxiliaryVariables |
Definition at line 100 of file AoSLexicographicEnumerator.h.
Referenced by operator()(), and size().
const int exahype2::enumerator::AoSLexicographicEnumerator::_numberOfCells |
Definition at line 96 of file AoSLexicographicEnumerator.h.
Referenced by operator()(), and size().
const int exahype2::enumerator::AoSLexicographicEnumerator::_numberOfDoFsPerAxisInCell |
Definition at line 97 of file AoSLexicographicEnumerator.h.
Referenced by exahype2::fd::tests::CCZ4KernelTest::AppleWithAppleTest(), numberOfDofsPerCell(), operator()(), exahype2::fd::internal::reduceMaxEigenvalue_LoopBody(), and size().
const int exahype2::enumerator::AoSLexicographicEnumerator::_unknowns |
Definition at line 99 of file AoSLexicographicEnumerator.h.
Referenced by exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG::__str__(), exahype2.solvers.rkfd.CellCenteredFiniteDifferences.CellCenteredFiniteDifferences::__str__(), exahype2.solvers.aderdg.ADERDG.ADERDG::_init_dictionary_with_default_parameters(), exahype2.solvers.fv.FV.FV::_init_dictionary_with_default_parameters(), exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG::_init_dictionary_with_default_parameters(), exahype2.solvers.rkfd.CellCenteredFiniteDifferences.CellCenteredFiniteDifferences::_init_dictionary_with_default_parameters(), peano4.visualisation.output.Visualiser.PatchFileData::apply_renderer_to_data(), peano4.visualisation.output.Visualiser.PatchFileData::copy_data_from_parser_object(), api.solvers.CollocatedLowOrderDiscretisation.AssemblePetscMatrix::get_constructor_body(), operator()(), size(), exahype2.solvers.aderdg.ADERDG.ADERDG::unknowns(), exahype2.solvers.fv.FV.FV::unknowns(), exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG::unknowns(), exahype2.solvers.rkfd.CellCenteredFiniteDifferences.CellCenteredFiniteDifferences::unknowns(), exahype2.solvers.fv.FV.FV::unknowns(), exahype2.solvers.rkdg.RungeKuttaDG.RungeKuttaDG::unknowns(), and exahype2.solvers.rkfd.CellCenteredFiniteDifferences.CellCenteredFiniteDifferences::unknowns().