XGC1
|
Functions | |
template<class Device > | |
KOKKOS_INLINE_FUNCTION void | get_f0_grid (const Grid< Device > &grid, const MagneticField< Device > &magnetic_field, const Species< Device > &species, const VelocityGrid &vgrid, const DomainDecomposition< Device > &pol_decomp, const SimdParticles &part, const SimdGridWeights< Order::Zero, PIT_GLOBAL > &grid_wts0, Simd< double > &f0_ptl) |
template<class Device > | |
KOKKOS_INLINE_FUNCTION void | get_f0_grid_lagrange (const Grid< Device > &grid, const MagneticField< Device > &magnetic_field, const Species< Device > &species, const VelocityGrid &vgrid, const DomainDecomposition< Device > &pol_decomp, const SimdParticles &part, const SimdGridWeights< Order::Zero, PIT_GLOBAL > &grid_wts0, Simd< double > &f0_ptl, int order) |
template<class Device , PhiInterpType PIT> | |
KOKKOS_INLINE_FUNCTION void | get_f0_analytic (const Grid< Device > &grid, const MagneticField< Device > &magnetic_field, const GridFieldPack< Device, PIT > &gfpack, const Species< Device > &species, const SimdParticles &part, const SimdGridWeights< Order::One, PIT_GLOBAL > &grid_wts, bool use_dpot, double dpot_te_limit, Simd< double > &f0_ptl) |
template<class Device , PhiInterpType PIT> | |
KOKKOS_INLINE_FUNCTION void | get_f0_ptl (const SimdParticles &part, const Grid< Device > &grid, const Species< Device > &species, const MagneticField< Device > &magnetic_field, const GridFieldPack< Device, PIT > &gfpack, const VelocityGrid &vgrid, const DomainDecomposition< Device > &pol_decomp, SimdGridWeights< Order::One, PIT_GLOBAL > &grid_wts, bool use_dpot, double dpot_te_limit, bool use_grid_contribution, Simd< double > &f0_ptl) |
KOKKOS_INLINE_FUNCTION void get_f0_analytic | ( | const Grid< Device > & | grid, |
const MagneticField< Device > & | magnetic_field, | ||
const GridFieldPack< Device, PIT > & | gfpack, | ||
const Species< Device > & | species, | ||
const SimdParticles & | part, | ||
const SimdGridWeights< Order::One, PIT_GLOBAL > & | grid_wts, | ||
bool | use_dpot, | ||
double | dpot_te_limit, | ||
Simd< double > & | f0_ptl | ||
) |
KOKKOS_INLINE_FUNCTION void get_f0_grid | ( | const Grid< Device > & | grid, |
const MagneticField< Device > & | magnetic_field, | ||
const Species< Device > & | species, | ||
const VelocityGrid & | vgrid, | ||
const DomainDecomposition< Device > & | pol_decomp, | ||
const SimdParticles & | part, | ||
const SimdGridWeights< Order::Zero, PIT_GLOBAL > & | grid_wts0, | ||
Simd< double > & | f0_ptl | ||
) |
KOKKOS_INLINE_FUNCTION void get_f0_grid_lagrange | ( | const Grid< Device > & | grid, |
const MagneticField< Device > & | magnetic_field, | ||
const Species< Device > & | species, | ||
const VelocityGrid & | vgrid, | ||
const DomainDecomposition< Device > & | pol_decomp, | ||
const SimdParticles & | part, | ||
const SimdGridWeights< Order::Zero, PIT_GLOBAL > & | grid_wts0, | ||
Simd< double > & | f0_ptl, | ||
int | order | ||
) |
Interpolates the grid distribution function to real space, velocity space location given by node, mu_n, vp_n. In poloidal plane it uses nearest neighbor and in velocity space lagrange interpolation of the given order. f0_inode1 and f0_inode2 are the same for all threads of each mpi rank.
KOKKOS_INLINE_FUNCTION void get_f0_ptl | ( | const SimdParticles & | part, |
const Grid< Device > & | grid, | ||
const Species< Device > & | species, | ||
const MagneticField< Device > & | magnetic_field, | ||
const GridFieldPack< Device, PIT > & | gfpack, | ||
const VelocityGrid & | vgrid, | ||
const DomainDecomposition< Device > & | pol_decomp, | ||
SimdGridWeights< Order::One, PIT_GLOBAL > & | grid_wts, | ||
bool | use_dpot, | ||
double | dpot_te_limit, | ||
bool | use_grid_contribution, | ||
Simd< double > & | f0_ptl | ||
) |