ORB5X 1.0.0
Performance-portable global electromagnetic gyrokinetic PIC code
Loading...
Searching...
No Matches
orb5x::Diagnostics Class Reference

#include "diagnostics.hpp"

Collaboration diagram for orb5x::Diagnostics:

Classes

struct  PlaceholderEntry

Public Member Functions

 Diagnostics ()

Static Public Member Functions

static void accumulate_diagnostics (int isp, Real wt, Real w3t, Real pt, Real pvolgc, Real ze, Real zf0, Real sigmat, Real q_vgc_dot_genelec, Real q_dvpadt0_dot_gyroapar)
static void accumulate_displacements (int isp, bool in_ksieta, Real chit_cos, Real chit_sin, Real sigmat, const std::array< Real, 3 > &tempd, const std::array< Real, 3 > &vgc, const std::array< Real, 3 > &vexb, Real dvpadt1, Real dvpadt0, Real rhs, bool nl_directdf)
static void accumulate_flux1d_f0 (int isp, int irloc, Real zf0, Real dPsidt1, Real dPsidt0, Real ze, Real ut, Real rt2, const std::vector< Real > &vpar)
static void accumulate_flux1d_w (int isp, int irloc, Real wt, Real dPsidt1, Real dPsidt0, Real ze, Real ut, Real rt2, const std::vector< Real > &vpar)
static void accumulate_moment1d_f (int isp, int irloc, Real zf0, Real wt, Real ut, Real ut2, Real vpt2)
static void accumulate_moment1d_f0 (int isp, int irloc, Real zf0, Real ut, Real ut2, Real vpt2, Real rt2, const std::vector< Real > &vpar, const std::vector< Real > &vexb, Real b)
static void accumulate_moment1d_w (int isp, int irloc, Real zf0, Real wt, Real ut, Real ut2, Real vpt2, Real rt2, const std::vector< Real > &vpar, const std::vector< Real > &vexb, Real b, Real jdote_tot)
static void add_efield (int isp, int component, Real value)
static void add_efield_av (int isp, int component, Real value)
static void add_to_0d_vexbnavg (int isp, Real to_add)
static void add_to_entropy_fluct (int isp, int idiag, Real value)
static void add_to_jdote_bg (int isp, int idiag, Real value)
static void add_to_jdote_fluct (int isp, int idiag, Real value)
static void add_trap_frac (int isp, int type, Real value)
static void append_placeholder_slices (int step, Real time)
static void append_scalar (const std::string &path, const Real *values, size_t count)
static void append_stat_int (const std::string &path, const int *array, size_t count)
static void clear_diagnostics (int isp)
static void clear_entropy_diag (int isp)
static void clear_jdote (int isp)
static void clear_jdote_fluct (int isp)
static void createg_1D (const std::string &name, const std::string &description, const std::vector< Real > &coord1, const std::string &coord1_name)
static void createg_1Dms (const std::string &species_name, const std::string &name, const std::string &description, const std::vector< Real > &coord1, const std::string &coord1_name)
static void createg_2D (const std::string &name, const std::string &description, const std::vector< Real > &coord1, const std::string &coord1_name, const std::vector< Real > &coord2, const std::string &coord2_name)
static void createg_2Dms (const std::string &species_name, const std::string &name, const std::string &description, const std::vector< Real > &coord1, const std::string &coord1_name, const std::vector< Real > &coord2, const std::string &coord2_name)
static void createg_3D (const std::string &name, const std::string &description, const std::vector< Real > &coord1, const std::string &coord1_name, const std::vector< Real > &coord2, const std::string &coord2_name, const std::vector< Real > &coord3, const std::string &coord3_name)
static void createg_3Dms (const std::string &species_name, const std::string &name, const std::string &description, const std::vector< Real > &coord1, const std::string &coord1_name, const std::vector< Real > &coord2, const std::string &coord2_name, const std::vector< Real > &coord3, const std::string &coord3_name, const std::vector< std::vector< int > > *mmin_f=nullptr)
static void createg_3Dz (const std::string &name, const std::string &description, const std::vector< Real > &coord1, const std::string &coord1_name, const std::vector< Real > &coord2, const std::string &coord2_name, const std::vector< Real > &coord3, const std::string &coord3_name, const std::vector< std::vector< int > > *mmin_f=nullptr)
static void createg_3Dzms (const std::string &species_name, const std::string &name, const std::string &description, const std::vector< Real > &coord1, const std::string &coord1_name, const std::vector< Real > &coord2, const std::string &coord2_name, const std::vector< Real > &coord3, const std::string &coord3_name, const std::vector< std::vector< int > > *mmin_f=nullptr)
static void destroyStaticViews ()
static void diag3d_on_fluid_moments (int isp)
static void diag3d_spectrum (const std::vector< std::vector< std::vector< Real > > > &field, std::vector< std::vector< Real > > &spectrum_out, int nmax)
static void diag_fields_torpol (int fieldnum, Real time)
static void diag_fields_torpol_init ()
static void diag_fulltorus (int fieldnum, Real time)
static void diag_fulltorus_init ()
static void diagnose (int step, int step_tot, Real time)
static void diagnose_phasespace (int isp, Real s, Real vpar, Real mu, Real B, Real pvol, Real w, Real zf0)
static void diagnose_sampling (int isp, Real s, Real en, Real pvol, Real w, Real zf0)
static void diagnostics_after_loop (int isp)
static std::vector< std::vector< Real > > & displacement_avg_ref ()
static std::vector< std::vector< Real > > & displacement_exb_avg_ref ()
static std::vector< std::vector< Real > > & displacement_exb_max_ref ()
static std::vector< std::vector< Real > > & displacement_max_ref ()
static void electron_fluxes_moments (int isp, int irloc, Real zf0, Real dPsidt1, Real dPsidt0, Real ze, Real wt, Real ffinit_tmp1, Real ffinit_tmp2, Real ffinit_tmp3, Real ffinit_tmp4, bool is_trapped)
static std::vector< std::vector< Real > > & entropy_fluct_avg_ref ()
static std::vector< std::vector< std::vector< std::vector< std::vector< Real > > > > > & fluid_moments_ref ()
static void flush0d ()
static std::vector< std::vector< std::vector< Real > > > & flux1d_f0_ref ()
static std::vector< std::vector< std::vector< Real > > > & flux1d_w_ref ()
static Real get_adiab (int isp)
static Kokkos::View< Real ** > & get_buf ()
static Kokkos::View< Real *** > & get_buf_pic ()
static int get_cum_non_cg_bins (int isp)
static int get_cum_non_cg_markers (int isp)
static Real get_dSdt_heat (int isp)
static Real get_dSdt_nc (int isp)
static Real get_dSdt_nc_corr (int isp)
static Real get_efield (int isp, int component)
static Real get_efield_av (int isp, int component)
static Real get_efield_fft (int isp, int component)
static Real get_entropy_fluct_avg (int isp, int idiag)
static Real get_flux0d_f0 (int isp, int idiag)
static Real get_flux0d_w (int isp, int idiag)
static Kokkos::View< Real * > get_generic_signoise_avg ()
static int get_generic_signoise_size ()
static Real get_generic_spectrum2d_avg (int idiag, int i, int j)
static int get_ibuf ()
static Real get_inner_edge_losses (int isp, int component)
static int get_irloc_in ()
static Real get_jdote_bg (int isp, int idiag)
static Real get_jdote_fluct (int isp, int idiag)
static Real get_misc_avg (int isp, int idiag)
static Kokkos::View< Real ** > & get_noise_2d_all ()
static int get_nsbound_in (int isp)
static int get_nsbound_out (int isp)
static Real get_outer_edge_losses (int isp, int component)
static Kokkos::View< Real ** > & get_signal_2d_all ()
static Real get_spectrum2d_avg (int isp, int idiag, int i, int j)
static int get_tot_cg_bins (int isp)
static int get_tot_cg_markers (int isp)
static Real get_trap_frac (int isp, int type)
static Real get_variance (int isp, int index)
static Real get_vexbnavg (int isp, int idiag)
static Real get_vthmax2_cached (int isp)
static Real get_vthmax_cached (int isp)
static Real get_wsqreduced (int isp)
static Real getpot_fieldnum (Real s, Real theta, Real phi, int fieldnum)
static void init_generic_signoise ()
static void init_phase1_diagnostics ()
static void init_test_diagnostic_arrays (int nspecies)
 Initialize all diagnostic arrays needed by diagnose() for testing.
static void init_variance (int nspecies)
static void initialize_diagnostics ()
static void initialize_phasespace_diags ()
static void initialize_source_3d_diags ()
static Real jdote (int isp, Real ut2, Real vpt2, const std::vector< Real > &vpar, const std::vector< Real > &genelec, const std::vector< Real > &elec_par, Real wt, Real bstar_inv, const std::vector< Real > &bgrb, const std::vector< Real > &vgb, const std::vector< Real > &vpressure, const std::vector< Real > &veb_f, const std::vector< Real > &vexb, Real expt_back, Real eypt_back, Real dvpadt0, Real gyroapar)
static std::vector< std::vector< Real > > & jdote_bg_ref ()
static std::vector< std::vector< Real > > & jdote_fluct_ref ()
static void max_of_0d (int isp, int i, Real to_add)
static void max_of_0d_vexbnmax (int isp, Real to_add)
static void max_of_0d_vmax (int isp, Real to_add)
static void max_of_0d_wmax (int isp, Real to_add)
static std::vector< std::vector< Real > > & misc_avg_ref ()
static void mmin_f_serialize ()
static std::vector< std::vector< std::vector< Real > > > & moment1d_f0_ref ()
static std::vector< std::vector< std::vector< Real > > > & moment1d_f_ref ()
static std::vector< std::vector< std::vector< Real > > > & moment1d_w_ref ()
static std::vector< std::vector< std::vector< std::vector< Real > > > > & moment2d_avg_ref ()
static std::vector< std::vector< std::vector< std::vector< Real > > > > & mpr_2d_ref ()
static void mpr_es_calc (int isp, int iuloc, int imuloc, Real sigmat, Real thetat, Real wt, Real ut2, Real vpt2, Real bstar_inv, const std::vector< Real > &vpar, const std::vector< Real > &genelec, const std::vector< Real > &bgrb, const std::vector< Real > &vgb, const std::vector< Real > &vpressure, const std::vector< Real > &veb_f)
static bool nl_do_diag (int step_tot, int nfreq)
static void normalize_flux1d (int isp)
static void normalize_moment1d_f (int isp)
static void normalize_moment1d_f0 (int isp)
static void normalize_moment1d_w (int isp)
static void normalize_moment2d (int isp)
static void normalize_poloidal1d (int isp)
template<typename T>
static void omp_reduce_diag (T &data, bool use_max=false)
 Generic diagnostic reduction interface (matches Fortran omp_reduce_diag).
static void omp_reduce_diag0d (Real &data, bool use_max=false)
 Reduce 0D diagnostic array (single value per species).
static void omp_reduce_diag1d (std::vector< Real > &data, bool use_max=false)
 Reduce 1D diagnostic array.
static void omp_reduce_diag2d (std::vector< std::vector< Real > > &data, bool use_max=false)
 Reduce 2D diagnostic array.
static void omp_reduce_diag3d (std::vector< std::vector< std::vector< Real > > > &data, bool use_max=false)
 Reduce 3D diagnostic array.
static std::vector< std::vector< std::vector< std::vector< std::vector< Real > > > > > & phasespace_3d_ref ()
static void polarisation_fieldcalc (int isp)
static std::vector< std::vector< std::vector< Real > > > & poloidal1d_f_ref ()
static std::vector< std::vector< std::vector< Real > > > & poloidal1d_w_ref ()
static void profsphi (Real theta, int fieldnum, std::vector< std::vector< Real > > &pot_sp)
static void profsth (Real phi, int fieldnum, int ns0, std::vector< std::vector< Real > > &pot_st, std::vector< std::vector< Real > > *xc=nullptr, std::vector< std::vector< Real > > *zc=nullptr)
static void put3d_dens (Real time, bool do_moments=false)
static void put3d_h5s (Real time, int diag_select, int field_select, int isp=-1)
static void putarr (const std::string &path, const Real *array, size_t length, const std::string &title="")
static void putarr_attime_1d (const std::string &path, const Real *array, size_t length, Real time)
static void putarr_attime_2d (const std::string &path, const Real *array, size_t dim1, size_t dim2, Real time)
static void read_restart_state (int datn)
static void rhs_f_serialize (const std::vector< std::vector< std::complex< Real > > > &rhs_f_ptr)
static std::vector< std::vector< std::vector< std::vector< Real > > > > & sampling_2d_ref ()
static void set_buf (Kokkos::View< Real ** > v)
static void set_buf_pic (Kokkos::View< Real *** > v)
static void set_dSdt_heat (int isp, Real value)
static void set_dSdt_nc (int isp, Real value)
static void set_dSdt_nc_corr (int isp, Real value)
static void set_efield (int isp, int component, Real value)
static void set_efield_av (int isp, int component, Real value)
static void set_efield_fft (int isp, int component, Real value)
static void set_generic_spectrum2d_avg (int idiag, int i, int j, Real value)
static void set_ibuf (int val)
static void set_inner_edge_losses (int isp, int component, Real value)
static void set_misc_avg (int isp, int idx, Real val)
static void set_nsbound_in (int isp, int value)
static void set_nsbound_out (int isp, int value)
static void set_outer_edge_losses (int isp, int component, Real value)
static void set_signal2noise (Real sn, Real sn_nozf)
static void set_signal2noise_em (Real sn, Real sn_nozf)
static void set_spectrum2d_avg (int isp, int idiag, int i, int j, Real value)
static void set_variance (int isp, int index, Real value)
static void snapshot_variance (int isp)
static std::vector< std::vector< std::vector< Real > > > & source_diag1d_avg_ref ()
static void strong_diagnostic_output (int isp, int ip, Real psi0t, Real temp2, Real ze, Real vecrossb_f2, Real pot_equil, Real zf0, Real zvth2_inv, Real dpotdpsi, Real vdr, Real rhs)
static void sum_entropy_fluctuation (int isp, Real wt, Real zf0, Real q_vgc_dot_genelec, Real zvth2_inv, Real df0_dpsi_prof, Real df0_dchi_prof, Real dpsi_prof_dt)
static void sum_fluid_moments (int isp, Real sigmat, Real chit, Real phit, Real wt, Real ut, Real ut2, Real vpt2)
static void sum_in_radial_bins_island (int isp, int irloc, int ipol, Real ut, const std::vector< Real > &gradpsi0, Real htildex, Real htildey, Real ze, Real zf0, Real wt, Real dPsidt1, Real ffinit_tmp1, Real ffinit_tmp2, Real ffinit_tmp3, Real ffinit_tmp4)
static void sum_moment2d (int isp, int irloc, int ithetaloc, Real wt, Real ffinit_tmp1, Real ffinit_tmp2, Real ffinit_tmp3, Real ffinit_tmp4)
static void sum_particles_in_poloidal_bins (int isp, int ithetaloc, Real wt, Real ffinit_tmp1, Real ffinit_tmp2, Real ffinit_tmp3, Real ffinit_tmp4, Real wt_tmp1, Real wt_tmp2, Real wt_tmp3)
static void sum_particles_in_radial_bins (int isp, int ip, int irloc, Real zf0, Real dPsidt1, Real dPsidt0, Real ze, Real wt, Real ut, Real ut2, Real vpt2, Real rt2, const std::vector< Real > &vpar, Real zf0_tmp1, Real zf0_tmp2, Real zf0_tmp3, Real sigmat, Real zf0_local, Real grsigma2, Real grsigmagrchi, Real b, const std::vector< Real > &exh, Real wt_tmp1, Real wt_tmp2, Real wt_tmp3, const std::vector< Real > &vexb, Real ffinit_tmp1, Real ffinit_tmp2, Real ffinit_tmp3, Real ffinit_tmp4, Real ffinit_tmp5, Real jdote_tot, const std::vector< Real > &eloc)
static Real sum_spectrum2d_avg (int isp, int idiag, int ndim, int mdim)
static void sum_velocities (int isp, int iuloc, int imuloc, Real wt, Real zf0, Real pvol)
static void test_particle_output (int isp, int ip, Real psi0t, Real ze, Real pot_equil, Real wt, Real zvth2, Real nval, Real pvol_updated, Real zf0)
static std::vector< std::vector< std::vector< Real > > > & vel1d_avg_ref ()
static std::vector< std::vector< std::vector< std::vector< Real > > > > & vel2d_avg_ref ()
static void velocity_space_diag_init ()
static std::vector< Real > & vmax_ref ()
static std::vector< Real > & wmax_ref ()
static void write_output (int step, Real time)
static void write_restart_state (int datn)
static void zero_generic_spectrum2d_avg (int idiag, int ndim, int mdim)
static void zero_spectrum2d_avg (int isp, int idiag, int ndim, int mdim)

Static Public Attributes

static std::vector< Realapaloc
static constexpr int FIELD_APAR = 2
static constexpr int FIELD_APAR_HAM = 3
static constexpr int FIELD_APAR_SYMPL = 4
static constexpr int FIELD_DENS = 5
static constexpr int FIELD_PHI = 1
static constexpr int FIELD_USER = 6
static std::vector< std::vector< std::vector< Real > > > moment1d_w
static std::vector< bool > out
static std::array< int, 3 > pe_phi_cuts = {0, 0, 0}
static std::vector< Realphi00
static std::vector< Realphi0_chi
static std::vector< Realphibar
static std::vector< Realphiloc
static std::vector< Realphiloc_hfs
static std::vector< std::vector< Real > > rho00

Constructor & Destructor Documentation

◆ Diagnostics()

orb5x::Diagnostics::Diagnostics ( )
inline

References pe_phi_cuts.

Member Function Documentation

◆ accumulate_diagnostics()

void orb5x::Diagnostics::accumulate_diagnostics ( int isp,
Real wt,
Real w3t,
Real pt,
Real pvolgc,
Real ze,
Real zf0,
Real sigmat,
Real q_vgc_dot_genelec,
Real q_dvpadt0_dot_gyroapar )
static

◆ accumulate_displacements()

void orb5x::Diagnostics::accumulate_displacements ( int isp,
bool in_ksieta,
Real chit_cos,
Real chit_sin,
Real sigmat,
const std::array< Real, 3 > & tempd,
const std::array< Real, 3 > & vgc,
const std::array< Real, 3 > & vexb,
Real dvpadt1,
Real dvpadt0,
Real rhs,
bool nl_directdf )
static

◆ accumulate_flux1d_f0()

void orb5x::Diagnostics::accumulate_flux1d_f0 ( int isp,
int irloc,
Real zf0,
Real dPsidt1,
Real dPsidt0,
Real ze,
Real ut,
Real rt2,
const std::vector< Real > & vpar )
static

