Per-species storage for finite-Larmor-radius quadrature points. More...
#include "larmor.hpp"
Public Member Functions | |
| void | allocate (int max_markers, int n_atts, bool enable_sorting) |
| Allocate and zero attribute storage. | |
| void | deallocate () |
| Release attribute Views while retaining scalar counters. | |
| MarkerType ()=default | |
| Construct an empty, unallocated marker store. | |
Public Attributes | |
| Kokkos::View< Real ** > | atts |
Gyropoint attributes [row][attribute]. | |
| int | atts_npart = 0 |
| Guiding-center particles represented by the batch. | |
| int | atts_offset = 0 |
| Particle-batch offset associated with current rows. | |
| Kokkos::View< Real ** > | atts_sorted |
| Spatially sorted copy when enabled. | |
| int | nmarkers = 0 |
| Active gyropoint rows. | |
| int | nmarkers_max = 0 |
| Allocated row capacity. | |
Per-species storage for finite-Larmor-radius quadrature points.
Rows in atts are gyropoints and columns are the runtime indices published by LarmorModule. Published attribute indices retain Fortran's one-based convention, so C++ View access uses index-1.
|
default |
Construct an empty, unallocated marker store.
| void orb5x::MarkerType::allocate | ( | int | max_markers, |
| int | n_atts, | ||
| bool | enable_sorting | ||
| ) |
Allocate and zero attribute storage.
| [in] | max_markers | Row capacity. |
| [in] | n_atts | Attribute count determined by LarmorModule. |
| [in] | enable_sorting | Also allocate the sorted-output array. |
| void orb5x::MarkerType::deallocate | ( | ) |
Release attribute Views while retaining scalar counters.
| Kokkos::View<Real**> orb5x::MarkerType::atts |
Gyropoint attributes [row][attribute].
| int orb5x::MarkerType::atts_npart = 0 |
Guiding-center particles represented by the batch.
| int orb5x::MarkerType::atts_offset = 0 |
Particle-batch offset associated with current rows.
| Kokkos::View<Real**> orb5x::MarkerType::atts_sorted |
Spatially sorted copy when enabled.
| int orb5x::MarkerType::nmarkers = 0 |
Active gyropoint rows.
| int orb5x::MarkerType::nmarkers_max = 0 |
Allocated row capacity.