XGCa
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Enumerations | Functions | Variables
globals.hpp File Reference
#include <limits.h>
#include <string>
#include <cassert>
#include "space_settings.hpp"
#include "array_deep_copy.hpp"
#include "access_add.hpp"
#include "simd.hpp"
Include dependency graph for globals.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Enumerations

enum  SpeciesType { ELECTRON = 0, MAIN_ION = 1 }
 
enum  KinType { DriftKin =0, GyroKin =1 }
 
enum  PhiInterpType { PhiInterpType::Planes, PhiInterpType::None }
 
enum  ParticlePhase {
  PIR = 0, PIZ, PIP, PIRHO,
  PIW1, PIW2, PTL_NPHASE
}
 
enum  ParticleConsts { PIM = 0, PIW0, PIF0, PTL_NCONST }
 

Functions

int get_num_cpu_threads ()
 
bool is_rank_zero ()
 
void exit_XGC (std::string msg)
 
KOKKOS_INLINE_FUNCTION void assert_XGC (bool cond, const char *msg)
 
bool causes_multiplication_overflow (int a, int b)
 
bool causes_addition_overflow (int a, int b)
 
KOKKOS_INLINE_FUNCTION int divide_and_round_up (int a, int b)
 
KOKKOS_INLINE_FUNCTION unsigned positive_modulo (int value, unsigned m)
 

Variables

constexpr PhiInterpType PIT_GLOBAL = PhiInterpType::None
 
constexpr double UNIT_CHARGE = 1.6022e-19
 Charge of an electron (C) More...
 
constexpr double EV_2_J =UNIT_CHARGE
 Conversion rate ev to J. More...
 
constexpr double J_2_EV =1.0/EV_2_J
 Conversion rate J to ev. More...
 
constexpr double PROTON_MASS = 1.6720e-27
 
constexpr double PI = 3.1415926535897932
 
constexpr double TWOPI = 6.2831853071795862
 

Enumeration Type Documentation

enum KinType
Enumerator
DriftKin 
GyroKin 
Enumerator
PIM 

Magnetic moment mu.

PIW0 

W0.

PIF0 

F0.

PTL_NCONST 
Enumerator
PIR 

r coordinate

PIZ 

z coordinate

PIP 

phi coordinate

PIRHO 

gyroradius

PIW1 

1st weight

PIW2 

2nd weight

PTL_NPHASE 
enum PhiInterpType
strong
Enumerator
Planes 
None 
Enumerator
ELECTRON 
MAIN_ION 

Function Documentation

KOKKOS_INLINE_FUNCTION void assert_XGC ( bool  cond,
const char *  msg 
)

Here is the caller graph for this function:

bool causes_addition_overflow ( int  a,
int  b 
)
inline

Here is the caller graph for this function:

bool causes_multiplication_overflow ( int  a,
int  b 
)
inline

Here is the caller graph for this function:

KOKKOS_INLINE_FUNCTION int divide_and_round_up ( int  a,
int  b 
)

Here is the caller graph for this function:

void exit_XGC ( std::string  msg)
inline

Here is the caller graph for this function:

int get_num_cpu_threads ( )
inline

Here is the caller graph for this function:

bool is_rank_zero ( )
inline

Here is the caller graph for this function:

KOKKOS_INLINE_FUNCTION unsigned positive_modulo ( int  value,
unsigned  m 
)

Here is the caller graph for this function:

Variable Documentation

constexpr double EV_2_J =UNIT_CHARGE

Conversion rate ev to J.

constexpr double J_2_EV =1.0/EV_2_J

Conversion rate J to ev.

constexpr double PI = 3.1415926535897932
constexpr PhiInterpType PIT_GLOBAL = PhiInterpType::None
constexpr double PROTON_MASS = 1.6720e-27
constexpr double TWOPI = 6.2831853071795862
constexpr double UNIT_CHARGE = 1.6022e-19

Charge of an electron (C)