◆ accumulate_flux1d_w()

void orb5x::Diagnostics::accumulate_flux1d_w ( int isp,
int irloc,
Real wt,
Real dPsidt1,
Real dPsidt0,
Real ze,
Real ut,
Real rt2,
const std::vector< Real > & vpar )
static

◆ accumulate_moment1d_f()

void orb5x::Diagnostics::accumulate_moment1d_f ( int isp,
int irloc,
Real zf0,
Real wt,
Real ut,
Real ut2,
Real vpt2 )
static

◆ accumulate_moment1d_f0()

void orb5x::Diagnostics::accumulate_moment1d_f0 ( int isp,
int irloc,
Real zf0,
Real ut,
Real ut2,
Real vpt2,
Real rt2,
const std::vector< Real > & vpar,
const std::vector< Real > & vexb,
Real b )
static

◆ accumulate_moment1d_w()

void orb5x::Diagnostics::accumulate_moment1d_w ( int isp,
int irloc,
Real zf0,
Real wt,
Real ut,
Real ut2,
Real vpt2,
Real rt2,
const std::vector< Real > & vpar,
const std::vector< Real > & vexb,
Real b,
Real jdote_tot )
static

◆ add_efield()

void orb5x::Diagnostics::add_efield ( int isp,
int component,
Real value )
static

◆ add_efield_av()

void orb5x::Diagnostics::add_efield_av ( int isp,
int component,
Real value )
static

◆ add_to_0d_vexbnavg()

void orb5x::Diagnostics::add_to_0d_vexbnavg ( int isp,
Real to_add )
static

◆ add_to_entropy_fluct()

void orb5x::Diagnostics::add_to_entropy_fluct ( int isp,
int idiag,
Real value )
static

◆ add_to_jdote_bg()

void orb5x::Diagnostics::add_to_jdote_bg ( int isp,
int idiag,
Real value )
static

◆ add_to_jdote_fluct()

void orb5x::Diagnostics::add_to_jdote_fluct ( int isp,
int idiag,
Real value )
static

◆ add_trap_frac()

void orb5x::Diagnostics::add_trap_frac ( int isp,
int type,
Real value )
static

◆ append_placeholder_slices()

void orb5x::Diagnostics::append_placeholder_slices ( int step,
Real time )
static

◆ append_scalar()

void orb5x::Diagnostics::append_scalar ( const std::string & path,
const Real * values,
size_t count )
static

◆ append_stat_int()

void orb5x::Diagnostics::append_stat_int ( const std::string & path,
const int * array,
size_t count )
static

◆ clear_diagnostics()

void orb5x::Diagnostics::clear_diagnostics ( int isp)
static

◆ clear_entropy_diag()

void orb5x::Diagnostics::clear_entropy_diag ( int isp)
static

◆ clear_jdote()

void orb5x::Diagnostics::clear_jdote ( int isp)
static

◆ clear_jdote_fluct()

void orb5x::Diagnostics::clear_jdote_fluct ( int isp)
static

◆ createg_1D()

void orb5x::Diagnostics::createg_1D ( const std::string & name,
const std::string & description,
const std::vector< Real > & coord1,
const std::string & coord1_name )
static

◆ createg_1Dms()

void orb5x::Diagnostics::createg_1Dms ( const std::string & species_name,
const std::string & name,
const std::string & description,
const std::vector< Real > & coord1,
const std::string & coord1_name )
static

◆ createg_2D()

void orb5x::Diagnostics::createg_2D ( const std::string & name,
const std::string & description,
const std::vector< Real > & coord1,
const std::string & coord1_name,
const std::vector< Real > & coord2,
const std::string & coord2_name )
static

◆ createg_2Dms()

void orb5x::Diagnostics::createg_2Dms ( const std::string & species_name,
const std::string & name,
const std::string & description,
const std::vector< Real > & coord1,
const std::string & coord1_name,
const std::vector< Real > & coord2,
const std::string & coord2_name )
static

◆ createg_3D()

void orb5x::Diagnostics::createg_3D ( const std::string & name,
const std::string & description,
const std::vector< Real > & coord1,
const std::string & coord1_name,
const std::vector< Real > & coord2,
const std::string & coord2_name,
const std::vector< Real > & coord3,
const std::string & coord3_name )
static

◆ createg_3Dms()

void orb5x::Diagnostics::createg_3Dms ( const std::string & species_name,
const std::string & name,
const std::string & description,
const std::vector< Real > & coord1,
const std::string & coord1_name,
const std::vector< Real > & coord2,
const std::string & coord2_name,
const std::vector< Real > & coord3,
const std::string & coord3_name,
const std::vector< std::vector< int > > * mmin_f = nullptr )
static

◆ createg_3Dz()

void orb5x::Diagnostics::createg_3Dz ( const std::string & name,
const std::string & description,
const std::vector< Real > & coord1,
const std::string & coord1_name,
const std::vector< Real > & coord2,
const std::string & coord2_name,
const std::vector< Real > & coord3,
const std::string & coord3_name,
const std::vector< std::vector< int > > * mmin_f = nullptr )
static

◆ createg_3Dzms()

void orb5x::Diagnostics::createg_3Dzms ( const std::string & species_name,
const std::string & name,
const std::string & description,
const std::vector< Real > & coord1,
const std::string & coord1_name,
const std::vector< Real > & coord2,
const std::string & coord2_name,
const std::vector< Real > & coord3,
const std::string & coord3_name,
const std::vector< std::vector< int > > * mmin_f = nullptr )
static

◆ destroyStaticViews()

void orb5x::Diagnostics::destroyStaticViews ( )
static

◆ diag3d_on_fluid_moments()

void orb5x::Diagnostics::diag3d_on_fluid_moments ( int isp)
static

◆ diag3d_spectrum()

void orb5x::Diagnostics::diag3d_spectrum ( const std::vector< std::vector< std::vector< Real > > > & field,
std::vector< std::vector< Real > > & spectrum_out,
int nmax )
static

◆ diag_fields_torpol()

void orb5x::Diagnostics::diag_fields_torpol ( int fieldnum,
Real time )
static

◆ diag_fields_torpol_init()

void orb5x::Diagnostics::diag_fields_torpol_init ( )
static

◆ diag_fulltorus()

