XGC1
Public Member Functions | Public Attributes | List of all members
CollisionVelocityGrids< Device > Struct Template Reference

#include <col_vgrids.hpp>

Collaboration diagram for CollisionVelocityGrids< Device >:
Collaboration graph
[legend]

Public Member Functions

Kokkos::DualView< int *, CLayout, Device > count_species_in_grid (const CollisionSpecies< Device > &col_spall) const
 
int count_grids () const
 
 CollisionVelocityGrids ()
 
 CollisionVelocityGrids (const CollisionSpecies< Device > &col_spall)
 
KOKKOS_INLINE_FUNCTION double vp_vol_fac (int ivz) const
 
void setup_one (int isp, int mesh_ind, double vth, double dsmu, double dvp, double vp_max)
 
KOKKOS_INLINE_FUNCTION double mesh_r (int ibatch, int igrid, int j) const
 
KOKKOS_INLINE_FUNCTION double mesh_z (int ibatch, int igrid, int j) const
 
KOKKOS_INLINE_FUNCTION double mesh_r_half (int ibatch, int igrid, int j) const
 
KOKKOS_INLINE_FUNCTION double mesh_z_half (int ibatch, int igrid, int j) const
 
KOKKOS_INLINE_FUNCTION double local_center_volume (int ibatch, int igrid, int j) const
 
void setup_all (const CollisionSpecies< Device > &col_species, const View< int *, HostType > &mesh_nodes, int mb_n_nodes)
 

Public Attributes

Kokkos::DualView< int *, CLayout, Device > nspecies_in_grid
 
const int n
 Number of velocity grids. More...
 
const int mb_n_nodes
 Batch size. More...
 
const int n_species
 Number of species total. More...
 
const int nvr
 grid points in r More...
 
const int nvz
 grid points in z More...
 
View< double ***, CLayout, HostTypemesh_r_h
 
View< double ***, CLayout, HostTypemesh_z_h
 
View< double ***, CLayout, Device > vol
 
View< double ***, CLayout, HostTypevol_h
 
View< double ****, Device > delta_r
 
View< double ****, Device > delta_z
 
View< double **, Kokkos::LayoutLeft, HostTypevpar_beg_h
 
View< double **, Kokkos::LayoutLeft, HostTypemesh_dz_h
 
View< double **, Kokkos::LayoutLeft, HostTypemesh_dr_h
 
View< double **, Kokkos::LayoutLeft, Device > vpar_beg
 
View< double **, Kokkos::LayoutLeft, Device > mesh_dz
 
View< double **, Kokkos::LayoutLeft, Device > mesh_dr
 
Kokkos::DualView< int **, CLayout, Device > map_grid_to_species
 

Constructor & Destructor Documentation

◆ CollisionVelocityGrids() [1/2]

template<class Device >
CollisionVelocityGrids< Device >::CollisionVelocityGrids ( )
inline

◆ CollisionVelocityGrids() [2/2]

template<class Device >
CollisionVelocityGrids< Device >::CollisionVelocityGrids ( const CollisionSpecies< Device > &  col_spall)
inline

Member Function Documentation

◆ count_grids()

template<class Device >
int CollisionVelocityGrids< Device >::count_grids ( ) const
inline

◆ count_species_in_grid()

template<class Device >
Kokkos::DualView<int*,CLayout,Device> CollisionVelocityGrids< Device >::count_species_in_grid ( const CollisionSpecies< Device > &  col_spall) const
inline

◆ local_center_volume()

template<class Device >
KOKKOS_INLINE_FUNCTION double CollisionVelocityGrids< Device >::local_center_volume ( int  ibatch,
int  igrid,
int  j 
) const
inline
Here is the call graph for this function:
Here is the caller graph for this function:

◆ mesh_r()

template<class Device >
KOKKOS_INLINE_FUNCTION double CollisionVelocityGrids< Device >::mesh_r ( int  ibatch,
int  igrid,
int  j 
) const
inline
Here is the caller graph for this function:

◆ mesh_r_half()

template<class Device >
KOKKOS_INLINE_FUNCTION double CollisionVelocityGrids< Device >::mesh_r_half ( int  ibatch,
int  igrid,
int  j 
) const
inline
Here is the caller graph for this function:

◆ mesh_z()

template<class Device >
KOKKOS_INLINE_FUNCTION double CollisionVelocityGrids< Device >::mesh_z ( int  ibatch,
int  igrid,
int  j 
) const
inline
Here is the caller graph for this function:

◆ mesh_z_half()

template<class Device >
KOKKOS_INLINE_FUNCTION double CollisionVelocityGrids< Device >::mesh_z_half ( int  ibatch,
int  igrid,
int  j 
) const
inline
Here is the caller graph for this function:

◆ setup_all()

template<class Device >
void CollisionVelocityGrids< Device >::setup_all ( const CollisionSpecies< Device > &  col_species,
const View< int *, HostType > &  mesh_nodes,
int  mb_n_nodes 
)
inline
Here is the call graph for this function:
Here is the caller graph for this function:

◆ setup_one()

template<class Device >
void CollisionVelocityGrids< Device >::setup_one ( int  isp,
int  mesh_ind,
double  vth,
double  dsmu,
double  dvp,
double  vp_max 
)
inline
Here is the caller graph for this function:

◆ vp_vol_fac()

template<class Device >
KOKKOS_INLINE_FUNCTION double CollisionVelocityGrids< Device >::vp_vol_fac ( int  ivz) const
inline

Get the boundary weighting factor of the velocity volume element in \(v_\parallel\) direction. The boundary weighting factor in \(v_\perp\) direction is already included in vol/vol_h. The return value is 1 for interior vertices, and 1/2 for boundary vertices.

Parameters
[in]ivzParallel velocity grid index (0...nvz-1)
Returns
vp_vol_fac Boundary weighting factor in \(v_\parallel\) for velocity integration
Here is the caller graph for this function:

Member Data Documentation

◆ delta_r

template<class Device >
View<double****,Device> CollisionVelocityGrids< Device >::delta_r

◆ delta_z

template<class Device >
View<double****,Device> CollisionVelocityGrids< Device >::delta_z

◆ map_grid_to_species

template<class Device >
Kokkos::DualView<int**,CLayout,Device> CollisionVelocityGrids< Device >::map_grid_to_species

◆ mb_n_nodes

template<class Device >
const int CollisionVelocityGrids< Device >::mb_n_nodes

Batch size.

◆ mesh_dr

template<class Device >
View<double**,Kokkos::LayoutLeft,Device> CollisionVelocityGrids< Device >::mesh_dr

◆ mesh_dr_h

template<class Device >
View<double**,Kokkos::LayoutLeft,HostType> CollisionVelocityGrids< Device >::mesh_dr_h

◆ mesh_dz

template<class Device >
View<double**,Kokkos::LayoutLeft,Device> CollisionVelocityGrids< Device >::mesh_dz

◆ mesh_dz_h

template<class Device >
View<double**,Kokkos::LayoutLeft,HostType> CollisionVelocityGrids< Device >::mesh_dz_h

◆ mesh_r_h

template<class Device >
View<double***,CLayout,HostType> CollisionVelocityGrids< Device >::mesh_r_h

◆ mesh_z_h

template<class Device >
View<double***,CLayout,HostType> CollisionVelocityGrids< Device >::mesh_z_h

◆ n

template<class Device >
const int CollisionVelocityGrids< Device >::n

Number of velocity grids.

◆ n_species

template<class Device >
const int CollisionVelocityGrids< Device >::n_species

Number of species total.

◆ nspecies_in_grid

template<class Device >
Kokkos::DualView<int*,CLayout,Device> CollisionVelocityGrids< Device >::nspecies_in_grid

◆ nvr

template<class Device >
const int CollisionVelocityGrids< Device >::nvr

grid points in r

◆ nvz

template<class Device >
const int CollisionVelocityGrids< Device >::nvz

grid points in z

◆ vol

template<class Device >
View<double***,CLayout,Device> CollisionVelocityGrids< Device >::vol

◆ vol_h

template<class Device >
View<double***,CLayout,HostType> CollisionVelocityGrids< Device >::vol_h

◆ vpar_beg

template<class Device >
View<double**,Kokkos::LayoutLeft,Device> CollisionVelocityGrids< Device >::vpar_beg

◆ vpar_beg_h

template<class Device >
View<double**,Kokkos::LayoutLeft,HostType> CollisionVelocityGrids< Device >::vpar_beg_h

The documentation for this struct was generated from the following file: