|
Peano
|
SoA Lexicographic Enumerator. More...
#include <SoALexicographicEnumerator.h>
Public Member Functions | |
| constexpr GPUCallableInlineMethod | SoALexicographicEnumerator (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 |
| Returns the total size. | |
Data Fields | |
| const int | _numberOfCells |
| const int | _numberOfDoFsPerAxisInCell |
| const int | _haloSize |
| const int | _unknowns |
| const int | _numberOfAuxiliaryVariables |
SoA Lexicographic Enumerator.
Enumerates the degrees of freedom assuming that they are
This native SoA enumerator uses SoA within the cells plus over cells: It first enumerates all Q[0] data from cell one, then all Q[0] from cell two, then all Q[0] from cell three, and so forth. After that, it continues with Q[1]. This means: The enumerator interleaves the individual cells.
Definition at line 39 of file SoALexicographicEnumerator.h.
|
constexpr |
Definition at line 40 of file SoALexicographicEnumerator.h.
| GPUCallableInlineMethod int exahype2::enumerator::SoALexicographicEnumerator::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 53 of file SoALexicographicEnumerator.h.
References _haloSize, _numberOfCells, _numberOfDoFsPerAxisInCell, and exahype2::volumeIndex().

| GPUCallableInlineMethod int exahype2::enumerator::SoALexicographicEnumerator::size | ( | ) | const |
Returns the total size.
Definition at line 74 of file SoALexicographicEnumerator.h.
References _haloSize, _numberOfAuxiliaryVariables, _numberOfCells, _numberOfDoFsPerAxisInCell, and _unknowns.
Referenced by peano4.visualisation.input.Patch.Patch::__repr__().

| const int exahype2::enumerator::SoALexicographicEnumerator::_haloSize |
Definition at line 85 of file SoALexicographicEnumerator.h.
Referenced by operator()(), and size().
| const int exahype2::enumerator::SoALexicographicEnumerator::_numberOfAuxiliaryVariables |
Definition at line 87 of file SoALexicographicEnumerator.h.
Referenced by size().
| const int exahype2::enumerator::SoALexicographicEnumerator::_numberOfCells |
Definition at line 83 of file SoALexicographicEnumerator.h.
Referenced by operator()(), and size().
| const int exahype2::enumerator::SoALexicographicEnumerator::_numberOfDoFsPerAxisInCell |
Definition at line 84 of file SoALexicographicEnumerator.h.
Referenced by operator()(), and size().
| const int exahype2::enumerator::SoALexicographicEnumerator::_unknowns |
Definition at line 86 of file SoALexicographicEnumerator.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(), api.solvers.CollocatedLowOrderDiscretisation.CollocatedLowOrderDiscretisation::add_to_plot(), peano4.visualisation.output.Visualiser.PatchFileData::apply_renderer_to_data(), peano4.visualisation.output.Visualiser.PatchFileData::copy_data_from_parser_object(), api.solvers.CollocatedLowOrderDiscretisation.CollocatedLowOrderDiscretisation::number_of_matrix_entries_per_vertex(), 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().