void orb5x::Diagnostics::diag_fulltorus ( int fieldnum,
Real time )
static

◆ diag_fulltorus_init()

void orb5x::Diagnostics::diag_fulltorus_init ( )
static

◆ diagnose()

void orb5x::Diagnostics::diagnose ( int step,
int step_tot,
Real time )
static

◆ diagnose_phasespace()

void orb5x::Diagnostics::diagnose_phasespace ( int isp,
Real s,
Real vpar,
Real mu,
Real B,
Real pvol,
Real w,
Real zf0 )
static

◆ diagnose_sampling()

void orb5x::Diagnostics::diagnose_sampling ( int isp,
Real s,
Real en,
Real pvol,
Real w,
Real zf0 )
static

◆ diagnostics_after_loop()

void orb5x::Diagnostics::diagnostics_after_loop ( int isp)
static

◆ displacement_avg_ref()

std::vector< std::vector< Real > > & orb5x::Diagnostics::displacement_avg_ref ( )
static

◆ displacement_exb_avg_ref()

std::vector< std::vector< Real > > & orb5x::Diagnostics::displacement_exb_avg_ref ( )
static

◆ displacement_exb_max_ref()

std::vector< std::vector< Real > > & orb5x::Diagnostics::displacement_exb_max_ref ( )
static

◆ displacement_max_ref()

std::vector< std::vector< Real > > & orb5x::Diagnostics::displacement_max_ref ( )
static

◆ electron_fluxes_moments()

void orb5x::Diagnostics::electron_fluxes_moments ( int isp,
int irloc,
Real zf0,
Real dPsidt1,
Real dPsidt0,
Real ze,
Real wt,
Real ffinit_tmp1,
Real ffinit_tmp2,
Real ffinit_tmp3,
Real ffinit_tmp4,
bool is_trapped )
static

◆ entropy_fluct_avg_ref()

std::vector< std::vector< Real > > & orb5x::Diagnostics::entropy_fluct_avg_ref ( )
static

◆ fluid_moments_ref()

std::vector< std::vector< std::vector< std::vector< std::vector< Real > > > > > & orb5x::Diagnostics::fluid_moments_ref ( )
static

◆ flush0d()

void orb5x::Diagnostics::flush0d ( )
static

◆ flux1d_f0_ref()

std::vector< std::vector< std::vector< Real > > > & orb5x::Diagnostics::flux1d_f0_ref ( )
static

◆ flux1d_w_ref()

std::vector< std::vector< std::vector< Real > > > & orb5x::Diagnostics::flux1d_w_ref ( )
static

◆ get_adiab()

Real orb5x::Diagnostics::get_adiab ( int isp)
static

◆ get_buf()

Kokkos::View< Real ** > & orb5x::Diagnostics::get_buf ( )
inlinestatic

◆ get_buf_pic()

Kokkos::View< Real *** > & orb5x::Diagnostics::get_buf_pic ( )
inlinestatic

◆ get_cum_non_cg_bins()

int orb5x::Diagnostics::get_cum_non_cg_bins ( int isp)
static

◆ get_cum_non_cg_markers()

int orb5x::Diagnostics::get_cum_non_cg_markers ( int isp)
static

◆ get_dSdt_heat()

Real orb5x::Diagnostics::get_dSdt_heat ( int isp)
static

◆ get_dSdt_nc()

Real orb5x::Diagnostics::get_dSdt_nc ( int isp)
static

◆ get_dSdt_nc_corr()

Real orb5x::Diagnostics::get_dSdt_nc_corr ( int isp)
static

◆ get_efield()

Real orb5x::Diagnostics::get_efield ( int isp,
int component )
static

◆ get_efield_av()

Real orb5x::Diagnostics::get_efield_av ( int isp,
int component )
static

◆ get_efield_fft()

Real orb5x::Diagnostics::get_efield_fft ( int isp,
int component )
static

◆ get_entropy_fluct_avg()

Real orb5x::Diagnostics::get_entropy_fluct_avg ( int isp,
int idiag )
static

◆ get_flux0d_f0()

Real orb5x::Diagnostics::get_flux0d_f0 ( int isp,
int idiag )
static

◆ get_flux0d_w()

Real orb5x::Diagnostics::get_flux0d_w ( int isp,
int idiag )
static

◆ get_generic_signoise_avg()

Kokkos::View< Real * > orb5x::Diagnostics::get_generic_signoise_avg ( )
static

◆ get_generic_signoise_size()

int orb5x::Diagnostics::get_generic_signoise_size ( )
static

◆ get_generic_spectrum2d_avg()

Real orb5x::Diagnostics::get_generic_spectrum2d_avg ( int idiag,
int i,
int j )
static

◆ get_ibuf()

int orb5x::Diagnostics::get_ibuf ( )
inlinestatic

◆ get_inner_edge_losses()

Real orb5x::Diagnostics::get_inner_edge_losses ( int isp,
int component )
static

◆ get_irloc_in()

int orb5x::Diagnostics::get_irloc_in ( )
static

◆ get_jdote_bg()

Real orb5x::Diagnostics::get_jdote_bg ( int isp,
int idiag )
static

◆ get_jdote_fluct()

Real orb5x::Diagnostics::get_jdote_fluct ( int isp,
int idiag )
static

◆ get_misc_avg()

Real orb5x::Diagnostics::get_misc_avg ( int isp,
int idiag )
static

◆ get_noise_2d_all()

Kokkos::View< Real ** > & orb5x::Diagnostics::get_noise_2d_all ( )
static

◆ get_nsbound_in()

int orb5x::Diagnostics::get_nsbound_in ( int isp)
static

◆ get_nsbound_out()

int orb5x::Diagnostics::get_nsbound_out ( int isp)
static

◆ get_outer_edge_losses()

Real orb5x::Diagnostics::get_outer_edge_losses ( int isp,
int component )
static

◆ get_signal_2d_all()

Kokkos::View< Real ** > & orb5x::Diagnostics::get_signal_2d_all ( )
static

◆ get_spectrum2d_avg()

Real orb5x::Diagnostics::get_spectrum2d_avg ( int isp,
int idiag,
int i,
int j )
static

◆ get_tot_cg_bins()

int orb5x::Diagnostics::get_tot_cg_bins ( int isp)
static

◆ get_tot_cg_markers()

int orb5x::Diagnostics::get_tot_cg_markers ( int isp)
static

◆ get_trap_frac()

Real orb5x::Diagnostics::get_trap_frac ( int isp,
int type )
static

◆ get_variance()

Real orb5x::Diagnostics::get_variance ( int isp,
int index )
static

◆ get_vexbnavg()

Real orb5x::Diagnostics::get_vexbnavg ( int isp,
int idiag )
static

◆ get_vthmax2_cached()

Real orb5x::Diagnostics::get_vthmax2_cached ( int isp)
static

◆ get_vthmax_cached()

Real orb5x::Diagnostics::get_vthmax_cached ( int isp)
static

◆ get_wsqreduced()

Real orb5x::Diagnostics::get_wsqreduced ( int isp)
static

◆ getpot_fieldnum()

Real orb5x::Diagnostics::getpot_fieldnum ( Real s,
Real theta,
Real phi,
int fieldnum )
static

◆ init_generic_signoise()

void orb5x::Diagnostics::init_generic_signoise ( )
static

◆ init_phase1_diagnostics()

void orb5x::Diagnostics::init_phase1_diagnostics ( )
static

◆ init_test_diagnostic_arrays()

void orb5x::Diagnostics::init_test_diagnostic_arrays ( int nspecies)
inlinestatic

Initialize all diagnostic arrays needed by diagnose() for testing.

This replaces initialize_diagnostics() which requires HDF5 and the full solver chain. Call after setting basic, diag, species globals.

References init_generic_signoise(), and moment1d_w.

◆ init_variance()

void orb5x::Diagnostics::init_variance ( int nspecies)
inlinestatic

◆ initialize_diagnostics()

void orb5x::Diagnostics::initialize_diagnostics ( )
static

◆ initialize_phasespace_diags()

void orb5x::Diagnostics::initialize_phasespace_diags ( )
static

◆ initialize_source_3d_diags()

void orb5x::Diagnostics::initialize_source_3d_diags ( )
static

◆ jdote()

Real orb5x::Diagnostics::jdote ( int isp,
Real ut2,
Real vpt2,
const std::vector< Real > & vpar,
const std::vector< Real > & genelec,
const std::vector< Real > & elec_par,
Real wt,
Real bstar_inv,
const std::vector< Real > & bgrb,
const std::vector< Real > & vgb,
const std::vector< Real > & vpressure,
const std::vector< Real > & veb_f,
const std::vector< Real > & vexb,
Real expt_back,
Real eypt_back,
Real dvpadt0,
Real gyroapar )
static

◆ jdote_bg_ref()

std::vector< std::vector< Real > > & orb5x::Diagnostics::jdote_bg_ref ( )
static

◆ jdote_fluct_ref()

std::vector< std::vector< Real > > & orb5x::Diagnostics::jdote_fluct_ref ( )
static

◆ max_of_0d()

void orb5x::Diagnostics::max_of_0d ( int isp,
int i,
Real to_add )
static

◆ max_of_0d_vexbnmax()

void orb5x::Diagnostics::max_of_0d_vexbnmax ( int isp,
Real to_add )
static

◆ max_of_0d_vmax()

void orb5x::Diagnostics::max_of_0d_vmax ( int isp,
Real to_add )
static

◆ max_of_0d_wmax()

void orb5x::Diagnostics::max_of_0d_wmax ( int isp,
Real to_add )
static

◆ misc_avg_ref()

std::vector< std::vector< Real > > & orb5x::Diagnostics::misc_avg_ref ( )
static

◆ mmin_f_serialize()

void orb5x::Diagnostics::mmin_f_serialize ( )
static

◆ moment1d_f0_ref()

std::vector< std::vector< std::vector< Real > > > & orb5x::Diagnostics::moment1d_f0_ref ( )
static

◆ moment1d_f_ref()

std::vector< std::vector< std::vector< Real > > > & orb5x::Diagnostics::moment1d_f_ref ( )
static

◆ moment1d_w_ref()

std::vector< std::vector< std::vector< Real > > > & orb5x::Diagnostics::moment1d_w_ref ( )
static

◆ moment2d_avg_ref()

std::vector< std::vector< std::vector< std::vector< Real > > > > & orb5x::Diagnostics::moment2d_avg_ref ( )
static

◆ mpr_2d_ref()

std::vector< std::vector< std::vector< std::vector< Real > > > > & orb5x::Diagnostics::mpr_2d_ref ( )
static

◆ mpr_es_calc()

void orb5x::Diagnostics::mpr_es_calc ( int isp,
int iuloc,
int imuloc,
Real sigmat,
Real thetat,
Real wt,
Real ut2,
Real vpt2,
Real bstar_inv,
const std::vector< Real > & vpar,
const std::vector< Real > & genelec,
const std::vector< Real > & bgrb,
const std::vector< Real > & vgb,
const std::vector< Real > & vpressure,
const std::vector< Real > & veb_f )
static

◆ nl_do_diag()

bool orb5x::Diagnostics::nl_do_diag ( int step_tot,
int nfreq )
static

◆ normalize_flux1d()

void orb5x::Diagnostics::normalize_flux1d ( int isp)
static

◆ normalize_moment1d_f()

void orb5x::Diagnostics::normalize_moment1d_f ( int isp)
static

◆ normalize_moment1d_f0()

void orb5x::Diagnostics::normalize_moment1d_f0 ( int isp)
static

◆ normalize_moment1d_w()

void orb5x::Diagnostics::normalize_moment1d_w ( int isp)
static

◆ normalize_moment2d()

void orb5x::Diagnostics::normalize_moment2d ( int isp)
static

◆ normalize_poloidal1d()

void orb5x::Diagnostics::normalize_poloidal1d ( int isp)
static

◆ omp_reduce_diag()

template<typename T>
void orb5x::Diagnostics::omp_reduce_diag ( T & data,
bool use_max = false )
static

Generic diagnostic reduction interface (matches Fortran omp_reduce_diag).

In C++ with Kokkos, this is primarily a documentation marker since reductions are handled differently than in Fortran OpenMP.

Template Parameters
TDiagnostic array type (Real, vector<Real>, etc.)
Parameters
dataReference to diagnostic data
use_maxIf true, compute max; otherwise sum

◆ omp_reduce_diag0d()

void orb5x::Diagnostics::omp_reduce_diag0d ( Real & data,
bool use_max = false )
static

Reduce 0D diagnostic array (single value per species).

Parameters
dataReference to diagnostic value
use_maxIf true, compute max; otherwise sum

◆ omp_reduce_diag1d()

void orb5x::Diagnostics::omp_reduce_diag1d ( std::vector< Real > & data,
bool use_max = false )
static

Reduce 1D diagnostic array.

Parameters
dataReference to 1D vector
use_maxIf true, compute max; otherwise sum

◆ omp_reduce_diag2d()

void orb5x::Diagnostics::omp_reduce_diag2d ( std::vector< std::vector< Real > > & data,
bool use_max = false )
static

Reduce 2D diagnostic array.

Parameters
dataReference to 2D vector
use_maxIf true, compute max; otherwise sum

◆ omp_reduce_diag3d()

void orb5x::Diagnostics::omp_reduce_diag3d ( std::vector< std::vector< std::vector< Real > > > & data,
bool use_max = false )
static

Reduce 3D diagnostic array.

Parameters
dataReference to 3D vector
use_maxIf true, compute max; otherwise sum

◆ phasespace_3d_ref()

std::vector< std::vector< std::vector< std::vector< std::vector< Real > > > > > & orb5x::Diagnostics::phasespace_3d_ref ( )
static

◆ polarisation_fieldcalc()

void orb5x::Diagnostics::polarisation_fieldcalc ( int isp)
static

◆ poloidal1d_f_ref()

std::vector< std::vector< std::vector< Real > > > & orb5x::Diagnostics::poloidal1d_f_ref ( )
static

◆ poloidal1d_w_ref()

std::vector< std::vector< std::vector< Real > > > & orb5x::Diagnostics::poloidal1d_w_ref ( )
static

◆ profsphi()

void orb5x::Diagnostics::profsphi ( Real theta,
int fieldnum,
std::vector< std::vector< Real > > & pot_sp )
static

◆ profsth()

void orb5x::Diagnostics::profsth ( Real phi,
int fieldnum,
int ns0,
std::vector< std::vector< Real > > & pot_st,
std::vector< std::vector< Real > > * xc = nullptr,
std::vector< std::vector< Real > > * zc = nullptr )
static

◆ put3d_dens()

void orb5x::Diagnostics::put3d_dens ( Real time,
bool do_moments = false )
static

◆ put3d_h5s()

void orb5x::Diagnostics::put3d_h5s ( Real time,
int diag_select,
int field_select,
int isp = -1 )
static

◆ putarr()

void orb5x::Diagnostics::putarr ( const std::string & path,
const Real * array,
size_t length,
const std::string & title = "" )
static

◆ putarr_attime_1d()

void orb5x::Diagnostics::putarr_attime_1d ( const std::string & path,
const Real * array,
size_t length,
Real time )
static

◆ putarr_attime_2d()

void orb5x::Diagnostics::putarr_attime_2d ( const std::string & path,
const Real * array,
size_t dim1,
size_t dim2,
Real time )
static

◆ read_restart_state()

void orb5x::Diagnostics::read_restart_state ( int datn)
static

◆ rhs_f_serialize()

void orb5x::Diagnostics::rhs_f_serialize ( const std::vector< std::vector< std::complex< Real > > > & rhs_f_ptr)
static

◆ sampling_2d_ref()

std::vector< std::vector< std::vector< std::vector< Real > > > > & orb5x::Diagnostics::sampling_2d_ref ( )
static

◆ set_buf()

void orb5x::Diagnostics::set_buf ( Kokkos::View< Real ** > v)
inlinestatic

◆ set_buf_pic()

void orb5x::Diagnostics::set_buf_pic ( Kokkos::View< Real *** > v)
inlinestatic

◆ set_dSdt_heat()

void orb5x::Diagnostics::set_dSdt_heat ( int isp,
Real value )
static

◆ set_dSdt_nc()

void orb5x::Diagnostics::set_dSdt_nc ( int isp,
Real value )
static

◆ set_dSdt_nc_corr()

void orb5x::Diagnostics::set_dSdt_nc_corr ( int isp,
Real value )
static

◆ set_efield()

void orb5x::Diagnostics::set_efield ( int isp,
int component,
Real value )
static

◆ set_efield_av()

void orb5x::Diagnostics::set_efield_av ( int isp,
int component,
Real value )
static

◆ set_efield_fft()

void orb5x::Diagnostics::set_efield_fft ( int isp,
int component,
Real value )
static

◆ set_generic_spectrum2d_avg()

void orb5x::Diagnostics::set_generic_spectrum2d_avg ( int idiag,
int i,
int j,
Real value )
static

◆ set_ibuf()

void orb5x::Diagnostics::set_ibuf ( int val)
inlinestatic

◆ set_inner_edge_losses()

void orb5x::Diagnostics::set_inner_edge_losses ( int isp,
int component,
Real value )
static

◆ set_misc_avg()

void orb5x::Diagnostics::set_misc_avg ( int isp,
int idx,
Real val )
inlinestatic

◆ set_nsbound_in()

void orb5x::Diagnostics::set_nsbound_in ( int isp,
int value )
static

◆ set_nsbound_out()

void orb5x::Diagnostics::set_nsbound_out ( int isp,
int value )
static

◆ set_outer_edge_losses()

void orb5x::Diagnostics::set_outer_edge_losses ( int isp,
int component,
Real value )
static

◆ set_signal2noise()

void orb5x::Diagnostics::set_signal2noise ( Real sn,
Real sn_nozf )
static

◆ set_signal2noise_em()

void orb5x::Diagnostics::set_signal2noise_em ( Real sn,
Real sn_nozf )
static

◆ set_spectrum2d_avg()

void orb5x::Diagnostics::set_spectrum2d_avg ( int isp,
int idiag,
int i,
int j,
Real value )
static

◆ set_variance()

void orb5x::Diagnostics::set_variance ( int isp,
int index,
Real value )
static

◆ snapshot_variance()

void orb5x::Diagnostics::snapshot_variance ( int isp)
static

◆ source_diag1d_avg_ref()

std::vector< std::vector< std::vector< Real > > > & orb5x::Diagnostics::source_diag1d_avg_ref ( )
static

◆ strong_diagnostic_output()

void orb5x::Diagnostics::strong_diagnostic_output ( int isp,
int ip,
Real psi0t,
Real temp2,
Real ze,
Real vecrossb_f2,
Real pot_equil,
Real zf0,
Real zvth2_inv,
Real dpotdpsi,
Real vdr,
Real rhs )
static

