XGC1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Functions
sort.cpp File Reference
#include "globals.hpp"
#include "magnetic_field.hpp"
#include "grid.hpp"
#include "particles.hpp"
#include "species.hpp"
#include "get_current_triangles.hpp"
#include "get_current_pid.hpp"
#include "get_current_local_pid.hpp"
#include "sheath.hpp"
#include "sort.hpp"
Include dependency graph for sort.cpp:

Functions

template<class Device >
void get_perm_array (const SortViews< Device > &sort_views, int n_ptl, int n_bins)
 
template<class DataType >
void sort_aosoa (const SortViews< DeviceType > &sort_views, const Cabana::AoSoA< DataType, DeviceType, VEC_LEN > &aosoa, int n_ptl)
 
void sort_sheath_particles (const SortViews< DeviceType > &sort_views, const SheathParticles< DeviceType > &sheath_particles, int n_ptl)
 
void sort_particles_by_triangle (SortViews< DeviceType > &sort_views, const Grid< DeviceType > &grid, const MagneticField< DeviceType > &magnetic_field, const Species< DeviceType > &species, const SheathParticles< DeviceType > &sheath_particles, bool sort_sheath_ptl, bool sort_phase0)
 
void sort_particles_by_pid (SortViews< DeviceType > &sort_views, const Grid< DeviceType > &grid, const MagneticField< DeviceType > &magnetic_field, const DomainDecomposition< DeviceType > &pol_decomp, const Species< DeviceType > &species, bool sort_phase0, bool plane_sort_only)
 
int sort_particles_by_field_id (SortViews< DeviceType > &sort_views, const Grid< DeviceType > &grid, const MagneticField< DeviceType > &magnetic_field, const DomainDecomposition< DeviceType > &pol_decomp, const Species< DeviceType > &species, Cabana::AoSoA< PhaseDataTypes, DeviceType, VEC_LEN > &phase0, Cabana::AoSoA< PhaseDataTypes, DeviceType, VEC_LEN > &dy_sum, bool sort_intermediate_values)
 
void sort_particles_by_key (SortViews< DeviceType > &sort_views, const Species< DeviceType > &species, int n_bins, Cabana::AoSoA< PhaseDataTypes, DeviceType, VEC_LEN > &phase0, Cabana::AoSoA< PhaseDataTypes, DeviceType, VEC_LEN > &dy_sum, bool sort_intermediate_values)
 

Function Documentation

template<class Device >
void get_perm_array ( const SortViews< Device > &  sort_views,
int  n_ptl,
int  n_bins 
)
inline

Generate the permutation array

Here is the call graph for this function:

Here is the caller graph for this function:

template<class DataType >
void sort_aosoa ( const SortViews< DeviceType > &  sort_views,
const Cabana::AoSoA< DataType, DeviceType, VEC_LEN > &  aosoa,
int  n_ptl 
)

Here is the call graph for this function:

Here is the caller graph for this function:

int sort_particles_by_field_id ( SortViews< DeviceType > &  sort_views,
const Grid< DeviceType > &  grid,
const MagneticField< DeviceType > &  magnetic_field,
const DomainDecomposition< DeviceType > &  pol_decomp,
const Species< DeviceType > &  species,
Cabana::AoSoA< PhaseDataTypes, DeviceType, VEC_LEN > &  phase0,
Cabana::AoSoA< PhaseDataTypes, DeviceType, VEC_LEN > &  dy_sum,
bool  sort_intermediate_values 
)

Here is the call graph for this function:

Here is the caller graph for this function:

void sort_particles_by_key ( SortViews< DeviceType > &  sort_views,
const Species< DeviceType > &  species,
int  n_bins,
Cabana::AoSoA< PhaseDataTypes, DeviceType, VEC_LEN > &  phase0,
Cabana::AoSoA< PhaseDataTypes, DeviceType, VEC_LEN > &  dy_sum,
bool  sort_intermediate_values 
)

Here is the call graph for this function:

Here is the caller graph for this function:

void sort_particles_by_pid ( SortViews< DeviceType > &  sort_views,
const Grid< DeviceType > &  grid,
const MagneticField< DeviceType > &  magnetic_field,
const DomainDecomposition< DeviceType > &  pol_decomp,
const Species< DeviceType > &  species,
bool  sort_phase0,
bool  plane_sort_only 
)

Here is the call graph for this function:

Here is the caller graph for this function:

void sort_particles_by_triangle ( SortViews< DeviceType > &  sort_views,
const Grid< DeviceType > &  grid,
const MagneticField< DeviceType > &  magnetic_field,
const Species< DeviceType > &  species,
const SheathParticles< DeviceType > &  sheath_particles,
bool  sort_sheath_ptl,
bool  sort_phase0 
)

Here is the call graph for this function:

Here is the caller graph for this function:

void sort_sheath_particles ( const SortViews< DeviceType > &  sort_views,
const SheathParticles< DeviceType > &  sheath_particles,
int  n_ptl 
)

Here is the call graph for this function:

Here is the caller graph for this function: