XGC1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Functions
getf0.tpp File Reference
#include "basic_physics.hpp"
#include "grid_field_pack.hpp"
#include "vgrid_distribution.hpp"
Include dependency graph for getf0.tpp:
This graph shows which files directly or indirectly include this file:

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)
 

Function Documentation

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 
)

Here is the call graph for this function:

Here is the caller graph for this function:

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 
)

Here is the call graph for this function:

Here is the caller graph for this function:

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 
)

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.

Here is the call graph for this function:

Here is the caller graph for this function:

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 
)

Here is the call graph for this function:

Here is the caller graph for this function: