1 #ifndef FLUX_SURFACE_AVERAGE_HPP
2 #define FLUX_SURFACE_AVERAGE_HPP
13 void wall_nodes_strikep_method(
NLReader::NamelistReader& nlr,
const MagneticField<DeviceType>&
magnetic_field,
const Plane<HostType>& plane,
const PlaneFiles& plane_files,
const View<double*,CLayout,HostType>& psi_surf,
const View<int*,CLayout,DeviceType>& num_t_node,
const View<int**,CLayout,DeviceType>& tr_node);
20 template<
class Device2>
33 FluxSurfaceAverage(
NLReader::NamelistReader& nlr,
const MagneticField<DeviceType>&
magnetic_field,
const Plane<HostType>& plane,
const PlaneFiles& plane_files,
const VolumesAndAreas& volumes_and_areas,
const View<int*,CLayout,DeviceType>& num_t_node,
const View<int**,CLayout,DeviceType>& tr_node);
35 void average(
const View<double*, CLayout, Device>& array)
const;
39 template<
class Device>
40 void flux_surface_average(
const View<double*, CLayout, Device>& input_view,
const View<double*, CLayout, HostType>& output_view,
const View<double*, CLayout, HostType>& tmp00_surf);
42 template<
class Device>
43 void flux_surface_average(
const View<double*, CLayout, Device>& input_view,
const View<double*, CLayout, HostType>& output_view);
45 template<
class Device>
46 void flux_surface_average_in_place(
const View<double*, CLayout, Device>& input_view, View<double*, CLayout, HostType>& tmp, View<double*, CLayout, HostType>& tmp00_surf);
48 template<
class Device>
51 template<
class Device>
FluxSurfaceAverage()
Definition: flux_surface_average.hpp:17
Matrix< Device > to_flux_surface
Definition: flux_surface_average.hpp:9
void mirror_copy(T1 &view_dest, const T2 &view_src)
Definition: my_mirror_view.hpp:122
void wall_nodes_strikep_method(NLReader::NamelistReader &nlr, const MagneticField< DeviceType > &magnetic_field, const Plane< HostType > &plane, const PlaneFiles &plane_files, const View< double *, CLayout, HostType > &psi_surf, const View< int *, CLayout, DeviceType > &num_t_node, const View< int **, CLayout, DeviceType > &tr_node)
Definition: NamelistReader.hpp:193
Definition: magnetic_field.hpp:13
Definition: flux_surface_average.hpp:8
Matrix< Device > from_flux_surface
Definition: flux_surface_average.hpp:10
Definition: volumes_and_areas.hpp:14
void flux_surface_average(const View< double *, CLayout, Device > &input_view, const View< double *, CLayout, HostType > &output_view, const View< double *, CLayout, HostType > &tmp00_surf)
Definition: flux_surface_average.cpp:339
void flux_surface_average_in_place(const View< double *, CLayout, Device > &input_view, View< double *, CLayout, HostType > &tmp, View< double *, CLayout, HostType > &tmp00_surf)
Definition: flux_surface_average.cpp:362
FluxSurfaceAverage< Device2 > mirror() const
Definition: flux_surface_average.hpp:21
Definition: matrix.hpp:11
View< double *, CLayout, Device > surf_vol
Definition: flux_surface_average.hpp:11
View< T *, CLayout, Device > my_mirror_view(const View< T *, CLayout, Device > &view, Device nd)
Definition: my_mirror_view.hpp:14
Definition: magnetic_field.F90:1
Definition: grid_files.hpp:21
void average(const View< double *, CLayout, Device > &array) const
Definition: flux_surface_average.cpp:327