XGC1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
diag_3d.hpp
Go to the documentation of this file.
1 #ifndef DIAG_3D_HPP
2 #define DIAG_3D_HPP
3 
4 #include "diagnostic.hpp"
5 #include "grid.hpp"
6 #include "plasma.hpp"
7 #include "charge.hpp"
8 #include "electric_field.hpp"
9 #include "sheath.hpp"
10 #include "perturbed_B_field.hpp"
11 
12 class Diag3D : public Diagnostic{
13 
14  View<double**,CLayout,HostType> E_saved;
15 
16  public:
17 
21 
22  Diag3D() : Diagnostic() {}
23 
24  void init(NLReader::NamelistReader& nlr, const Grid<DeviceType>& grid, int default_period);
25 
26  void write(const Grid<DeviceType>& grid, const Simulation<DeviceType>& sml, const Sheath<DeviceType>& sheath,
27  const PerturbedBField<DeviceType>& perturbed_B_field, const DomainDecomposition<DeviceType>& pol_decomp,
28  Plasma& plasma, const Charges& charges, const ElectricField<DeviceType>& electric_field,
29  double time, int gstep);
30 
31  void calculate_E_out(const Grid<DeviceType>& grid, const ElectricField<DeviceType>& electric_field, const View<double**,CLayout,HostType>& E_grid,
32  View<double**,CLayout,HostType>& E_out, View<double**,CLayout,HostType>& dEdt_out, double dt);
33 
34  void store_E_field(const ElectricField<DeviceType>& electric_field);
35 
36  View<double**,CLayout,HostType> calculate_B_out_base(const Grid<DeviceType>& grid, const View<double**,CLayout,HostType>& B_grid);
37 
38  void add_B_out_ptb_3db(const Grid<DeviceType>& grid, const PerturbedBField<DeviceType>& perturbed_B_field, const View<double**,CLayout,HostType>& B_out, double phi);
39 
40  View<double**,CLayout,HostType> calculate_B_out(const Simulation<DeviceType>& sml, const Grid<DeviceType>& grid, const DomainDecomposition<DeviceType>& pol_decomp, const PerturbedBField<DeviceType>& perturbed_B_field, const View<double**,CLayout,HostType>& B_grid);
41 };
42 
43 #endif
void init(NLReader::NamelistReader &nlr, const Grid< DeviceType > &grid, int default_period)
Definition: diag_3d.cpp:100
Definition: charge.hpp:66
Definition: perturbed_B_field.hpp:12
Definition: sml.hpp:8
subroutine plasma(grid, itr, p, dene_out, deni_out, Te_out, Ti_out, Vparai_out)
Calculate the plasma density, temperature, and parallel velocity for a point in triangle itr using pl...
Definition: neutral_totalf.F90:1224
bool adios_stage
Definition: diag_3d.hpp:18
Definition: NamelistReader.hpp:193
Definition: electric_field.hpp:41
View< double **, CLayout, HostType > calculate_B_out_base(const Grid< DeviceType > &grid, const View< double **, CLayout, HostType > &B_grid)
Definition: diag_3d.cpp:228
Definition: diag_3d.hpp:12
View< double **, CLayout, HostType > E_saved
Definition: diag_3d.hpp:14
bool additional_moments
Definition: diag_3d.hpp:20
View< double **, CLayout, HostType > calculate_B_out(const Simulation< DeviceType > &sml, const Grid< DeviceType > &grid, const DomainDecomposition< DeviceType > &pol_decomp, const PerturbedBField< DeviceType > &perturbed_B_field, const View< double **, CLayout, HostType > &B_grid)
Definition: diag_3d.cpp:322
Diag3D()
Definition: diag_3d.hpp:22
void write(const Grid< DeviceType > &grid, const Simulation< DeviceType > &sml, const Sheath< DeviceType > &sheath, const PerturbedBField< DeviceType > &perturbed_B_field, const DomainDecomposition< DeviceType > &pol_decomp, Plasma &plasma, const Charges &charges, const ElectricField< DeviceType > &electric_field, double time, int gstep)
Definition: diag_3d.cpp:339
void calculate_E_out(const Grid< DeviceType > &grid, const ElectricField< DeviceType > &electric_field, const View< double **, CLayout, HostType > &E_grid, View< double **, CLayout, HostType > &E_out, View< double **, CLayout, HostType > &dEdt_out, double dt)
Definition: diag_3d.cpp:129
Definition: plasma.hpp:13
Definition: sheath.hpp:49
Definition: diagnostic.hpp:10
bool weight_stats
Definition: diag_3d.hpp:19
void store_E_field(const ElectricField< DeviceType > &electric_field)
Definition: diag_3d.cpp:117
void add_B_out_ptb_3db(const Grid< DeviceType > &grid, const PerturbedBField< DeviceType > &perturbed_B_field, const View< double **, CLayout, HostType > &B_out, double phi)
Definition: diag_3d.cpp:276