1 #ifndef VGRID_DISTRIBUTION_HPP
2 #define VGRID_DISTRIBUTION_HPP
10 template<
class Device>
14 Kokkos::View<double****,Kokkos::LayoutRight, Device>
f;
28 :
f(
"f", nsp, vgrid.nvr, pol_decomp.nnodes, vgrid.nvz),
36 double&
operator()(
int isp,
int ivr,
int inode,
int ivz){
return f(isp, ivr, inode, ivz);}
37 double operator()(
int isp,
int ivr,
int inode,
int ivz)
const {
return f(isp, ivr, inode, ivz);}
39 double*
data(){
return f.data();}
Definition: velocity_grid.hpp:7
double get_smu_n(int imu) const
Definition: vgrid_distribution.hpp:63
double smu_max
max mu
Definition: vgrid_distribution.hpp:21
void add_ay(const VGridDistribution< Device > &dist2, double scalar)
Definition: vgrid_distribution.hpp:41
double & operator()(int isp, int ivr, int inode, int ivz)
Definition: vgrid_distribution.hpp:36
double dvp
grid spacing in parallel velocity
Definition: vgrid_distribution.hpp:20
double inv_mu0_factor
Definition: vgrid_distribution.hpp:23
void host_add_ay_to_x(V1 &dest_view, const V2 &added_view, T coeff)
Definition: view_arithmetic.hpp:19
VGridDistribution()
Definition: vgrid_distribution.hpp:25
Kokkos::View< double ****, Kokkos::LayoutRight, Device > f
Definition: vgrid_distribution.hpp:14
VGridDistribution(int nsp, const VelocityGrid &vgrid, const DomainDecomposition< DeviceType > &pol_decomp)
Definition: vgrid_distribution.hpp:27
Definition: vgrid_distribution.hpp:11
double dsmu
grid spacing in mu
Definition: vgrid_distribution.hpp:22
int n_vz() const
Definition: vgrid_distribution.hpp:58
double * data()
Definition: vgrid_distribution.hpp:39
int n_nodes() const
Definition: vgrid_distribution.hpp:54
double operator()(int isp, int ivr, int inode, int ivz) const
Definition: vgrid_distribution.hpp:37
int n_species() const
Definition: vgrid_distribution.hpp:46
int n_vr() const
Definition: vgrid_distribution.hpp:50
double vp_max
max parallel velocity
Definition: vgrid_distribution.hpp:19