ORB5X 1.0.0
Performance-portable global electromagnetic gyrokinetic PIC code
Loading...
Searching...
No Matches
globals.hpp File Reference

Process-wide normalized configuration and subsystem state. More...

#include "prec_const.hpp"
#include "spclibs/bsplines.hpp"
#include "spclibs/matrix.hpp"
#include <Kokkos_Core.hpp>
#include <string>
#include <vector>
#include <array>
#include <memory>
#include <mpi.h>
Include dependency graph for globals.hpp:
This graph shows which files directly or indirectly include this file:

Classes

struct  orb5x::AntennaVariables
 Spectral and radial definition of an externally imposed field antenna. More...
struct  orb5x::BasicVariables
 Top-level run control shared by initialization and the time loop. More...
struct  orb5x::BumpontailFeq
 Parameters of the energetic-particle bump-on-tail distribution. More...
struct  orb5x::CdtFeq
 Parameters of the experimental Claudio Di Troya equilibrium distribution. More...
struct  orb5x::CollisionsVariables
 Grid and cadence shared by the selected Monte-Carlo collision model. More...
struct  orb5x::DiagnosticsVariables
 Derived work arrays used by distribution and moment diagnostics. More...
struct  orb5x::DiagVariables
 User-selected diagnostic cadence, grids, windows, and run counters. More...
struct  orb5x::EquilVariables
 Magnetic-equilibrium inputs and geometry-derived normalization data. More...
struct  orb5x::FieldsVariables
 Field mesh, Fourier filtering, and background-electric-field state. More...
struct  orb5x::FilterSaw
 Toroidal-mode-dependent poloidal filters for sawtooth studies. More...
struct  orb5x::InitializeGene
 Geometry of the GENE-compatible initial perturbation. More...
struct  orb5x::InitializeLigka
 Mode numbers and envelope for the LIGKA-L5 perturbation initializer. More...
struct  orb5x::InitializeSaw
 Radial support and analysis step for the SAW perturbation initializer. More...
struct  orb5x::InitializeWeights
 Spectral envelope used to initialize a potential perturbation. More...
struct  orb5x::IslandsVariables
 Parameters for the prescribed helical magnetic-island perturbation. More...
struct  orb5x::NumericalF0
 Tabulated numerical equilibrium distribution on (psi,u,ze). More...
struct  orb5x::ParallelVariables
 MPI topology, communicator ownership, and host-thread settings. More...
struct  orb5x::PszsGrid
 One coordinate axis of a phase-space zonal-structure grid. More...
struct  orb5x::PszsVariables
 Per-species B-spline representation for PSZS diagnostics. More...
struct  orb5x::QuadtreeSmooth
 Controls phase-space quadtree smoothing for one species. More...
struct  orb5x::SlowingdownFeq
 Parameters and derived scales of slowing-down distributions. More...
struct  orb5x::SolverVariables
 Numerical and physical choices for quasineutrality and Ampere solves. More...
struct  orb5x::SortingVariables
 Marker binning configuration for locality-oriented Kokkos sorting. More...
struct  orb5x::SpeciesVariables
 Complete physical, loading, source, and push state for one species. More...

Namespaces

namespace  H5
namespace  orb5x

Functions

void orb5x::cleanup_globals ()
 Release modules and all Kokkos-owning global state.
void orb5x::init_globals ()
 Allocate process-wide state after Kokkos::initialize().
void orb5x::set_global_variables ()
 Derive cached selectors, species ratios, and auxiliary dimensions.

Variables

AntennaVariablesorb5x::antenna
 Externally imposed antenna configuration.
BasicVariablesorb5x::basic
 Run-control and top-level input state.
CollisionsVariablesorb5x::collisions
 Collision-operator configuration.
DiagVariablesorb5x::diag
 User-facing diagnostic configuration and counters.
DiagnosticsVariablesorb5x::diagnostics
 Derived diagnostic work arrays.
EquilVariablesorb5x::equil
 Magnetic-equilibrium and normalization state.
FieldsVariablesorb5x::fields
 Field-grid, filtering, and model state.
FieldsModuleorb5x::fields_module
 Field deposition and solve service.
constexpr const char * orb5x::FRES = "orb5_res.h5"
 Main results filename.
constexpr const char * orb5x::FRES2 = "orb5_traj.h5"
 Test-particle trajectory filename.
extern::H5::H5File * orb5x::fresid
 Owning main-results handle, or nullptr.
extern::H5::H5File * orb5x::fresid2
 Owning trajectory-file handle, or nullptr.
constexpr const char * orb5x::INPUT_FILENAME = "input"
 Default namelist input filename.
IslandsVariablesorb5x::islands
 Prescribed magnetic-island configuration.
constexpr Int8 orb5x::NPTOT_PRE = 100000000
 Samples used by adiabatic-density precomputation.
constexpr const char * orb5x::PARAFRES = "orb5_res_parallel.h5"
 Parallel results filename.
extern::H5::H5File * orb5x::parafresid
 Owning parallel-results handle, or nullptr.
ParallelVariablesorb5x::parallel
 MPI topology and host-thread state.
ParMoveorb5x::parmove_module
 Toroidal particle-exchange service.
PartFieldsModuleorb5x::part_fields_module
 Marker-to-field interpolation service.
ParticleModuleorb5x::particle_module
 Marker loading and push service.
std::vector< PszsVariables > * orb5x::pszs
 Per-species phase-space zonal-structure state.
SolverVariablesorb5x::solver
 Quasineutrality and Ampere solver configuration.
SortingVariablesorb5x::sorting
 Particle binning and sorting configuration.
std::vector< SpeciesVariables > * orb5x::species
 Per-species physical and numerical state.

Detailed Description

Process-wide normalized configuration and subsystem state.

Groups former Fortran module variables by subsystem. Global pointers are created after Kokkos::initialize() and released before finalization.