ORB5X 1.0.0
Performance-portable global electromagnetic gyrokinetic PIC code
orb5x::MarkerType Struct Reference

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.
 

Detailed Description

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.

Constructor & Destructor Documentation

◆ MarkerType()

orb5x::MarkerType::MarkerType ( )
default

Construct an empty, unallocated marker store.

Member Function Documentation

◆ allocate()

void orb5x::MarkerType::allocate ( int  max_markers,
int  n_atts,
bool  enable_sorting 
)

Allocate and zero attribute storage.

Parameters
[in]max_markersRow capacity.
[in]n_attsAttribute count determined by LarmorModule.
[in]enable_sortingAlso allocate the sorted-output array.

◆ deallocate()

void orb5x::MarkerType::deallocate ( )

Release attribute Views while retaining scalar counters.

Member Data Documentation

◆ atts

Kokkos::View<Real**> orb5x::MarkerType::atts

Gyropoint attributes [row][attribute].

◆ atts_npart

int orb5x::MarkerType::atts_npart = 0

Guiding-center particles represented by the batch.

◆ atts_offset

int orb5x::MarkerType::atts_offset = 0

Particle-batch offset associated with current rows.

◆ atts_sorted

Kokkos::View<Real**> orb5x::MarkerType::atts_sorted

Spatially sorted copy when enabled.

◆ nmarkers

int orb5x::MarkerType::nmarkers = 0

Active gyropoint rows.

◆ nmarkers_max

int orb5x::MarkerType::nmarkers_max = 0

Allocated row capacity.


The documentation for this struct was generated from the following file: