ORB5X 1.0.0
Performance-portable global electromagnetic gyrokinetic PIC code
part.hpp File Reference

Marker storage, loading, gyrokinetic push, deposition, and I/O. More...

#include "prec_const.hpp"
#include "globals.hpp"
#include "sorting.hpp"
#include <Kokkos_Core.hpp>
#include <vector>
#include <string>
#include <memory>
+ Include dependency graph for part.hpp:
+ This graph shows which files directly or indirectly include this file:

Classes

struct  orb5x::BcpartReducer
 Kokkos reduction value for inner/outer radial particle losses. More...
 
struct  orb5x::Moments3DClass
 Metadata identifying one configured three-dimensional particle moment. More...
 
class  orb5x::ParticleModule
 Own particle state and orchestrate marker loading, push, migration, and deposition. More...
 
struct  orb5x::ParticleParallelFunctor< Functor >
 Adapt an arbitrary particle operation to a Kokkos range kernel. More...
 
struct  orb5x::PointerMarkers
 Owning double-precision marker matrix [particle][property]. More...
 
struct  orb5x::PointerMarkersI8
 Owning signed 64-bit marker-property matrix, primarily particle IDs. More...
 
struct  orb5x::PointerMarkersLogic
 Owning logical marker-property matrix. More...
 
struct  orb5x::PointerMarkersR4
 Owning single-precision diagnostic marker matrix. More...
 
struct  orb5x::PointerQuadtree
 Per-species work storage for phase-space quadtree smoothing. More...
 

Namespaces

namespace  orb5x
 Public C++ interface of the ORB5X gyrokinetic application.
 

Enumerations

enum class  orb5x::ParallelMomentumType { orb5x::P_PARALLEL = 0 , orb5x::V_PARALLEL = 1 , orb5x::MIXED = 2 }
 Momentum coordinate requested by particle-property calculations. More...
 

Detailed Description

Marker storage, loading, gyrokinetic push, deposition, and I/O.

ParticleModule owns species marker views, weights, orbit advance, field gather, charge/current deposition, migration/sorting, and checkpoint operations.