◆ sum_entropy_fluctuation()

void orb5x::Diagnostics::sum_entropy_fluctuation ( int isp,
Real wt,
Real zf0,
Real q_vgc_dot_genelec,
Real zvth2_inv,
Real df0_dpsi_prof,
Real df0_dchi_prof,
Real dpsi_prof_dt )
static

◆ sum_fluid_moments()

void orb5x::Diagnostics::sum_fluid_moments ( int isp,
Real sigmat,
Real chit,
Real phit,
Real wt,
Real ut,
Real ut2,
Real vpt2 )
static

◆ sum_in_radial_bins_island()

void orb5x::Diagnostics::sum_in_radial_bins_island ( int isp,
int irloc,
int ipol,
Real ut,
const std::vector< Real > & gradpsi0,
Real htildex,
Real htildey,
Real ze,
Real zf0,
Real wt,
Real dPsidt1,
Real ffinit_tmp1,
Real ffinit_tmp2,
Real ffinit_tmp3,
Real ffinit_tmp4 )
static

◆ sum_moment2d()

void orb5x::Diagnostics::sum_moment2d ( int isp,
int irloc,
int ithetaloc,
Real wt,
Real ffinit_tmp1,
Real ffinit_tmp2,
Real ffinit_tmp3,
Real ffinit_tmp4 )
static

◆ sum_particles_in_poloidal_bins()

void orb5x::Diagnostics::sum_particles_in_poloidal_bins ( int isp,
int ithetaloc,
Real wt,
Real ffinit_tmp1,
Real ffinit_tmp2,
Real ffinit_tmp3,
Real ffinit_tmp4,
Real wt_tmp1,
Real wt_tmp2,
Real wt_tmp3 )
static

◆ sum_particles_in_radial_bins()

void orb5x::Diagnostics::sum_particles_in_radial_bins ( int isp,
int ip,
int irloc,
Real zf0,
Real dPsidt1,
Real dPsidt0,
Real ze,
Real wt,
Real ut,
Real ut2,
Real vpt2,
Real rt2,
const std::vector< Real > & vpar,
Real zf0_tmp1,
Real zf0_tmp2,
Real zf0_tmp3,
Real sigmat,
Real zf0_local,
Real grsigma2,
Real grsigmagrchi,
Real b,
const std::vector< Real > & exh,
Real wt_tmp1,
Real wt_tmp2,
Real wt_tmp3,
const std::vector< Real > & vexb,
Real ffinit_tmp1,
Real ffinit_tmp2,
Real ffinit_tmp3,
Real ffinit_tmp4,
Real ffinit_tmp5,
Real jdote_tot,
const std::vector< Real > & eloc )
static

◆ sum_spectrum2d_avg()

Real orb5x::Diagnostics::sum_spectrum2d_avg ( int isp,
int idiag,
int ndim,
int mdim )
static

◆ sum_velocities()

void orb5x::Diagnostics::sum_velocities ( int isp,
int iuloc,
int imuloc,
Real wt,
Real zf0,
Real pvol )
static

◆ test_particle_output()

void orb5x::Diagnostics::test_particle_output ( int isp,
int ip,
Real psi0t,
Real ze,
Real pot_equil,
Real wt,
Real zvth2,
Real nval,
Real pvol_updated,
Real zf0 )
static

◆ vel1d_avg_ref()

std::vector< std::vector< std::vector< Real > > > & orb5x::Diagnostics::vel1d_avg_ref ( )
static

◆ vel2d_avg_ref()

std::vector< std::vector< std::vector< std::vector< Real > > > > & orb5x::Diagnostics::vel2d_avg_ref ( )
static

◆ velocity_space_diag_init()

void orb5x::Diagnostics::velocity_space_diag_init ( )
static

◆ vmax_ref()

std::vector< Real > & orb5x::Diagnostics::vmax_ref ( )
static

◆ wmax_ref()

std::vector< Real > & orb5x::Diagnostics::wmax_ref ( )
static

◆ write_output()

void orb5x::Diagnostics::write_output ( int step,
Real time )
static

◆ write_restart_state()

void orb5x::Diagnostics::write_restart_state ( int datn)
static

◆ zero_generic_spectrum2d_avg()

void orb5x::Diagnostics::zero_generic_spectrum2d_avg ( int idiag,
int ndim,
int mdim )
static

◆ zero_spectrum2d_avg()

void orb5x::Diagnostics::zero_spectrum2d_avg ( int isp,
int idiag,
int ndim,
int mdim )
static

Member Data Documentation

◆ apaloc

std::vector<Real> orb5x::Diagnostics::apaloc
inlinestatic

◆ FIELD_APAR

int orb5x::Diagnostics::FIELD_APAR = 2
staticconstexpr

◆ FIELD_APAR_HAM

int orb5x::Diagnostics::FIELD_APAR_HAM = 3
staticconstexpr

◆ FIELD_APAR_SYMPL

int orb5x::Diagnostics::FIELD_APAR_SYMPL = 4
staticconstexpr

◆ FIELD_DENS

int orb5x::Diagnostics::FIELD_DENS = 5
staticconstexpr

◆ FIELD_PHI

int orb5x::Diagnostics::FIELD_PHI = 1
staticconstexpr

◆ FIELD_USER

int orb5x::Diagnostics::FIELD_USER = 6
staticconstexpr

◆ moment1d_w

std::vector<std::vector<std::vector<Real> > > orb5x::Diagnostics::moment1d_w
inlinestatic

◆ out

std::vector<bool> orb5x::Diagnostics::out
inlinestatic

◆ pe_phi_cuts

std::array<int, 3> orb5x::Diagnostics::pe_phi_cuts = {0, 0, 0}
inlinestatic

Referenced by Diagnostics().

◆ phi00

std::vector<Real> orb5x::Diagnostics::phi00
inlinestatic

◆ phi0_chi

std::vector<Real> orb5x::Diagnostics::phi0_chi
inlinestatic

◆ phibar

std::vector<Real> orb5x::Diagnostics::phibar
inlinestatic

◆ philoc

std::vector<Real> orb5x::Diagnostics::philoc
inlinestatic

◆ philoc_hfs

std::vector<Real> orb5x::Diagnostics::philoc_hfs
inlinestatic

◆ rho00

std::vector<std::vector<Real> > orb5x::Diagnostics::rho00
inlinestatic

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