1 #ifndef FLUX_SURFACE_AVERAGE_HPP
2 #define FLUX_SURFACE_AVERAGE_HPP
15 template<
class Device>
16 void flux_surface_average(
const View<double*, CLayout, Device>& input_view, View<double*, CLayout, HostType>& tmp, View<double*, CLayout, HostType>& tmp00_surf){
17 Kokkos::deep_copy(tmp, input_view);
20 Kokkos::deep_copy(input_view, tmp);
24 template<
class Device>
29 View<double*, CLayout, HostType> tmp(
NoInit(
"tmp"), input_view.layout());
36 template<
class Device>
39 int n_arrays = input_view.extent(0);
40 int n_nodes = input_view.extent(1);
44 View<double*, CLayout, HostType> tmp(
NoInit(
"tmp"), n_nodes);
46 for(
int i=0; i<n_arrays; i++){
Kokkos::View< T *, Kokkos::LayoutRight, Device > my_subview(const Kokkos::View< T ****, Kokkos::LayoutRight, Device > &view, int i, int j, int k)
Definition: my_subview.hpp:8
subroutine convert_grid_2_001d_wrap(v2d, v1d)
Definition: search.F90:3238
subroutine convert_001d_2_grid_wrap(v1d, v2d)
Definition: search.F90:2782
Kokkos::ViewAllocateWithoutInitializing NoInit
Definition: space_settings.hpp:68
void flux_surface_average(const View< double *, CLayout, Device > &input_view, View< double *, CLayout, HostType > &tmp, View< double *, CLayout, HostType > &tmp00_surf)
Definition: flux_surface_average.hpp:16