XGCa
|
#include "globals.hpp"
#include "magnetic_field.hpp"
#include "grid.hpp"
#include "particles.hpp"
#include "species.hpp"
#include "boundaries.hpp"
#include "perturbed_B_field.hpp"
#include "push_physics.hpp"
#include "sort.hpp"
#include "shift.hpp"
#include "unfused_push_algorithm.hpp"
#include "checkpoint.hpp"
Functions | |
void | set_phase0_kernel (Cabana::AoSoA< PhaseDataTypes, DeviceType, VEC_LEN > &phase0, const Species< DeviceType > &species, int n_ptl) |
template<class Device , KinType KT> | |
void | derivs_kernel (const Species< Device > &species, const Grid< Device > &grid, const MagneticField< Device > &magnetic_field, const GridFieldPack< Device, PIT_GLOBAL > &gfpack, const PushControls &push_controls, const PerturbedBField< Device > &perturbed_B_field, Cabana::AoSoA< PhaseDataTypes, DeviceType, VEC_LEN > &dy, View< int *, CLayout, DeviceType > ¤t_tr, double time) |
void | update_phases_kernel (const Species< DeviceType > &species, int n_ptl, const Cabana::AoSoA< PhaseDataTypes, DeviceType, VEC_LEN > &phase0, double local_dt, const Cabana::AoSoA< PhaseDataTypes, DeviceType, VEC_LEN > &dy) |
void | update_sum_kernel (Cabana::AoSoA< PhaseDataTypes, DeviceType, VEC_LEN > &dy_sum, Cabana::AoSoA< PhaseDataTypes, DeviceType, VEC_LEN > &dy) |
void | update_sum2x_kernel (Cabana::AoSoA< PhaseDataTypes, DeviceType, VEC_LEN > &dy_sum, Cabana::AoSoA< PhaseDataTypes, DeviceType, VEC_LEN > &dy) |
void | boundaries_kernel (const Species< DeviceType > &species, const PushControls &push_controls, const Grid< DeviceType > &grid, const MagneticField< DeviceType > &magnetic_field, const Sheath< DeviceType > &sheath, const SheathParticles< DeviceType > &sheath_particles, const Neutrals< DeviceType > &neutrals, const HeatDiagnostics< DeviceType > &heat_diag, Cabana::AoSoA< PhaseDataTypes, DeviceType, VEC_LEN > &phase0, View< int *, CLayout, DeviceType > ¤t_tr) |
void | local_shift (const PushControls &push_controls, Species< DeviceType > &species, SortViews< DeviceType > &sort_views, const Grid< DeviceType > &grid, const MagneticField< DeviceType > &magnetic_field, const DomainDecomposition< DeviceType > &pol_decomp, UnfusedPushTmpViews< DeviceType > &unfused_push_tmp_views, bool send_phase0) |
void | unfused_electron_push_kernel (Species< DeviceType > &species, const PushControls &push_controls, const DomainDecomposition< DeviceType > &pol_decomp, const Grid< DeviceType > &grid, const MagneticField< DeviceType > &magnetic_field, const GridFieldPack< DeviceType, PIT_GLOBAL > &gfpack, const PerturbedBField< DeviceType > &perturbed_B_field, SortViews< DeviceType > &sort_views, const Sheath< DeviceType > &sheath, const SheathParticles< DeviceType > &sheath_particles, const Neutrals< DeviceType > &neutrals, const HeatDiagnostics< DeviceType > &heat_diag, UnfusedPushTmpViews< DeviceType > &tmp, int ncycles_per_launch, double dt, bool last_subcycle_set) |
void boundaries_kernel | ( | const Species< DeviceType > & | species, |
const PushControls & | push_controls, | ||
const Grid< DeviceType > & | grid, | ||
const MagneticField< DeviceType > & | magnetic_field, | ||
const Sheath< DeviceType > & | sheath, | ||
const SheathParticles< DeviceType > & | sheath_particles, | ||
const Neutrals< DeviceType > & | neutrals, | ||
const HeatDiagnostics< DeviceType > & | heat_diag, | ||
Cabana::AoSoA< PhaseDataTypes, DeviceType, VEC_LEN > & | phase0, | ||
View< int *, CLayout, DeviceType > & | current_tr | ||
) |
void derivs_kernel | ( | const Species< Device > & | species, |
const Grid< Device > & | grid, | ||
const MagneticField< Device > & | magnetic_field, | ||
const GridFieldPack< Device, PIT_GLOBAL > & | gfpack, | ||
const PushControls & | push_controls, | ||
const PerturbedBField< Device > & | perturbed_B_field, | ||
Cabana::AoSoA< PhaseDataTypes, DeviceType, VEC_LEN > & | dy, | ||
View< int *, CLayout, DeviceType > & | current_tr, | ||
double | time | ||
) |
void local_shift | ( | const PushControls & | push_controls, |
Species< DeviceType > & | species, | ||
SortViews< DeviceType > & | sort_views, | ||
const Grid< DeviceType > & | grid, | ||
const MagneticField< DeviceType > & | magnetic_field, | ||
const DomainDecomposition< DeviceType > & | pol_decomp, | ||
UnfusedPushTmpViews< DeviceType > & | unfused_push_tmp_views, | ||
bool | send_phase0 | ||
) |
void set_phase0_kernel | ( | Cabana::AoSoA< PhaseDataTypes, DeviceType, VEC_LEN > & | phase0, |
const Species< DeviceType > & | species, | ||
int | n_ptl | ||
) |
void unfused_electron_push_kernel | ( | Species< DeviceType > & | species, |
const PushControls & | push_controls, | ||
const DomainDecomposition< DeviceType > & | pol_decomp, | ||
const Grid< DeviceType > & | grid, | ||
const MagneticField< DeviceType > & | magnetic_field, | ||
const GridFieldPack< DeviceType, PIT_GLOBAL > & | gfpack, | ||
const PerturbedBField< DeviceType > & | perturbed_B_field, | ||
SortViews< DeviceType > & | sort_views, | ||
const Sheath< DeviceType > & | sheath, | ||
const SheathParticles< DeviceType > & | sheath_particles, | ||
const Neutrals< DeviceType > & | neutrals, | ||
const HeatDiagnostics< DeviceType > & | heat_diag, | ||
UnfusedPushTmpViews< DeviceType > & | tmp, | ||
int | ncycles_per_launch, | ||
double | dt, | ||
bool | last_subcycle_set | ||
) |
void update_phases_kernel | ( | const Species< DeviceType > & | species, |
int | n_ptl, | ||
const Cabana::AoSoA< PhaseDataTypes, DeviceType, VEC_LEN > & | phase0, | ||
double | local_dt, | ||
const Cabana::AoSoA< PhaseDataTypes, DeviceType, VEC_LEN > & | dy | ||
) |
void update_sum2x_kernel | ( | Cabana::AoSoA< PhaseDataTypes, DeviceType, VEC_LEN > & | dy_sum, |
Cabana::AoSoA< PhaseDataTypes, DeviceType, VEC_LEN > & | dy | ||
) |
void update_sum_kernel | ( | Cabana::AoSoA< PhaseDataTypes, DeviceType, VEC_LEN > & | dy_sum, |
Cabana::AoSoA< PhaseDataTypes, DeviceType, VEC_LEN > & | dy | ||
) |