XGCa
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Typedefs | Functions | Variables
initialize_particles.cpp File Reference
#include <Kokkos_Random.hpp>
#include "globals.hpp"
#include "basic_physics.hpp"
#include "sml.hpp"
#include "magnetic_field.hpp"
#include "grid.hpp"
#include "species.hpp"
Include dependency graph for initialize_particles.cpp:

Typedefs

typedef
Kokkos::Random_XorShift64_Pool
< DeviceType
pool_type
 

Functions

void uniform_spatial_distribution (const Grid< DeviceType > &grid, const MagneticField< DeviceType > &magnetic_field, const Simulation< DeviceType > &sml, double &marker_den, TmpSpecies< DeviceType > &tmp_species)
 
KOKKOS_INLINE_FUNCTION void get_v_and_dist (typename pool_type::generator_type &rand_gen, double va, double vc, double w, double &v, double &g)
 
KOKKOS_INLINE_FUNCTION void load_flat_v_single (typename pool_type::generator_type &rand_gen, const Simulation< DeviceType > &sml, double t_ev, double up, double b, double mass, double charge, double &rho, double &mu, double &w0_adjust)
 
KOKKOS_INLINE_FUNCTION double w0_adjustment (typename pool_type::generator_type &rand_gen, double t, double maxe, double mass, double t_ev, double t_ev_vertual, double load_maxe)
 
KOKKOS_INLINE_FUNCTION void load_v_single (typename pool_type::generator_type &rand_gen, const Simulation< DeviceType > &sml, double t_ev, double up, double b, double mass, double charge, double &rho, double &mu, double &w0_adjust)
 
void maxwellian_velocity_distribution (const Grid< DeviceType > &grid, const MagneticField< DeviceType > &magnetic_field, const Simulation< DeviceType > &sml, const Species< DeviceType > &species, double marker_den, TmpSpecies< DeviceType > &tmp_species)
 
void initialize_particles (const Grid< DeviceType > &grid, const MagneticField< DeviceType > &magnetic_field, const Simulation< DeviceType > &sml, std::vector< Species< DeviceType >> &all_species, TmpSpecies< DeviceType > &tmp_species)
 

Variables

const double LOAD_MAXE = 12.0
 

Typedef Documentation

typedef Kokkos::Random_XorShift64_Pool<DeviceType> pool_type

Function Documentation

KOKKOS_INLINE_FUNCTION void get_v_and_dist ( typename pool_type::generator_type &  rand_gen,
double  va,
double  vc,
double  w,
double &  v,
double &  g 
)
void initialize_particles ( const Grid< DeviceType > &  grid,
const MagneticField< DeviceType > &  magnetic_field,
const Simulation< DeviceType > &  sml,
std::vector< Species< DeviceType >> &  all_species,
TmpSpecies< DeviceType > &  tmp_species 
)

Load particles

Here is the call graph for this function:

KOKKOS_INLINE_FUNCTION void load_flat_v_single ( typename pool_type::generator_type &  rand_gen,
const Simulation< DeviceType > &  sml,
double  t_ev,
double  up,
double  b,
double  mass,
double  charge,
double &  rho,
double &  mu,
double &  w0_adjust 
)

Here is the call graph for this function:

KOKKOS_INLINE_FUNCTION void load_v_single ( typename pool_type::generator_type &  rand_gen,
const Simulation< DeviceType > &  sml,
double  t_ev,
double  up,
double  b,
double  mass,
double  charge,
double &  rho,
double &  mu,
double &  w0_adjust 
)

Here is the call graph for this function:

void maxwellian_velocity_distribution ( const Grid< DeviceType > &  grid,
const MagneticField< DeviceType > &  magnetic_field,
const Simulation< DeviceType > &  sml,
const Species< DeviceType > &  species,
double  marker_den,
TmpSpecies< DeviceType > &  tmp_species 
)

Load particles

Here is the call graph for this function:

Here is the caller graph for this function:

void uniform_spatial_distribution ( const Grid< DeviceType > &  grid,
const MagneticField< DeviceType > &  magnetic_field,
const Simulation< DeviceType > &  sml,
double &  marker_den,
TmpSpecies< DeviceType > &  tmp_species 
)

Load particles

Here is the call graph for this function:

Here is the caller graph for this function:

KOKKOS_INLINE_FUNCTION double w0_adjustment ( typename pool_type::generator_type &  rand_gen,
double  t,
double  maxe,
double  mass,
double  t_ev,
double  t_ev_vertual,
double  load_maxe 
)

Here is the call graph for this function:

Here is the caller graph for this function:

Variable Documentation

const double LOAD_MAXE = 12.0